/* The Parent Communication Kit: shared pieces (hub, sealed cover, next-paper footer, index badges).
   Design: GrOK-Team school-brain-ek, notebook paper and blackboard. */
.kit, .kit-sealed, .kit-next {
    --paper:#F7F4EC; --card:#FFFDF6; --ink:#17261F; --board:#20423A; --chalk:#F5F1E4;
    --redpen:#D9432F; --redpen-dark:#B0301E; --blueink:#2B50C8; --ruled:rgba(43,80,200,.14); --pencil:#6E7A72;
    font-family:"Public Sans",system-ui,-apple-system,sans-serif; color:var(--ink); line-height:1.5;
    -webkit-font-smoothing:antialiased;
}

/* ---------- buttons ---------- */
.kit-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.kit-btn{display:inline-flex;align-items:center;justify-content:center;font:inherit;font-weight:700;font-size:14.5px;border:none;border-radius:999px;cursor:pointer;padding:10px 20px;text-decoration:none;transition:transform .12s ease, background .15s ease;text-align:center}
.kit-btn:active{transform:scale(.97)}
.kit-btn-whats{background:#1FA855;color:#fff;box-shadow:0 4px 12px rgba(31,168,85,.25)}
.kit-btn-whats:hover{background:#178f47}
.kit-btn-board{background:#20423A;color:#F5F1E4}
.kit-btn-board:hover{background:#17261F}
.kit-btn-ghost{background:transparent;color:#17261F;border:1.5px solid rgba(23,38,31,.28);padding:9px 19px}
.kit-btn-ghost:hover{border-color:#17261F}
.kit :is(a,button):focus-visible, .kit-sealed :is(a,button):focus-visible, .kit-next :is(a,button):focus-visible{outline:2.5px dashed #2B50C8;outline-offset:3px}

/* ---------- sealed cover (a paper before its date) ---------- */
.kit-sealed{
    position:relative;margin:0 0 2.5rem;padding:30px 26px 26px;border-radius:10px;
    background:#EFE7D2;border:1.5px solid rgba(23,38,31,.45);
    background-image:linear-gradient(135deg, transparent 49.6%, rgba(23,38,31,.18) 49.6% 50.4%, transparent 50.4%),
                     linear-gradient(225deg, transparent 49.6%, rgba(23,38,31,.18) 49.6% 50.4%, transparent 50.4%);
    background-size:100% 120px;background-repeat:no-repeat;
    box-shadow:0 10px 30px rgba(23,38,31,.10);
}
.kit-sealed-stamp{
    display:inline-block;margin-bottom:14px;padding:5px 12px;border:3px double #D9432F;border-radius:8px;
    color:#D9432F;background:rgba(247,244,236,.9);transform:rotate(-4deg);
    font-family:"IBM Plex Mono",monospace;font-weight:600;font-size:13px;letter-spacing:.24em;
}
.kit-sealed-q{font-family:"IBM Plex Mono",monospace;font-size:11.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#6E7A72}
.kit-sealed-title{font-family:"Caveat",cursive;font-weight:700;font-size:clamp(34px,8vw,44px);line-height:1.05;margin-top:6px}
.kit-sealed-teaser{margin-top:8px;font-size:15px;color:#3E4A43;max-width:52ch}
.kit-sealed-when{margin-top:14px;font-family:"IBM Plex Mono",monospace;font-size:13px;letter-spacing:.04em}
.kit-sealed-when b{color:#B0301E}
.kit-countdown{color:#6E7A72}

/* ---------- next-paper footer ---------- */
.kit-next{margin:0 0 2.5rem;padding:20px 22px;border-radius:10px;background:#20423A;color:#F5F1E4;box-shadow:0 10px 26px rgba(32,66,58,.25)}
.kit-next-label{font-family:"IBM Plex Mono",monospace;font-size:11px;font-weight:600;letter-spacing:.14em;color:rgba(245,241,228,.7)}
.kit-next-title{font-family:"Caveat",cursive;font-size:28px;font-weight:700;line-height:1.1;margin-top:6px}
.kit-next-teaser{margin-top:4px;font-size:14px;color:rgba(245,241,228,.85);max-width:52ch}
.kit-next .kit-btn-ghost{color:#F5F1E4;border-color:rgba(245,241,228,.45)}
.kit-next .kit-btn-ghost:hover{border-color:#F5F1E4}
.kit-next .kit-btn-board{background:#F5F1E4;color:#17261F}

/* ---------- hub: the date sheet ---------- */
.kit{
    max-width:680px;margin:0 auto 2.5rem;background:var(--card);
    background-image:
        linear-gradient(to right, transparent 0 30px, rgba(217,67,47,.16) 30px 31.5px, transparent 31.5px),
        repeating-linear-gradient(to bottom, transparent 0 33px, var(--ruled) 33px 34px);
    box-shadow:0 12px 40px rgba(23,38,31,.12);border:1px solid #e7e2d3;border-radius:6px;
    padding:40px 32px 36px 56px;
}
@media (max-width:560px){ .kit{padding:28px 14px 28px 40px;margin-left:-8px;margin-right:-8px} }
.kit .masthead{text-align:center;padding-bottom:12px;border-bottom:3px double var(--ink);margin-bottom:20px}
.kit .wordmark{display:inline-flex;align-items:baseline;font-weight:700;letter-spacing:-.015em;line-height:1;color:var(--ink)}
.kit .wordmark .ai{font-family:"Caveat",cursive;font-weight:700;font-size:1.3em;color:var(--redpen);display:inline-block;transform:rotate(-3deg);margin-left:3px}
.kit .masthead .wordmark{font-size:27px}
.kit .masthead .wordmark .ai{border:2.5px solid var(--redpen);border-radius:9px;padding:0 7px}
.kit .masthead .pres{display:block;margin-top:7px;font-family:"IBM Plex Mono",monospace;font-size:9.5px;font-weight:600;letter-spacing:.34em;color:var(--pencil);text-transform:uppercase}
.kit .title{font-family:"Caveat",cursive;font-weight:700;font-size:clamp(36px,9vw,48px);line-height:1.05}
.kit .title .circ{position:relative;white-space:nowrap}
.kit .title .circ::after{content:"";position:absolute;inset:-4px -10px;border:2.5px solid var(--redpen);border-radius:50%;transform:rotate(-2deg);opacity:.85}
.kit .lede{margin-top:10px;font-size:15.5px;color:#3E4A43;max-width:54ch}
.kit .sheet{margin-top:22px;border:1.5px solid var(--ink);border-radius:8px;display:flex;flex-wrap:wrap}
.kit .sheet .field{flex:1 1 auto;min-width:140px;padding:9px 14px;border-right:1.5px solid var(--ink);font-family:"IBM Plex Mono",monospace;font-size:12px;letter-spacing:.04em}
.kit .sheet .field:last-child{border-right:none}
@media (max-width:560px){ .kit .sheet .field{border-right:none;border-bottom:1.5px solid var(--ink)} .kit .sheet .field:last-child{border-bottom:none} }
.kit .sheet .field small{display:block;font-size:9.5px;font-weight:600;letter-spacing:.18em;color:var(--pencil);text-transform:uppercase;margin-bottom:2px}
.kit .sheet .field b{font-size:13.5px;font-weight:600}
.kit .sheet .hand{font-family:"Caveat",cursive;font-size:19px;font-weight:600;color:var(--redpen);display:inline-block;transform:rotate(-1deg)}
.kit .marksheet{margin-top:18px;font-family:"IBM Plex Mono",monospace;font-size:12.5px;font-weight:600;letter-spacing:.08em;color:var(--pencil)}
.kit .marksheet b{color:var(--redpen)}

.kit-sec{margin-top:28px}
.kit-sec-head{font-family:"IBM Plex Mono",monospace;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;display:flex;align-items:center;gap:10px}
.kit-letter{width:26px;height:26px;border-radius:50%;flex:0 0 26px;background:var(--board);color:var(--chalk);display:inline-flex;align-items:center;justify-content:center;font-size:12px}
.kit-paper{display:flex;gap:14px;align-items:flex-start;padding:14px 2px 13px;border-bottom:1.5px dashed rgba(23,38,31,.18)}
.kit-sec .kit-paper:last-child{border-bottom:none}
.kit-qno{flex:0 0 38px;text-align:right;font-family:"IBM Plex Mono",monospace;font-size:14px;font-weight:600;color:var(--redpen);padding-top:2px}
.kit-body{min-width:0;flex:1}
.kit-title{font-size:16.5px;font-weight:800;color:var(--ink);letter-spacing:-.01em;text-decoration:none}
a.kit-title{border-bottom:2px solid rgba(43,80,200,.35)}
a.kit-title:hover{border-bottom-color:var(--redpen);color:var(--redpen-dark)}
.kit-teaser{font-size:14px;color:#3E4A43;margin-top:3px}
.kit-redacted{color:#8A938D;letter-spacing:.02em}
.kit-st-sealed .kit-teaser{color:var(--pencil);font-style:italic}
.kit-side{flex:0 0 auto;display:flex;flex-direction:column;gap:6px;align-items:flex-end;max-width:42%}
.kit-tag{font-family:"IBM Plex Mono",monospace;font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--pencil);border:1px solid rgba(23,38,31,.22);border-radius:4px;padding:2px 7px;white-space:nowrap}
.kit-tag-next{color:var(--redpen-dark);border-color:rgba(217,67,47,.5);background:rgba(217,67,47,.06)}
.kit-mark{font-family:"Caveat",cursive;font-size:20px;font-weight:700;color:var(--redpen);line-height:1;text-align:right}
.kit-remind{font-size:12.5px;font-weight:700;color:#178f47;text-decoration:underline;text-underline-offset:3px}
.kit-st-next{background:rgba(217,67,47,.04)}
.kit-final .kit-qno{color:var(--board)}
.kit-final.kit-st-open a.kit-title{color:var(--redpen-dark);border-bottom-color:rgba(217,67,47,.5);font-size:18px}
@media (max-width:560px){
    .kit-paper{flex-wrap:wrap}
    .kit-side{flex-direction:row;flex-basis:100%;max-width:none;padding-left:52px;align-items:center}
}

.kit .verdict{margin-top:32px;background:var(--board);color:var(--chalk);border-radius:10px;padding:24px 24px 22px;position:relative;box-shadow:0 10px 26px rgba(32,66,58,.25)}
.kit .verdict .q{font-family:"Caveat",cursive;font-size:31px;font-weight:700;line-height:1.1;padding-right:104px}
.kit .verdict .sub{margin-top:6px;font-size:14px;color:rgba(245,241,228,.85);max-width:46ch}
.kit .stamp{position:absolute;top:-22px;right:14px;border:3px double var(--redpen);color:var(--redpen);background:rgba(247,244,236,.95);border-radius:8px;padding:6px 11px;text-align:center;transform:rotate(6deg);font-family:"IBM Plex Mono",monospace;font-weight:600}
.kit .stamp .big{font-size:12px;letter-spacing:.14em;display:block}
.kit .stamp .small{font-size:8.5px;letter-spacing:.16em;display:block;margin-top:2px;color:rgba(217,67,47,.85)}
.kit .tally{margin-top:16px;border:1.5px solid rgba(245,241,228,.35);border-radius:8px;padding:12px 16px;font-size:13.5px;color:rgba(245,241,228,.92)}
.kit .tally b{color:#fff}
.kit .verdict .kit-btn-ghost{color:#F5F1E4;border-color:rgba(245,241,228,.45)}
.kit .brandfoot{margin-top:24px;padding-top:15px;border-top:3px double var(--ink);display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}
.kit .brandfoot .wordmark{font-size:17px}
.kit .brandfoot .cap{font-family:"IBM Plex Mono",monospace;font-size:10.5px;font-weight:500;letter-spacing:.09em;color:var(--pencil)}

/* ---------- blog index badge ---------- */
.kit-badge{display:inline-block;font-family:"IBM Plex Mono",ui-monospace,monospace;font-size:11px;font-weight:600;letter-spacing:.06em;border-radius:4px;padding:2px 8px}
.kit-badge-open{background:#20423A;color:#F5F1E4}
.kit-badge-next, .kit-badge-sealed{background:#FBEDE8;color:#B0301E;border:1px solid rgba(217,67,47,.4)}

/* ---------- a kit paper (shell shared by the papers built on kit.css) ---------- */
.kp{
    --paper:#F7F4EC; --card:#FFFDF6; --ink:#17261F; --board:#20423A; --chalk:#F5F1E4;
    --redpen:#D9432F; --redpen-dark:#B0301E; --blueink:#2B50C8; --ruled:rgba(43,80,200,.14); --pencil:#6E7A72;
    font-family:"Public Sans",system-ui,-apple-system,sans-serif; color:var(--ink); line-height:1.5;
    max-width:680px; margin:0 auto 2.5rem; background:var(--card);
    background-image:
        linear-gradient(to right, transparent 0 30px, rgba(217,67,47,.16) 30px 31.5px, transparent 31.5px),
        repeating-linear-gradient(to bottom, transparent 0 33px, var(--ruled) 33px 34px);
    box-shadow:0 12px 40px rgba(23,38,31,.12); border:1px solid #e7e2d3; border-radius:6px;
    padding:40px 32px 36px 56px; scroll-margin-top:96px; -webkit-font-smoothing:antialiased;
}
@media (max-width:560px){ .kp{padding:28px 14px 28px 40px;margin-left:-8px;margin-right:-8px} }
.kp .masthead{text-align:center;padding-bottom:12px;border-bottom:3px double var(--ink);margin-bottom:20px}
.kp .wordmark{display:inline-flex;align-items:baseline;font-weight:700;letter-spacing:-.015em;line-height:1;color:var(--ink)}
.kp .wordmark .ai{font-family:"Caveat",cursive;font-weight:700;font-size:1.3em;color:var(--redpen);display:inline-block;transform:rotate(-3deg);margin-left:3px}
.kp .masthead .wordmark{font-size:27px}
.kp .masthead .wordmark .ai{border:2.5px solid var(--redpen);border-radius:9px;padding:0 7px}
.kp .masthead .pres{display:block;margin-top:7px;font-family:"IBM Plex Mono",monospace;font-size:9.5px;font-weight:600;letter-spacing:.34em;color:var(--pencil);text-transform:uppercase}
.kp .eyebrow{font-family:"IBM Plex Mono",monospace;font-size:11.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--pencil)}
.kp .title{font-family:"Caveat",cursive;font-weight:700;font-size:clamp(36px,9vw,50px);line-height:1.04;margin-top:8px}
.kp .title .circ{position:relative;white-space:nowrap}
.kp .title .circ::after{content:"";position:absolute;inset:-4px -9px;border:2.5px solid var(--redpen);border-radius:50%;transform:rotate(-2deg);opacity:.85}
.kp .lede{margin-top:10px;font-size:15.5px;color:#3E4A43;max-width:54ch}
.kp .sheet{margin-top:20px;border:1.5px solid var(--ink);border-radius:8px;display:flex;flex-wrap:wrap}
.kp .sheet .field{flex:1 1 auto;min-width:140px;padding:9px 14px;border-right:1.5px solid var(--ink);font-family:"IBM Plex Mono",monospace;font-size:12px;letter-spacing:.04em}
.kp .sheet .field:last-child{border-right:none}
@media (max-width:560px){ .kp .sheet .field{border-right:none;border-bottom:1.5px solid var(--ink)} .kp .sheet .field:last-child{border-bottom:none} }
.kp .sheet .field small{display:block;font-size:9.5px;font-weight:600;letter-spacing:.18em;color:var(--pencil);text-transform:uppercase;margin-bottom:2px}
.kp .sheet .field b{font-size:13.5px;font-weight:600}
.kp .sheet .hand{font-family:"Caveat",cursive;font-size:19px;font-weight:600;color:var(--redpen);display:inline-block;transform:rotate(-1deg)}
.kp .countline{margin-top:24px;font-family:"IBM Plex Mono",monospace;font-size:12px;font-weight:600;letter-spacing:.1em;color:var(--pencil);display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.kp .countline .aside{font-family:"Caveat",cursive;font-size:20px;font-weight:700;color:var(--redpen-dark);display:inline-block;transform:rotate(-1.5deg);letter-spacing:0;white-space:nowrap}
.kp .live{margin-top:16px;text-align:right;font-family:"IBM Plex Mono",monospace;font-size:12px;font-weight:600;color:var(--pencil);letter-spacing:.08em}
.kp .live b{color:var(--redpen);font-size:14px}

.kp .verdict{margin-top:30px;background:var(--board);color:var(--chalk);border-radius:10px;padding:24px 24px 22px;position:relative;box-shadow:0 10px 26px rgba(32,66,58,.25)}
.kp .verdict .q{font-family:"Caveat",cursive;font-size:31px;font-weight:700;line-height:1.1;padding-right:112px}
.kp .verdict .sub{margin-top:6px;font-size:14px;color:rgba(245,241,228,.85);max-width:46ch}
.kp .stamp{position:absolute;top:-22px;right:14px;border:3px double var(--redpen);color:var(--redpen);background:rgba(247,244,236,.95);border-radius:8px;padding:6px 11px;text-align:center;transform:rotate(6deg);font-family:"IBM Plex Mono",monospace;font-weight:600}
.kp .stamp .big{font-size:12px;letter-spacing:.14em;display:block}
.kp .stamp .small{font-size:8.5px;letter-spacing:.16em;display:block;margin-top:2px;color:rgba(217,67,47,.85)}
.kp .tally{margin-top:16px;border:1.5px solid rgba(245,241,228,.35);border-radius:8px;padding:12px 16px;font-size:13.5px;color:rgba(245,241,228,.92)}
.kp .tally b{color:#fff}
.kp .sources{margin-top:18px;font-size:11px;color:var(--pencil);line-height:1.6}
.kp .sources b{color:var(--ink);font-weight:600}
.kp .brandfoot{margin-top:24px;padding-top:15px;border-top:3px double var(--ink);display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}
.kp .brandfoot .wordmark{font-size:17px}
.kp .brandfoot .cap{font-family:"IBM Plex Mono",monospace;font-size:10.5px;font-weight:500;letter-spacing:.09em;color:var(--pencil)}

.kp .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:inherit;font-weight:700;font-size:14.5px;border:none;border-radius:999px;cursor:pointer;padding:10px 20px;text-decoration:none;transition:transform .12s ease, background .15s ease;text-align:center}
.kp .btn:active{transform:scale(.97)}
.kp .btn-primary{background:var(--blueink);color:#fff;box-shadow:0 4px 12px rgba(43,80,200,.25)}
.kp .btn-primary:hover{background:#1F3CA0}
.kp .btn-whats{background:#1FA855;color:#fff;box-shadow:0 4px 12px rgba(31,168,85,.25)}
.kp .btn-whats:hover{background:#178f47}
.kp .btn-ghost{background:transparent;color:var(--ink);border:1.5px solid rgba(23,38,31,.28);padding:9px 19px}
.kp .btn-ghost:hover{border-color:var(--ink)}
.kp .chips{display:flex;flex-wrap:wrap;gap:8px}
.kp .chip{font:inherit;font-size:14px;font-weight:600;color:var(--ink);background:transparent;border:1.5px solid rgba(23,38,31,.30);border-radius:999px;padding:6px 14px;cursor:pointer;transition:border-color .12s ease, background .12s ease}
.kp .chip:hover{border-color:var(--blueink)}
.kp .chip[aria-pressed="true"]{background:var(--board);border-color:var(--board);color:var(--chalk)}
.kp :is(a,button,input):focus-visible{outline:2.5px dashed var(--blueink);outline-offset:3px}
.kp .share{margin-top:18px;display:flex;gap:10px;flex-wrap:wrap}
.kp .fade-in{animation:kpfade .25s ease both}
@keyframes kpfade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){ .kp .fade-in{animation:none} }