.ch-app{--g:#0f6b3d;--gd:#0a4a2a;--y:#ffd23f;--ink:#17261d;--mut:#5a6b60;--line:#dbe3da;font-size:16px;line-height:1.5;color:var(--ink);max-width:1100px;margin:0 auto}
.ch-app *{box-sizing:border-box}
.ch-app h2,.ch-app h3,.ch-app h4{margin:0 0 .5rem;line-height:1.25}
.ch-app h2{font-size:1.6rem}.ch-app h3{font-size:1.1rem}.ch-app h4{font-size:1rem;margin-top:1rem}
.ch-app a{color:var(--g)}
.ch-nav{background:var(--g);color:#fff;display:flex;gap:.4rem;align-items:center;padding:.6rem 1rem;flex-wrap:wrap;border-radius:10px;margin:0 0 1.2rem}
.ch-nav a{color:#fff;text-decoration:none;padding:.25rem .65rem;border-radius:6px}.ch-nav a.on{background:rgba(255,255,255,.2)}
.ch-nav .ch-sp{flex:1}.ch-nav .ch-mut{color:rgba(255,255,255,.8);font-size:.85rem;margin:0 .4rem}
.ch-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.ch-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:1rem}
.ch-card.ch-link{text-decoration:none;color:inherit;display:block}.ch-card.ch-link:hover{border-color:var(--g)}
.ch-card.ch-tight{padding:.6rem}
.ch-tag{display:inline-block;font-size:.72rem;padding:.1rem .5rem;border-radius:99px;background:color-mix(in srgb,var(--g) 11%,#fff);color:var(--gd);margin:0 .3rem .3rem 0}
.ch-tag-t{background:var(--y);color:#3a2f00;font-weight:700}
.ch-mut{color:var(--mut);font-size:.9rem}
.ch-btn{background:var(--g);color:#fff;border:0;border-radius:8px;padding:.5rem .9rem;font:inherit;font-size:.95rem;cursor:pointer;text-decoration:none;display:inline-block}
.ch-btn.ch-sec{background:#fff;color:var(--g);border:1px solid var(--g)}.ch-btn.ch-sm{padding:.2rem .55rem;font-size:.85rem}.ch-btn.ch-danger{background:#fff;color:#a02020;border:1px solid #a02020}
.ch-btn:disabled{opacity:.4;cursor:default}
.ch-app a.ch-btn{color:#fff;text-decoration:none}.ch-app a.ch-btn.ch-sec{color:var(--g)}
.ch-app input,.ch-app select,.ch-app textarea{font:inherit;padding:.45rem .6rem;border:1px solid var(--line);border-radius:8px;background:#fff;max-width:100%;color:var(--ink)}
.ch-app textarea{width:100%}
.ch-filters{display:flex;gap:.6rem;flex-wrap:wrap;margin:1rem 0}.ch-filters input[type=search]{flex:1;min-width:200px}
.ch-row{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}.ch-spread{justify-content:space-between}
.ch-col{display:flex;flex-direction:column;gap:.3rem}
.ch-diagram{width:100%;max-width:560px;border-radius:8px;display:block;margin:0 0 1.5rem}.ch-img{height:auto}
.ch-cols{display:grid;gap:1.2rem;grid-template-columns:1fr 1fr}
.ch-builder{display:grid;gap:1.2rem;grid-template-columns:320px 1fr}
@media(max-width:800px){.ch-cols,.ch-builder{grid-template-columns:1fr}}
.ch-pick{max-height:70vh;overflow:auto;display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}
.ch-item{display:grid;grid-template-columns:auto 1fr auto;gap:.7rem;align-items:start;border:1px solid var(--line);border-radius:10px;padding:.7rem;background:#fff;margin-bottom:.6rem}
.ch-num{background:var(--g);color:#fff;width:1.8rem;height:1.8rem;border-radius:50%;display:grid;place-items:center;font-weight:700}
.ch-bar{height:8px;background:#e3eae2;border-radius:8px;overflow:hidden}.ch-bar>i{display:block;height:100%;background:var(--g)}
.ch-q{border:0;padding:0;margin:0 0 .7rem}.ch-q legend{font-weight:700;padding:0}.ch-q label{display:block;padding:.2rem 0}
.ch-ok{color:var(--g);font-weight:700}.ch-bad{color:#a02020;font-weight:700}
.ch-gap{margin-top:1.5rem}.ch-gap-b{margin-bottom:1rem}
.ch-app ul,.ch-app ol{padding-left:1.2rem;margin:.3rem 0}
.ch-table{width:100%;border-collapse:collapse}.ch-table td,.ch-table th{border-bottom:1px solid var(--line);padding:.4rem;text-align:left;vertical-align:top}
.ch-plan-head{border-bottom:3px solid var(--g);margin-bottom:1rem;padding-bottom:.5rem}
.ch-drillcard{break-inside:avoid;page-break-inside:avoid;border:1px solid var(--line);border-radius:10px;padding:1rem;margin-bottom:1rem}
.ch-gate{max-width:380px;margin:2rem 0}
.ch-watch{margin:.4rem 0 .8rem}
.ch-qrbox{float:right;width:132px;text-align:center;font-size:.72rem;line-height:1.25;margin:0 0 .6rem 1rem}
.ch-qrbox svg,.ch-qrsm svg{width:100%;height:auto;display:block}
.ch-qrurl{font-family:monospace;font-size:.62rem;word-break:break-all}
.ch-vcell{width:84px;text-align:center}.ch-qrsm{width:72px;margin:0 auto}
.ch-print-root{display:none}
.ch-pc{font:10.5pt/1.4 Arial,Helvetica,sans-serif;color:#000;background:#fff}
.ch-pc h1{font-size:17pt;margin:0 0 .3em;color:#000}
.ch-pc h2{font-size:10.5pt;text-transform:uppercase;letter-spacing:.04em;margin:1em 0 .25em;color:#000;border:0;padding:0}
.ch-pc p,.ch-pc li{margin:.2em 0;color:#000}.ch-pc ul,.ch-pc ol{margin:.2em 0 .2em 1.3em;padding:0}
.ch-pc ul.ch-tick{list-style:none;margin-left:0}.ch-pc ul.ch-tick li:before{content:"\2713\00a0\00a0"}
.ch-pmeta{font-style:italic}
.ch-pc .ch-qrbox{width:30mm;margin:0 0 3mm 5mm;color:#000}
.ch-pfig{margin-top:1em;break-inside:avoid;text-align:center}.ch-pfig svg,.ch-pdiag{width:100%;max-width:150mm;height:auto;max-height:75mm}
.ch-gray{filter:grayscale(1)}
.ch-phead,.ch-pfoot{display:none}
@media print{
  .ch-clpage{break-inside:avoid;page-break-inside:avoid;font-size:10pt}
  .ch-clpage li{margin-bottom:.25rem}
  body.ch-printing > *:not(.ch-print-root){display:none!important}
  body.ch-printing .ch-print-root{display:block!important;max-width:none;margin:0;padding:0}
  .ch-pb{page-break-before:always}
  .ch-pb:first-child{page-break-before:auto}
  html,body.ch-printing{background:#fff!important;margin:0!important;padding:0!important}
  .ch-ptable{width:100%;border-collapse:collapse;border:0}.ch-ptable>thead{display:table-header-group}.ch-ptable>tfoot{display:table-footer-group}
  .ch-ptable>thead>tr>td,.ch-ptable>tfoot>tr>td,.ch-ptable>tbody>tr>td{padding:0;border:0;vertical-align:top}
  .ch-ptable>tbody>tr>td.ch-pbody{padding:6mm 14mm 8mm}
  .ch-phead{display:flex!important;align-items:center;gap:4mm;height:20mm;padding:0 14mm;color:#fff;font:bold 12pt Arial,Helvetica,sans-serif;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .ch-phead img{height:12mm;width:auto}
  .ch-pfoot{display:flex!important;justify-content:space-between;margin:0 14mm;height:12mm;border-top:0.6mm solid #2c2662;padding-top:2mm;font:8pt Arial,Helvetica,sans-serif;color:#000;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .ch-pc .ch-qrbox svg{-webkit-print-color-adjust:exact}
}

.ch-docl{margin:.2em 0 .8em 1.2em}.ch-purl{font-family:monospace;font-size:8.5pt;word-break:break-all}
.ch-pfig .ch-diagram,.ch-pfig .ch-pdiag{margin:0 auto}
.ch-pfig{padding:4mm 0 2mm}
.ch-docl{list-style:none;margin:.2em 0 .8em;padding:0}.ch-docl li{margin:0 0 .4rem}
.ch-app a.ch-doc{display:inline-block;padding:.5rem .9rem;border:2px solid var(--g,#2c2662);border-radius:8px;color:var(--g,#2c2662);font-weight:700;text-decoration:none;background:#fff}
.ch-app a.ch-doc:hover,.ch-app a.ch-doc:focus{background:var(--g,#2c2662);color:#fff}
.ch-app a.ch-doc small{font-weight:400}

.ch-gate h2{margin:0 0 .5rem}
.ch-gate #loginform{margin:1rem 0 0;padding:0;background:none;border:0;box-shadow:none}
.ch-gate #loginform p{margin:0 0 1rem}
.ch-gate #loginform label{display:block;font-weight:600;margin:0 0 .3rem;font-size:.95rem}
.ch-gate #loginform input[type=text],.ch-gate #loginform input[type=password]{display:block;width:100%;max-width:none;box-sizing:border-box;height:auto;padding:.7rem .85rem;border:1px solid #9aa89f;border-radius:8px!important;background:#fff;font:inherit;font-size:1rem;color:#17261d;box-shadow:none}
.ch-gate #loginform input[type=text]:focus,.ch-gate #loginform input[type=password]:focus{outline:3px solid rgba(15,107,61,.3);border-color:#0f6b3d}
.ch-gate #loginform .login-remember label{display:flex;align-items:center;gap:.5rem;font-weight:400}
.ch-gate #loginform .login-remember input{margin:0;width:1.1rem;height:1.1rem}
.ch-gate #loginform input[type=submit]{display:block;width:100%;padding:.75rem 1rem;border:0;border-radius:8px!important;background:#0f6b3d;color:#fff;font:inherit;font-weight:700;cursor:pointer}
.ch-gate #loginform input[type=submit]:hover,.ch-gate #loginform input[type=submit]:focus{background:#0a4a2a}

.ch-gate .ch-sep{margin:1.5rem 0;border:0;border-top:1px solid #dbe3da}
.ch-gate h3{margin:0 0 .4rem}
.ch-gate .ch-reqform{margin:1rem 0 0}.ch-gate .ch-reqform p{margin:0 0 1rem}
.ch-gate .ch-reqform label{display:block;font-weight:600;margin:0 0 .3rem;font-size:.95rem}
.ch-gate .ch-reqform input[type=text],.ch-gate .ch-reqform input[type=email]{display:block;width:100%;max-width:none;box-sizing:border-box;height:auto;padding:.7rem .85rem;border:1px solid #9aa89f;border-radius:8px!important;background:#fff;font:inherit;font-size:1rem;color:#17261d;box-shadow:none}
.ch-gate .ch-reqform input:focus{outline:3px solid rgba(15,107,61,.3);border-color:#0f6b3d}
.ch-gate .ch-reqform .ch-submit{display:block;width:100%;padding:.75rem 1rem;border:0;border-radius:8px!important;background:#0f6b3d;color:#fff;font:inherit;font-weight:700;cursor:pointer}
.ch-gate .ch-reqform .ch-submit:hover,.ch-gate .ch-reqform .ch-submit:focus{background:#0a4a2a}
.ch-hp{position:absolute!important;left:-9999px!important;height:0;overflow:hidden}
.ch-notice{padding:.8rem 1rem;border-radius:8px;margin:0 0 1rem}.ch-ok{background:#e3f4e8;border:1px solid #0f6b3d}.ch-bad{background:#fdeaea;border:1px solid #a02020}
.ch-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin:.4rem 0 1rem}.ch-app .ch-actions a.ch-btn.ch-sec{color:var(--g);background:#fff;border:1px solid var(--g)}.ch-app .ch-actions a.ch-btn.ch-sec:hover{background:var(--g);color:#fff}

.ch-gate .ch-reqbtn{display:block;list-style:none;text-align:center;padding:.75rem 1rem;border:1px solid #0f6b3d;border-radius:8px;color:#0f6b3d;font-weight:700;cursor:pointer;background:#fff}
.ch-gate .ch-reqbtn::-webkit-details-marker{display:none}
.ch-gate .ch-reqbtn:hover,.ch-gate .ch-reqbtn:focus{background:#0f6b3d;color:#fff}
.ch-gate details[open] .ch-reqbtn{margin-bottom:1.2rem}

/* ---- login / request access card ---- */
.ch-gate.ch-card2{max-width:460px;margin:2rem auto;padding:1.5rem;background:#fff;border:1px solid #dbe3da;border-radius:16px;box-shadow:0 8px 30px rgba(15,60,35,.08);position:relative}
.ch-card2 .ch-tabin{position:absolute;opacity:0;pointer-events:none}
.ch-card2 .ch-tabs{display:flex;gap:4px;padding:4px;background:#eef3ee;border-radius:12px;margin:0 0 1.4rem}
.ch-card2 .ch-tabs label{flex:1;text-align:center;padding:.6rem .5rem;border-radius:9px;font-weight:600;font-size:.95rem;color:#4b5d51;cursor:pointer;margin:0;transition:background .15s,color .15s}
.ch-card2 .ch-tabs label:hover{color:#0f6b3d}
.ch-card2 #cht-login:checked~.ch-tabs label[for=cht-login],.ch-card2 #cht-req:checked~.ch-tabs label[for=cht-req]{background:#fff;color:#0f6b3d;box-shadow:0 1px 4px rgba(0,0,0,.12)}
.ch-card2 #cht-login:focus-visible~.ch-tabs label[for=cht-login],.ch-card2 #cht-req:focus-visible~.ch-tabs label[for=cht-req]{outline:3px solid rgba(15,107,61,.4)}
.ch-card2 .ch-panel{display:none}
.ch-card2 #cht-login:checked~.ch-p-login,.ch-card2 #cht-req:checked~.ch-p-req{display:block}
.ch-card2 .ch-lead{margin:0 0 1.2rem;color:#4b5d51;font-size:.98rem;line-height:1.5}
.ch-card2 .ch-grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 .9rem}
.ch-card2 .ch-grid2 .ch-full,.ch-card2 .ch-grid2 input[type=hidden]{grid-column:1/-1}
.ch-card2 .ch-f{margin:0 0 1rem}
.ch-card2 .ch-f label{display:block;font-weight:600;margin:0 0 .3rem;font-size:.9rem}
.ch-card2 .ch-f input{display:block;width:100%;max-width:none;box-sizing:border-box;height:auto;padding:.7rem .85rem;border:1px solid #9aa89f;border-radius:10px!important;background:#fff;font:inherit;font-size:1rem;color:#17261d;box-shadow:none}
.ch-card2 .ch-f input:focus{outline:3px solid rgba(15,107,61,.25);border-color:#0f6b3d}
.ch-card2 .ch-hint{display:block;margin-top:.3rem;font-size:.82rem;color:#5a6b60}
.ch-card2 .ch-submit,.ch-card2 #loginform input[type=submit]{display:block;width:100%;padding:.8rem 1rem;border:0;border-radius:10px!important;background:#0f6b3d;color:#fff;font:inherit;font-weight:700;cursor:pointer;margin-top:.4rem}
.ch-card2 .ch-submit:hover,.ch-card2 .ch-submit:focus,.ch-card2 #loginform input[type=submit]:hover{background:#0a4a2a}
.ch-card2 #loginform input[type=text],.ch-card2 #loginform input[type=password]{border-radius:10px!important}
.ch-card2 .ch-done{text-align:center;padding:1rem 0 .5rem}
.ch-card2 .ch-done-i{width:56px;height:56px;margin:0 auto .8rem;border-radius:50%;background:#e3f4e8;color:#0f6b3d;font-size:28px;line-height:56px;font-weight:700}
.ch-card2 .ch-done h3{margin:0 0 .4rem}.ch-card2 .ch-done p{margin:0;color:#4b5d51}
@media (max-width:480px){.ch-gate.ch-card2{margin:1rem 0;padding:1.1rem}.ch-card2 .ch-grid2{grid-template-columns:1fr}}

/* ---- STA branding on the login card ---- */
.ch-gate.ch-card2{--b:#2c2662;padding:0;overflow:hidden}
.ch-card2 .ch-brandbar{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.4rem 1rem 1.2rem;background:var(--b);color:#fff;text-align:center}
.ch-card2 .ch-brandbar img{display:block;height:64px;width:auto;max-width:80%;margin:0;border-radius:0;box-shadow:none}
.ch-card2 .ch-brandname{font-weight:700;font-size:1.1rem}
.ch-card2 .ch-brandtitle{font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;opacity:.85}
.ch-card2>.ch-tabs{margin:1.4rem 1.5rem 1.2rem}
.ch-card2>.ch-panel{margin:0 1.5rem 1.6rem}
.ch-card2 .ch-tabs label:hover{color:var(--b)}
.ch-card2 #cht-login:checked~.ch-tabs label[for=cht-login],.ch-card2 #cht-req:checked~.ch-tabs label[for=cht-req]{color:var(--b)}
.ch-card2 #cht-login:focus-visible~.ch-tabs label[for=cht-login],.ch-card2 #cht-req:focus-visible~.ch-tabs label[for=cht-req]{outline-color:var(--b)}
.ch-card2 .ch-f input:focus{outline-color:color-mix(in srgb,var(--b) 30%,transparent);border-color:var(--b)}
.ch-card2 .ch-submit,.ch-card2 #loginform input[type=submit]{background:var(--b)}
.ch-card2 .ch-submit:hover,.ch-card2 .ch-submit:focus,.ch-card2 #loginform input[type=submit]:hover{background:var(--b);filter:brightness(1.2)}
.ch-card2 .ch-done-i{background:color-mix(in srgb,var(--b) 12%,#fff);color:var(--b)}
.ch-card2 #loginform a,.ch-card2 .ch-panel a{color:var(--b)}
@media (max-width:480px){.ch-gate.ch-card2{padding:0}.ch-card2>.ch-tabs{margin:1.2rem 1rem 1rem}.ch-card2>.ch-panel{margin:0 1rem 1.3rem}}

/* ---- brand colour across the app (colour comes from Print settings) ---- */
.ch-app a{color:var(--g)}
.ch-app .ch-nav a{color:#fff}
.ch-nav .ch-logo{padding:0;margin:0 .6rem 0 0;display:flex;align-items:center;background:none!important}
.ch-nav .ch-logo img{display:block;height:34px;width:auto;border-radius:0;box-shadow:none}
.ch-app button.ch-btn{background:var(--g)!important;color:#fff!important;border:1px solid var(--g)!important;border-radius:8px!important;font-family:inherit;font-weight:600;box-shadow:none}
.ch-app button.ch-btn:hover{background:var(--gd)!important}
.ch-app button.ch-btn.ch-sec{background:#fff!important;color:var(--g)!important}
.ch-app button.ch-btn.ch-sec:hover{background:color-mix(in srgb,var(--g) 10%,#fff)!important}
.ch-app a.ch-btn{background:var(--g);border:1px solid var(--g)}
.ch-app a.ch-btn.ch-sec{background:#fff;border:1px solid var(--g)}
/* ---- drill filters ---- */
.ch-fbar{background:#fff;border:1px solid var(--line);border-radius:14px;padding:1rem 1.1rem;margin:1rem 0}
.ch-fbar input[type=search]{display:block;width:100%;box-sizing:border-box;padding:.7rem .9rem;border:1px solid #9aa89f;border-radius:10px;font-size:1rem;margin:0 0 .9rem}
.ch-fgroup{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin:0 0 .65rem}
.ch-fgroup:last-child{margin-bottom:0}
.ch-flabel{flex:0 0 6.2rem;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--mut)}
.ch-app button.ch-chip{background:#fff!important;color:var(--ink)!important;border:1px solid #b9c5bc!important;border-radius:99px!important;padding:.3rem .8rem!important;font:inherit!important;font-size:.88rem!important;line-height:1.3;cursor:pointer;box-shadow:none;text-transform:none;letter-spacing:0}
.ch-app button.ch-chip:hover{border-color:var(--g)!important;color:var(--g)!important}
.ch-app button.ch-chip[aria-pressed=true]{background:var(--g)!important;color:#fff!important;border-color:var(--g)!important}
.ch-app button.ch-chip.ch-clear{border-style:dashed!important;color:#a02020!important;border-color:#a02020!important}
@media (max-width:600px){.ch-flabel{flex-basis:100%}}
/* ---- quiz questions: stop theme styles for fieldset/legend overlapping the answers ---- */
.ch-app fieldset.ch-q{display:block;border:0!important;margin:0 0 1.4rem!important;padding:0!important;min-width:0;background:none!important}
.ch-app fieldset.ch-q legend{display:block!important;position:static!important;float:none!important;width:100%!important;padding:0!important;margin:0 0 .6rem!important;background:none!important;font-style:normal!important;font-weight:700!important;font-size:1.05rem!important;line-height:1.4!important;color:var(--ink)!important;text-transform:none!important;letter-spacing:0!important;transform:none!important}
.ch-app fieldset.ch-q label{display:flex;align-items:center;gap:.6rem;margin:0 0 .4rem;padding:.55rem .75rem;border:1px solid var(--line);border-radius:10px;background:#fff;cursor:pointer;line-height:1.4}
.ch-app fieldset.ch-q label:hover{border-color:var(--g)}
.ch-app fieldset.ch-q input[type=radio]{margin:0;flex:0 0 auto;width:1.1rem;height:1.1rem;accent-color:var(--g)}
.ch-app fieldset.ch-q label:has(input:checked){border-color:var(--g);background:color-mix(in srgb,var(--g) 8%,#fff)}

/* Ready-made lesson plans */
.ch-app .ch-ptitle{margin:2.5rem 0 .5rem}
.ch-app .ch-pintro{margin:0 0 1.5rem}
.ch-app h3.ch-pgroup{margin:2rem 0 1rem;padding:0}
.ch-app .ch-plans{margin-bottom:.5rem}
.ch-app .ch-plans .ch-card{padding:1.25rem 1.25rem 1.1rem}
.ch-app .ch-plans .ch-card h3{margin:0 0 .5rem}
.ch-app .ch-plans .ch-card p{margin:0 0 .75rem}
.ch-app .ch-plans .ch-card button{margin-top:.25rem}

.ch-app .ch-mynotes{margin-top:1rem;padding:1.25rem}
.ch-app .ch-mynotes h3{margin:0 0 .35rem}
.ch-app .ch-mynotes p{margin:0 0 .75rem}
.ch-app .ch-flabel2{display:block;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--mut);margin:0 0 .35rem}

.ch-app .ch-mform{padding:1.25rem;max-width:760px}
.ch-app .ch-mform p{margin:0 0 1rem}
.ch-app .ch-mform label{display:block;margin:0 0 .3rem}
.ch-app .ch-mform .ch-mrow{gap:1rem;margin-bottom:1rem}
.ch-app .ch-mform .ch-mrow label{display:flex;flex-direction:column;font-weight:600}
.ch-app .ch-mform .ch-mrow input{width:6.5rem}
.ch-app .ch-mform .ch-fgroup{margin-bottom:1rem}
.ch-app .ch-mform label.ch-chk{display:inline-flex;align-items:center;gap:.3rem;margin:0 .8rem .3rem 0;font-weight:400}
.ch-app .ch-mform input[type=checkbox]{width:auto}
#ch-pfilters{margin:.6rem 0}
#ch-pfilters .ch-fgroup{margin:0 0 .5rem}
#ch-pfilters .ch-flabel{flex:0 0 100%}

.ch-checklist{list-style:none;padding:0;margin:0 0 1rem}
.ch-checklist li{margin:0 0 .35rem;display:flex;align-items:center;gap:.5rem}
.ch-checklist .ch-box{display:inline-block;width:.9rem;height:.9rem;border:1.5px solid #000;border-radius:2px;flex:0 0 auto}

.ch-app .ch-sharebox{padding:1.25rem}
.ch-app .ch-sharebox h3{margin:0}
.ch-app .ch-sharebox p{margin:.5rem 0 .75rem}

/* Popovers in the session builder */
.ch-app .ch-pops{gap:.5rem;flex-wrap:nowrap}
.ch-app .ch-pop{position:relative}
.ch-app .ch-poppanel{position:absolute;right:0;top:calc(100% + .4rem);z-index:20;width:340px;max-width:calc(100vw - 2rem);background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.14);padding:1rem}
.ch-app .ch-poppanel[hidden]{display:none}
.ch-app .ch-popttl{margin:0 0 .6rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-size:.8rem;color:var(--mut)}
.ch-app .ch-popchk{display:flex;align-items:center;gap:.5rem;margin:0 0 .6rem}
.ch-app .ch-poppanel p{margin:.5rem 0}
.ch-app .ch-poppanel .ch-row{gap:.4rem}
.ch-app .ch-poppanel #ch-print{margin-top:.3rem;width:100%}
@media (max-width:520px){.ch-app .ch-pop{position:static}.ch-app .ch-pops{position:relative}.ch-app .ch-poppanel{right:0;left:0;width:auto}}
.ch-app .ch-gap-b > .ch-fgroup{margin:1rem 0}

/* Spacing fixes */
.ch-app .ch-dtop{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin:0 0 1rem}
.ch-app .ch-dnav{display:flex;align-items:center;gap:.75rem}
.ch-app .ch-dnav .ch-mut{font-size:.85rem}
.ch-app .ch-ptitle{margin-top:2.5rem}
/* builder header and plan items */
.ch-app .ch-row.ch-spread{margin-bottom:1rem}
.ch-app .ch-item{padding:1rem;gap:1rem}
.ch-app .ch-item .ch-row{margin:.6rem 0}
.ch-app .ch-item label{display:inline-flex;align-items:center;gap:.5rem}
.ch-app .ch-item textarea{margin-top:.2rem}
.ch-app .ch-item .ch-col{display:flex;flex-direction:column;gap:.4rem}
/* drill page */
.ch-app .ch-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin:0 0 1rem}
.ch-app .ch-card > p{margin:0 0 1rem}
.ch-app .ch-cols{gap:1.5rem 2rem}
.ch-app .ch-cols h3{margin:1.6rem 0 .5rem}
.ch-app .ch-cols > div > h3:first-child{margin-top:.2rem}
.ch-app .ch-cols ul,.ch-app .ch-cols ol{margin:0 0 .5rem;padding-left:1.4rem}
.ch-app .ch-cols li{margin:0 0 .35rem}
.ch-app .ch-actions{margin:.2rem 0 1.4rem}
.ch-app .ch-mynotes{margin-top:1.25rem}
.ch-app .ch-dbottom{margin:1.25rem 0 0;justify-content:center}

.ch-clnote{font-style:italic;margin:.2rem 0 1rem}
.ch-signoff td{height:2.6rem}
