/* Before the Prompt · printable sheets (plan, audit, notes, tech hunt), styled after Tim's
   "Before the Prompt" template: sky-blue gradient, yellow pill, big title + Dilon on page 1,
   Dilon footer on later pages. Used for the blank PDF templates, the pre-filled PDF field
   positions, and the browser print version. */
@font-face{font-family:'Fredoka';font-weight:600;src:url(../fonts/fredoka-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Fredoka';font-weight:700;src:url(../fonts/fredoka-latin-700-normal.woff2) format('woff2')}
@font-face{font-family:'Nunito';font-weight:400;src:url(../fonts/nunito-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Nunito';font-weight:700;src:url(../fonts/nunito-latin-700-normal.woff2) format('woff2')}
@font-face{font-family:'Nunito';font-weight:800;src:url(../fonts/nunito-latin-800-normal.woff2) format('woff2')}
.sheet-page{--navy:#232f5d;--muted:#56618e;--soft:#7f8db8;--rule:#d3e3f3;--edge:#cfe2f6;--yel:#ffd23f;--yelL:#fff8dc;--yelE:#ffe28a;--blueL:#eef7ff;
  width:210mm;height:297mm;padding:9mm 12mm 0;box-sizing:border-box;position:relative;overflow:hidden;
  background:linear-gradient(180deg,#6bbfff 0%,#a6d8ff 40%,#e2f2ff 75%,#ffffff 100%);
  color:var(--navy);font:400 9.5pt/1.35 'Nunito','PingFang SC','Noto Sans CJK SC',sans-serif;page-break-after:always;break-after:page;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.sheet-page:last-child{page-break-after:auto;break-after:auto}
.sheet-page *{box-sizing:border-box}
.sheet-page h1,.sheet-page h2{font-family:'Fredoka',sans-serif;margin:0;color:var(--navy)}
/* header */
.sheet-page .sh-pills{display:flex;gap:2.4mm;align-items:center}
.sheet-page .sh-pill{display:inline-block;font-family:'Fredoka';font-weight:600;font-size:10.5pt;line-height:1;color:var(--navy);background:var(--yel);padding:2.4mm 8.5mm;border-radius:99px}
.sheet-page .sh-pill.w{background:#fff;padding:2.4mm 5mm}
.sheet-page .sh-cover{position:relative;min-height:47mm}
.sheet-page .sh-brand{font-weight:700;font-size:36pt;line-height:.98;margin-top:5mm!important;letter-spacing:-.01em}
.sheet-page .sh-sub{font-family:'Fredoka';font-weight:600;font-size:12.5pt;color:var(--muted);margin:3mm 0 0}
.sheet-page .sh-dilon{position:absolute;right:2mm;top:-3mm;width:44mm}
.sheet-page .sh-doc{display:flex;justify-content:space-between;align-items:flex-end;gap:6mm;margin:5mm 0 4mm}
.sheet-page .sh-doc.cont{margin-top:5mm}
.sheet-page .sh-doc h2{font-weight:700;font-size:19pt;line-height:1.05}
.sheet-page .sh-doc p{margin:1.2mm 0 0;font-size:8.8pt;color:#3d4a7a;max-width:140mm}
.sheet-page .sh-stop{flex-shrink:0;font-weight:800;font-size:7pt;letter-spacing:.1em;text-transform:uppercase;background:#fff;color:var(--navy);padding:1.5mm 3.6mm;border-radius:99px}
/* footer (later pages) */
.sheet-page .sh-foot{position:absolute;left:12mm;right:12mm;bottom:6mm;border-top:.8pt solid #8e9cc6;padding-top:3mm;display:grid;grid-template-columns:22mm 1fr auto;gap:3mm;align-items:center}
.sheet-page .sh-foot img{width:21mm}
.sheet-page .sh-foot b{display:block;font-family:'Fredoka';font-weight:600;font-size:10.5pt;line-height:1.2}
.sheet-page .sh-foot span{display:block;font-family:'Fredoka';font-weight:600;font-size:10pt;line-height:1.2;color:var(--muted)}
.sheet-page .sh-foot small{display:block;font-family:'Fredoka';font-weight:600;font-size:6.5pt;margin-top:.5mm}
.sheet-page .sh-foot em{font-style:normal;font-weight:700;font-size:7pt;color:var(--muted);align-self:end}
/* boxes and fields */
.sheet-page .box{background:#fff;border:.6pt solid var(--edge);border-radius:4mm;padding:2.4mm 3.2mm 2.8mm;position:relative}
.sheet-page .box.t-y{background:var(--yelL);border-color:var(--yelE)}
.sheet-page .box.t-b{background:var(--blueL)}
.sheet-page .lab{display:flex;align-items:center;gap:1.6mm;font-weight:800;font-size:6.8pt;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:1.2mm}
.sheet-page .lab img{width:6mm;height:6mm}
.sheet-page .lab b{font-family:'Fredoka';font-weight:600;font-size:10.5pt;letter-spacing:0;text-transform:none;color:var(--navy)}
.sheet-page .hint{font-size:7pt;color:var(--soft);margin:-.6mm 0 1mm}
.sheet-page .fl{border-radius:2mm;background:repeating-linear-gradient(180deg,transparent 0 6.3mm,var(--rule) 6.3mm 6.6mm);min-height:7mm;font-size:9.5pt;line-height:1.35;white-space:pre-wrap;word-wrap:break-word;overflow:hidden}
.sheet-page .fl.filled{background:none;padding:0 .8mm}
.sheet-page .g{display:grid;gap:3mm}
.sheet-page .g2{grid-template-columns:1fr 1fr}
.sheet-page .row{margin-bottom:3.2mm}
.sheet-page .paw{background:var(--yelL);border:.6pt solid var(--yelE);border-radius:4mm;padding:2.4mm 3.2mm 2.8mm}
.sheet-page .paw.b{background:var(--blueL);border-color:var(--edge)}
/* audit */
.sheet-page .moods{display:flex;gap:2.6mm;align-items:center}
.sheet-page .moods .face{width:11mm;height:11mm;border-radius:50%;display:grid;place-items:center;position:relative}
.sheet-page .moods .face img{width:9.4mm;height:9.4mm}
.sheet-page .moods .face.on{box-shadow:0 0 0 .9mm var(--navy)}
.sheet-page .counts{display:grid;grid-template-columns:repeat(4,1fr);gap:2mm}
.sheet-page .counts.c5{grid-template-columns:repeat(5,1fr)}
.sheet-page .cbox{background:#fff;border:.6pt solid var(--edge);border-radius:3mm;text-align:center;padding:1.4mm 1mm 1.6mm}
.sheet-page .cbox .n{font-family:'Fredoka';font-weight:700;font-size:15pt;min-height:7.5mm;line-height:1.3}
.sheet-page .cbox small{display:block;font-weight:800;font-size:6.4pt;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.sheet-page .lvhead,.sheet-page .area-row{display:grid;grid-template-columns:40mm 1fr 1fr 1fr 1fr;gap:1.8mm}
.sheet-page .lvhead{margin-bottom:1.8mm}
.sheet-page .lvhead div{text-align:center;font-weight:800;font-size:6.8pt;letter-spacing:.08em;text-transform:uppercase;border-radius:99px;padding:1mm 0;color:var(--navy)}
.sheet-page .lvhead .v0{background:#fde5dc}
.sheet-page .lvhead .v1{background:#e4f3fa}
.sheet-page .lvhead .v2{background:#fff3c4}
.sheet-page .lvhead .v3{background:#e7f0df}
.sheet-page .area-row{margin-bottom:2.4mm;align-items:stretch}
.sheet-page .area-row .nm{background:#fff;border:.6pt solid var(--edge);border-radius:3mm;padding:2mm 2.4mm}
.sheet-page .area-row .nm b{display:block;font-family:'Fredoka';font-weight:600;font-size:10pt;line-height:1.1}
.sheet-page .area-row .nm span{display:block;font-size:6.8pt;color:var(--muted);line-height:1.25;margin-top:.8mm}
.sheet-page .lvbox{background:#fff;border:.6pt solid var(--edge);border-radius:3mm;padding:2mm 2.2mm;min-height:33mm;font-size:7.2pt;line-height:1.28;color:#3d4a7a;position:relative}
.sheet-page .lvbox.on{border:1.4pt solid var(--navy);background:#fff3c4}
.sheet-page .lvbox.on::after{content:'';position:absolute;right:1.4mm;top:1.2mm;width:4.4mm;height:4.4mm;border-radius:50%;background:var(--navy) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'%3E%3Cpath d='M2.4 5.2l1.8 1.8 3.6-3.8' fill='none' stroke='%23fff' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/80% no-repeat}
/* plan */
.sheet-page .cc-top{display:grid;grid-template-columns:26mm 1fr;gap:3mm;align-items:center;margin-bottom:2.5mm}
.sheet-page .cc-av{width:26mm;height:26mm;border-radius:50%;background:#fff;border:.8pt dashed #e2b93b;display:grid;place-items:center;font-size:6.5pt;color:var(--soft);text-align:center;font-weight:700;padding:2mm}
.sheet-page .ideas-tbl{width:100%;border-collapse:separate;border-spacing:0 1.6mm}
.sheet-page .ideas-tbl th{text-align:left;padding:0 2.4mm}
.sheet-page .ideas-tbl td{background:#fff;border:.6pt solid var(--edge);padding:1.2mm 2.4mm;vertical-align:top}
.sheet-page .ideas-tbl td:first-child{border-radius:3mm 0 0 3mm;width:40mm;border-right:0}
.sheet-page .ideas-tbl td:last-child{border-radius:0 3mm 3mm 0}
/* tech hunt */
.sheet-page .img{height:119mm;border-radius:3mm;background:#fffdf8;overflow:hidden;display:grid;place-items:center}
.sheet-page .img>svg{width:100%;height:100%;display:block}
.sheet-page .qrow{display:grid;grid-template-columns:9mm 1fr;gap:2.4mm;margin-bottom:3mm;padding:3mm 3.4mm}
.sheet-page .qn{width:7.5mm;height:7.5mm;border-radius:50%;background:var(--navy);color:#fff;font-family:'Fredoka';font-weight:700;font-size:10pt;display:grid;place-items:center}
.sheet-page .qrow b{display:block;font-family:'Fredoka';font-weight:600;font-size:11.5pt;line-height:1.2}
.sheet-page .qrow span{display:block;font-size:8.3pt;color:var(--muted);margin-top:.6mm}
.sheet-page .rl{height:7.5mm;border-bottom:.6pt solid var(--rule)}
/* print fallback: notes grow onto as many pages as they need */
.sheet-page .print-sheets.printing .sheet-page.grow{height:auto;min-height:297mm;overflow:visible;padding-bottom:12mm}
.print-sheets.printing .sheet-page.grow .fl.tall{height:auto!important;min-height:170mm;overflow:visible}
.print-sheets.printing .sheet-page.more{display:none}
@media print{@page{size:A4;margin:0}}
/* Complete-flow print uses browser fonts and allows unlimited bilingual text. */
.flow-print{display:none}
@media print{
 body.print-flow>*{display:none!important}
 body.print-flow>#flowPrint{display:block!important;color:#232c4b;background:white;font:11pt/1.5 'Nunito','PingFang SC','Noto Sans CJK SC',sans-serif;padding:12mm;width:auto;height:auto;overflow:visible}
 #flowPrint h1{font-size:22pt;margin:0 0 6mm}#flowPrint h2{font-size:12pt;margin:5mm 0 1mm;break-after:avoid}#flowPrint p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}#flowPrint .flow-block{break-inside:auto}#flowPrint svg{width:100%;height:auto;max-height:140mm}
 .print-sheets.printing .sheet-page.grow{height:auto;min-height:297mm;overflow:visible}
}
@page complete-flow{size:A4;margin:12mm}
@media print{body.print-flow>#flowPrint{page:complete-flow;padding:0!important}}
