/* 📣 Kabari Pembelian + Purchasing triage (purchasing-notices.js, docs/PURCHASING_NOTICES.md). Phone first (360 px), targets >= 44 px.
   Colours: the app tokens and the plan section 3(b) status colours (Habis / urgent #B42318 on #FEF2F2, Menipis #9A3412 on #FFFAEB,
   indigo #4338CA for the Purchasing accents). Amber only where it means attention (lesson warning-colors-only-for-warnings). */
.pn-row-btn{flex-shrink:0;min-width:44px;min-height:44px;border:1px solid var(--border);border-radius:10px;background:#fff;font-size:1.05rem;cursor:pointer}
.pn-fac-btn{min-height:44px;padding:0 10px;border:1px solid #C7D2FE;border-radius:10px;background:#EEF2FF;color:#3730A3;font:inherit;font-weight:750;font-size:.85rem;cursor:pointer;white-space:nowrap}
.pn-ov{position:fixed;inset:0;z-index:320;background:rgba(16,24,40,.35);display:flex;justify-content:center}
.pn-sheet{display:flex;flex-direction:column;width:100%;max-width:640px;height:100%;background:#F8FAFC}
.pn-bar{display:flex;align-items:center;gap:8px;padding:6px 10px;background:#fff;border-bottom:1px solid var(--border)}
.pn-back{min-height:44px;padding:0 12px;border:1px solid var(--border);border-radius:10px;background:#fff;font:inherit;font-weight:750;cursor:pointer;flex-shrink:0}
.pn-bar-t{font-weight:800;font-size:1rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pn-body{flex:1;overflow-y:auto;padding:10px 12px 28px}
.pn-item{font-size:1rem;margin:2px 0;overflow-wrap:anywhere}
.pn-sub{font-size:.84rem;color:var(--ink2);margin-top:2px;overflow-wrap:anywhere}
.pn-kinds,.pn-presets{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:10px 0 6px}
.pn-kind{min-height:54px;padding:6px 8px;border:1px solid var(--border);border-radius:12px;background:#fff;font:inherit;font-weight:750;font-size:.9rem;text-align:left;cursor:pointer;color:var(--dark)}
.pn-kind.on{background:var(--p);border-color:var(--p);color:#fff}
.pn-kind:disabled{opacity:1;background:#F2F4F7;color:#475467}
.pn-date-pick{display:flex;flex-direction:column;gap:4px;font-size:.85rem}
.pn-date-pick .pn-in{min-height:40px;margin:0}
.pn-lbl{display:block;font-size:.85rem;font-weight:750;margin:8px 0 0;color:var(--dark)}
.pn-in{display:block;width:100%;box-sizing:border-box;min-height:46px;margin-top:4px;padding:8px 10px;border:1px solid var(--border-input,var(--border));border-radius:10px;background:#fff;font:inherit;font-size:1rem}
textarea.pn-in{min-height:64px;resize:vertical}
.pn-in[readonly],.pn-in:disabled{background:#F2F4F7}
.pn-check{display:flex;align-items:center;gap:8px;min-height:44px;margin-top:6px;font-weight:750;font-size:.95rem}
.pn-check input{width:22px;height:22px}
.pn-echo{font-size:.82rem;color:#05603A;min-height:1em;margin-top:2px}
.pn-echo-bad{color:var(--danger,#B42318)}
.pn-hint{font-size:.84rem;color:var(--ink2);margin:8px 0}
.pn-msg{min-height:1.2em;margin:8px 0 4px;font-size:.9rem;font-weight:700}
.pn-msg-ok{color:#05603A}.pn-msg-bad{color:#B42318}.pn-msg-warn{color:#9A3412}
.pn-primary{display:block;width:100%;min-height:54px;margin-top:6px;border:0;border-radius:12px;background:var(--p);color:#fff;font:inherit;font-weight:800;font-size:1rem;cursor:pointer}
.pn-primary:disabled{opacity:.6}
.pn-primary.pn-sm{width:auto;min-height:46px;padding:0 16px;margin:4px 0 0}
.pn-h{font-weight:800;font-size:.95rem;margin:18px 0 6px}
.pn-link{display:inline-block;min-height:44px;padding:0 4px;border:0;background:none;color:var(--p);font:inherit;font-weight:750;cursor:pointer}
.pn-quiet{font-size:.88rem;color:var(--ink2);padding:8px 0}
.pn-card{padding:10px 12px;margin:0 0 8px;background:#fff;border:1px solid var(--border);border-radius:12px}
.pn-card-urg{border-left:4px solid #B42318}
.pn-card-h{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;font-size:.92rem;overflow-wrap:anywhere}
.pn-note{font-size:.88rem;margin-top:4px;white-space:pre-wrap;overflow-wrap:anywhere}
.pn-meta{font-size:.78rem;color:var(--muted);margin-top:4px}
.pn-reply{margin-top:6px;padding:6px 8px;background:#EEF2FF;border-radius:8px;color:#3730A3;font-size:.88rem;font-weight:700;overflow-wrap:anywhere}
.pn-urg{color:#B42318}
.pn-st{flex-shrink:0;padding:1px 8px;border:1px solid;border-radius:999px;font-size:.72rem;font-weight:800;white-space:nowrap}
.pn-st-baru{background:#FEF2F2;border-color:#F4B4AE;color:#B42318}
.pn-st-dibaca{background:#EEF2FF;border-color:#C7D2FE;color:#4338CA}
.pn-st-selesai{background:#ECFDF3;border-color:#A6F4C5;color:#05603A}
.pn-st-batal{background:#F2F4F7;border-color:#D0D5DD;color:#667085;text-decoration:line-through}
.pn-acts{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.pn-btn2{min-height:44px;padding:0 12px;margin-top:6px;border:1px solid var(--border);border-radius:10px;background:#fff;font:inherit;font-weight:750;font-size:.88rem;cursor:pointer}
.pn-acts .pn-btn2{margin-top:0}
.pn-replybox{display:flex;gap:6px;align-items:center;margin-top:6px}
.pn-replybox .pn-in{margin-top:0}
.pn-mine-item{font-weight:800;font-size:.86rem;margin:10px 0 4px}
/* Hari ini: the alert rows */
.pn-list{margin:12px 0 4px}
.pn-list-h{display:flex;align-items:center;justify-content:space-between;gap:8px}
.pn-list-h h3{margin:0;font-size:1rem}
.pn-row{padding:8px 10px;margin:6px 0;background:#fff;border:1px solid var(--border);border-radius:12px}
.pn-row-star{border-color:#4338CA;box-shadow:inset 4px 0 0 #4338CA}
.pn-row-h{display:flex;align-items:center;justify-content:space-between;gap:8px}
.pn-row-n{min-width:0;font-size:.95rem;overflow-wrap:anywhere}
.pn-back-why{margin-top:4px;font-size:.84rem;font-weight:750;color:#3730A3}
.pn-tri{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px}
.pn-tbtn{min-height:44px;padding:4px 8px;border:1px solid var(--border);border-radius:10px;background:#fff;font:inherit;font-weight:750;font-size:.82rem;cursor:pointer;color:var(--dark);text-align:left}
.pn-tbtn.on{background:#EEF2FF;border-color:#4338CA;color:#3730A3}
.pn-menu{display:grid;gap:8px;margin-top:12px}
.pn-menu .pn-tbtn{min-height:54px;font-size:.95rem}
.pn-cur{margin:10px 0 0;font-size:.95rem}
.pn-chip{display:inline-block;margin-left:4px;padding:0 6px;border:1px solid #D0D5DD;border-radius:999px;background:#F2F4F7;color:#475467;font-size:.72rem;white-space:nowrap}
.pn-chip-star{background:#EEF2FF;border-color:#C7D2FE;color:#3730A3}
.pn-chip-back{background:#fff;border-color:#C7D2FE;color:#3730A3}
.pn-review-door{display:block;width:100%;min-height:48px;margin:6px 0 0;padding:0 12px;border:1px solid var(--border);border-radius:10px;background:#fff;font:inherit;font-weight:750;text-align:left;cursor:pointer}
/* the 📣 card on Hari ini (purchasing-home.js phCardHTML classes) */
.ph-c-kabar{border-left-color:#4338CA}.ph-c-kabar-urg{border-left-color:#B42318}
.ph-chip-kabar-urg{background:#FEF2F2;border-color:#F4B4AE;color:#B42318}
/* Super: recipients */
.pn-recip-list{display:grid;gap:4px}
.pn-recip-row{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;padding:4px 0;border-bottom:1px solid #F2F4F7}
.pn-recip-n{flex:1 1 140px;min-width:0;font-weight:750;overflow-wrap:anywhere}
.pn-back:focus-visible,.pn-kind:focus-visible,.pn-primary:focus-visible,.pn-btn2:focus-visible,.pn-tbtn:focus-visible,.pn-row-btn:focus-visible,.pn-fac-btn:focus-visible{outline:3px solid var(--p);outline-offset:2px}
@media(min-width:900px){.pn-kinds{grid-template-columns:repeat(4,1fr)}.pn-tri{grid-template-columns:repeat(4,auto);justify-content:start}}
/* author display rules above must not undo the hidden attribute (reason text box, reply box) */
#pn-ov [hidden],.pn-recip [hidden]{display:none!important}
