/* section pages (pages_ui.js) — same rules in the hosted app and the artifacts */
.pg{--p-card:var(--surface,var(--surf));--p-ink:var(--ink);--p-mut:var(--muted,var(--mut));--p-dim:var(--dim,var(--p-mut));--p-line:var(--line);
  --p-acc:var(--accent,var(--brass));--p-ok:var(--ok);--p-bad:var(--bad,var(--no));--p-warn:var(--flag,#C9A227);font-family:var(--ui,var(--sans))}
.pg button{font-family:inherit;cursor:pointer;text-transform:none;letter-spacing:normal}
.pg .ok{color:var(--p-ok)}.pg .warn{color:var(--p-warn)}.pg .bad{color:var(--p-bad)}
.pg-h{margin:6px 0 16px}
.pg .pg-t{font:400 34px/1.1 var(--display,var(--serif));letter-spacing:-.01em;margin:0;color:var(--p-ink);text-transform:none}
.pg-sub{color:var(--p-mut);margin:6px 0 0;font-size:14px;max-width:720px}
.pg-sec{margin:0 0 14px}
.pg-sec>summary{list-style:none;cursor:pointer;display:flex;align-items:baseline;gap:10px;padding:8px 2px;border-bottom:1px solid var(--p-line);margin-bottom:10px}
.pg-sec>summary::-webkit-details-marker{display:none}
.pg-sec>summary::before{content:"▸";color:var(--p-dim);font-size:11px;transition:transform .15s}
.pg-sec[open]>summary::before{transform:rotate(90deg)}
.pg-sn{font-weight:600;font-size:15px;color:var(--p-ink)}
.pg-sm{margin-left:auto;font-size:12.5px;color:var(--p-dim)}.pg-sm b{color:var(--p-acc);font-weight:500}
.pg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.pg-deck,.pg-master,.pg-doc{display:flex;flex-direction:column;gap:9px;text-align:left;background:var(--p-card);border:1px solid var(--p-line);border-radius:14px;padding:13px 15px;color:var(--p-ink);
  box-shadow:0 1px 2px rgba(16,24,40,.04),0 8px 22px -16px rgba(16,24,40,.18);transition:border-color .15s,transform .15s}
.pg-deck:hover,.pg-master:hover,.pg-doc:hover{border-color:var(--p-acc)}
.pg-dn{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-weight:500;font-size:14.5px;line-height:1.3}
.pg-due{font-size:11.5px;color:var(--p-acc);white-space:nowrap}
.pg-bar{display:flex;height:5px;border-radius:3px;overflow:hidden;background:color-mix(in srgb,var(--p-line) 80%,transparent)}
.pg-bar i{display:block;height:100%}.pg-bar i.ok{background:var(--p-ok)}.pg-bar i.bad{background:var(--p-bad)}
.pg-dm{display:flex;justify-content:space-between;gap:8px;font-size:12px;color:var(--p-dim)}
.pg-mgrid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.pg-mt{font:400 21px/1.2 var(--display,var(--serif))}
.pg-rh{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:4px 0 12px}
.pg-rt{font:400 22px/1.2 var(--display,var(--serif))}
.pg .pg-btn{font-size:13px;font-weight:500;padding:7px 13px;border-radius:999px;border:1px solid var(--p-line);background:var(--p-card);color:var(--p-ink)}
.pg-frame{width:100%;min-height:400px;border:1px solid var(--p-line);border-radius:14px;background:#fff;display:block}
.pg-tabs{display:inline-flex;gap:4px;padding:4px;border:1px solid var(--p-line);border-radius:999px;background:var(--p-card);margin:0 0 16px}
.pg-tabs button{border:0;background:none;padding:7px 16px;border-radius:999px;font-size:13.5px;font-weight:500;color:var(--p-mut)}
.pg-tabs button span{font-weight:400;color:var(--p-dim);margin-left:4px}
.pg-tabs button[aria-selected="true"]{background:var(--p-ink);color:var(--bg)}
.pg-tabs button[aria-selected="true"] span{color:inherit;opacity:.7}
.pg-note{white-space:pre-wrap;font-size:14.5px;line-height:1.55;margin:4px 0 2px;color:var(--p-ink)}
.pg-filter{display:flex;align-items:center;gap:10px;margin:0 0 14px}
.pg-filter input{flex:1;max-width:420px;height:38px;border:1px solid var(--p-line);border-radius:12px;background:var(--p-card);color:var(--p-ink);padding:0 12px;font:14px var(--ui,var(--sans));outline:none}
.pg-filter input:focus{border-color:var(--p-acc)}
.pg-libn{font-size:12.5px;color:var(--p-dim)}
.pg-gh{font-size:12px;color:var(--p-dim);margin:12px 2px 6px}
.pg-gh b{font-weight:600;color:var(--p-mut)}.pg-gh span{margin-left:4px}
/* a disorder's kinds of document (Guidelines, Review courses, Lectures…) fold inside it */
.pg-kind{margin:2px 0 10px 4px;padding-left:12px;border-left:2px solid var(--p-line)}
.pg-kind>summary{list-style:none;cursor:pointer;display:flex;align-items:baseline;gap:8px;padding:6px 0;font-weight:600;font-size:14px;color:var(--p-ink)}
.pg-kind>summary::-webkit-details-marker{display:none}
.pg-kind>summary::before{content:"▸";color:var(--p-dim);font-size:10px;transition:transform .15s}
.pg-kind[open]>summary::before{transform:rotate(90deg)}
.pg-kind>summary .pg-sm{margin-left:0;font-weight:400}
.pg-sec>summary .pg-sm{text-align:right}
.pg-docs{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px}
.pg-doc{padding:10px 13px;gap:4px;border-radius:12px}
.pg-dt{font-size:13.5px;line-height:1.35;font-weight:500}
@media (max-width:600px){.pg .pg-t{font-size:28px}.pg-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}}
