/* PSS Club Console (2026-10-26) - the members' area and committee tools in the
 * club's own brand: crest navy, blue and red, the website's glass and type.
 * Loaded last, after pssc-crm.css; everything hangs off body.pssc-crm. */
.pssc-crm{--cn-navy:#03214d;--cn-blue:#0546a5;--cn-red:#e8200a;--cn-ink:#0f1b33;--cn-mut:#5a6886;--cn-line:rgba(3,33,77,.09);--cn-glass:rgba(255,255,255,.72);--cn-shadow:0 1px 2px rgba(3,33,77,.05),0 18px 40px -28px rgba(3,33,77,.32);--cn-ui:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--cn-display:"Barlow Semi Condensed","Inter",-apple-system,sans-serif;background:#f2f5fb!important;font-family:var(--cn-ui)!important;color:var(--cn-ink)}
.pssc-crm::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(60vw 50vw at 100% 0,rgba(5,70,165,.13),transparent 62%),radial-gradient(46vw 40vw at 0 100%,rgba(232,32,10,.07),transparent 60%),linear-gradient(180deg,#f8faff,#eef2f9)}
.pssc-crm .m-shell,.pssc-crm .m-app{background:transparent!important}
.pssc-crm :is(h1,h2,h3,.m-h1){font-family:var(--cn-display)!important;letter-spacing:-.005em;color:var(--cn-navy)}

/* ---------- the rail ---------- */
.pssc-crm .m-side{background:var(--cn-glass)!important;-webkit-backdrop-filter:saturate(180%) blur(22px)!important;backdrop-filter:saturate(180%) blur(22px)!important;border:1px solid rgba(255,255,255,.8)!important;border-radius:24px!important;box-shadow:0 0 0 1px var(--cn-line),0 24px 50px -32px rgba(3,33,77,.45)!important;padding:16px 12px 16px!important}
.pssc-crm .m-side-brand{display:flex;gap:10px;align-items:center;padding:4px 10px 14px;margin:0 0 6px;border-bottom:1px solid var(--cn-line);text-decoration:none!important}
.pssc-crm .m-side-brand img{width:30px;height:auto;flex:none;filter:drop-shadow(0 4px 8px rgba(3,33,77,.18))}
.pssc-crm .m-side-brand .pss-wm{display:block;font:800 21px/1 var(--cn-display);color:var(--cn-navy);letter-spacing:-.01em}
.pssc-crm .m-side-brand .pss-wm em{font-style:normal;color:var(--cn-red);margin-left:.16em}
.pssc-crm .m-side-brand small{display:block;margin-top:3px;font:700 10.5px/1 var(--cn-ui);letter-spacing:.12em;text-transform:uppercase;color:var(--cn-mut)}
.pssc-crm .m-side-id{padding:8px 10px 12px!important;margin-bottom:4px}
.pssc-crm .m-side-id b{font:700 14px/1.25 var(--cn-ui)!important;color:var(--cn-navy)!important}
.pssc-crm .m-side-id small{font-size:11.5px!important;color:var(--cn-mut)!important}
.pssc-crm .m-side-lbl{margin:16px 12px 6px!important;font:700 10.5px/1 var(--cn-ui)!important;letter-spacing:.12em!important;text-transform:uppercase!important;color:#8a96ad!important}
.pssc-crm .m-side-nav{display:grid;gap:2px}
.pssc-crm .m-side-nav > a{--tint:var(--cn-blue);position:relative;display:flex!important;align-items:center;gap:11px!important;padding:9px 12px!important;border-radius:12px!important;color:#33415c!important;font:600 14px/1.2 var(--cn-ui)!important;background:transparent!important;box-shadow:none!important;transition:background-color .2s,color .2s}
.pssc-crm .m-side-nav > a svg{width:18px!important;height:18px!important;flex:none;color:#7f8ba3!important;stroke:currentColor!important;transition:color .2s}
.pssc-crm .m-side-nav > a:hover{background:rgba(3,33,77,.05)!important;color:var(--cn-navy)!important}
.pssc-crm .m-side-nav > a:hover svg{color:var(--tint)!important}
.pssc-crm .m-side-nav > a.on{background:color-mix(in srgb,var(--tint) 11%,#fff)!important;color:color-mix(in srgb,var(--tint) 78%,#000)!important;font-weight:700!important}
.pssc-crm .m-side-nav > a.on::before{content:"";position:absolute;left:-12px;top:9px;bottom:9px;width:3px;border-radius:0 3px 3px 0;background:var(--tint)}
.pssc-crm .m-side-nav > a.on svg{color:var(--tint)!important}
.pssc-crm .m-side-nav .n{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--cn-red)!important;color:#fff!important;font:800 11px/20px var(--cn-ui)!important;text-align:center;font-style:normal}
.pssc-crm .m-side-sub{--tint:var(--cn-blue);position:relative;display:grid;gap:1px;margin:2px 0 8px 21px;padding-left:12px;border-left:2px solid color-mix(in srgb,var(--tint) 22%,transparent)}
.pssc-crm .m-side-sub a{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:10px;color:#4a5874!important;font:500 13px/1.25 var(--cn-ui);text-decoration:none!important}
.pssc-crm .m-side-sub a:hover{background:rgba(3,33,77,.05);color:var(--cn-navy)!important}
.pssc-crm .m-side-sub a.on{color:color-mix(in srgb,var(--tint) 80%,#000)!important;font-weight:700;background:color-mix(in srgb,var(--tint) 8%,#fff)}
.pssc-crm .m-side-sub a.on::before{content:"";position:absolute;left:-7px;width:12px;height:2px;margin-top:0;background:var(--tint)}
.pssc-crm .m-side-sub .n{margin-left:auto;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:color-mix(in srgb,var(--tint) 14%,#fff);color:color-mix(in srgb,var(--tint) 80%,#000);font:800 10.5px/18px var(--cn-ui);text-align:center;font-style:normal}
.pssc-crm .m-side-foot{border-top:1px solid var(--cn-line);margin-top:12px}
.pssc-crm .m-side-link{border-radius:12px!important;font-weight:600!important}
.pssc-crm .m-side-link.out{color:#c41a07!important}

/* ---------- the top of each page ---------- */
.pssc-crm .m-topbar{background:rgba(255,255,255,.7)!important;-webkit-backdrop-filter:saturate(180%) blur(20px)!important;backdrop-filter:saturate(180%) blur(20px)!important;border:1px solid rgba(255,255,255,.75)!important;border-radius:16px!important;box-shadow:0 0 0 1px var(--cn-line),0 12px 30px -24px rgba(3,33,77,.45)!important}
.pssc-crm .m-topbar-t{font:700 17px/1.2 var(--cn-display)!important;color:var(--cn-navy)!important;letter-spacing:0!important}
@media (min-width:1100px){html body.pssc-crm nav.ctabs .ctabs-secs{display:none!important}html body.pssc-crm nav.ctabs{padding-left:4px!important}}
.pssc-crm .ctabs-tools{gap:4px!important}
.pssc-crm .ctabs-tools .ctab{border-radius:10px!important;padding:8px 12px!important;font:600 13.5px/1.2 var(--cn-ui)!important;color:#4a5874!important}
.pssc-crm .ctabs-tools .ctab:hover{background:rgba(3,33,77,.05)!important;color:var(--cn-navy)!important}
.pssc-crm .ctabs-tools .ctab.on{background:#fff!important;color:color-mix(in srgb,var(--tint) 80%,#000)!important;box-shadow:0 0 0 1px var(--cn-line),0 6px 14px -10px rgba(3,33,77,.4)!important}
.pssc-crm .ctabs-tools .ctab.on::after{background:var(--tint)!important}
.pssc-crm .ctab-n{background:var(--cn-red)!important;color:#fff!important}

/* ---------- cards, figures, tables, buttons ---------- */
.pssc-crm :is(.m-card,.hub-sec,.stat,.pro-note,.q-card,.ev-row){border-radius:20px!important;border:1px solid rgba(255,255,255,.85)!important;background:rgba(255,255,255,.82)!important;-webkit-backdrop-filter:saturate(160%) blur(14px);backdrop-filter:saturate(160%) blur(14px);box-shadow:0 0 0 1px var(--cn-line),0 18px 40px -30px rgba(3,33,77,.35)!important}
.pssc-crm .stat{border-left:4px solid var(--st,var(--cn-blue))!important}
.pssc-crm .stat.green{--st:#0b7a4b}.pssc-crm .stat.red{--st:var(--cn-red)}.pssc-crm .stat.amber{--st:#c27c0e}
.pssc-crm .stat .k{font:700 10.5px/1 var(--cn-ui)!important;letter-spacing:.12em!important;text-transform:uppercase!important;color:var(--cn-mut)!important}
.pssc-crm .stat .v{font-family:var(--cn-display)!important;font-weight:700!important;color:var(--cn-navy)!important;font-variant-numeric:tabular-nums}
.pssc-crm .stat.green .v{color:#0b7a4b!important}.pssc-crm .stat.red .v{color:#c41a07!important}
.pssc-crm :is(.cta,.btn,button.cta,a.cta){border-radius:999px!important;font-family:var(--cn-ui)!important;font-weight:700!important;letter-spacing:0!important;transition:transform .2s cubic-bezier(.2,.7,.2,1),background-color .2s,box-shadow .2s!important}
.pssc-crm :is(.cta,.btn):not(.alt):not(.ghost){background:var(--tint,var(--cn-navy))!important;border-color:var(--tint,var(--cn-navy))!important;color:#fff!important;box-shadow:0 10px 22px -14px color-mix(in srgb,var(--tint,var(--cn-navy)) 80%,transparent)!important}
.pssc-crm :is(.cta,.btn):not(.alt):not(.ghost):hover{filter:brightness(1.08);transform:translateY(-1px)}
.pssc-crm :is(.cta,.btn).alt{background:rgba(255,255,255,.75)!important;color:var(--cn-navy)!important;border:1.5px solid rgba(3,33,77,.14)!important}
.pssc-crm :is(.cta,.btn):active{transform:scale(.97)}
.pssc-crm .mtable{border-radius:16px;overflow:hidden}
.pssc-crm .mtable th{background:rgba(246,248,252,.94)!important;font:700 10.5px/1.2 var(--cn-ui)!important;letter-spacing:.1em!important;text-transform:uppercase!important;color:var(--cn-mut)!important}
.pssc-crm .mtable tbody tr{transition:background-color .15s}
.pssc-crm .mtable tbody tr:hover{background:color-mix(in srgb,var(--tint,var(--cn-blue)) 5%,#fff)}
.pssc-crm :is(input:not([type=checkbox]):not([type=radio]),select,textarea){border-radius:12px!important;border-color:rgba(3,33,77,.16)!important}
.pssc-crm :is(input,select,textarea):focus-visible{outline:2px solid var(--tint,var(--cn-blue))!important;outline-offset:1px!important;border-color:transparent!important}

/* ---------- the committee home: Today ---------- */
.pssc-crm .dash-hero{position:relative;overflow:hidden;isolation:isolate;border-radius:24px!important;background:radial-gradient(700px 360px at 92% 0,rgba(5,70,165,.6),transparent 62%),radial-gradient(520px 300px at 0 100%,rgba(232,32,10,.24),transparent 60%),#03214d!important;color:#cfdbf2!important;box-shadow:0 30px 60px -36px rgba(3,33,77,.7)!important}
.pssc-crm .dash-hero :is(h1,h2){color:#fff!important}
.pssc-crm .dash-hero :is(.tag,.kick,small,p){color:#cfdbf2!important}
.pssc-crm .hub-sec{--tint:var(--cn-blue)}
.pssc-crm .hub-sec-h h2{font-size:1.15rem!important}
.pssc-crm .qa{border-radius:14px!important;transition:background-color .2s,transform .2s!important}
.pssc-crm .qa:hover{background:color-mix(in srgb,var(--sec,var(--cn-blue)) 7%,#fff)!important;transform:translateX(2px)}
.pssc-crm .qa .n,.pssc-crm .grp-n{background:var(--cn-red)!important;color:#fff!important}

/* ---------- phones ---------- */
@media (max-width:900px){
.pssc-crm .m-side{border-radius:0 24px 24px 0!important}
.pssc-crm .m-topbar{border-radius:0 0 16px 16px!important}
}

.pssc-crm .stat-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))!important;gap:14px!important}

.pssc-crm .cn-today .dash-top{display:flex;align-items:center;justify-content:space-between;gap:24px}
.pssc-crm .cn-today .eyebrow{color:#ff8a7a!important;font:700 11px/1 var(--cn-ui)!important;letter-spacing:.14em!important;text-transform:uppercase}
.pssc-crm .cn-today h1{font-size:clamp(1.9rem,3vw,2.6rem)!important;margin:8px 0 8px!important}
.pssc-crm .cn-today .sub{max-width:52ch;font-size:1rem!important;line-height:1.55}
.pssc-crm .cn-today .sub b{color:#fff}
.pssc-crm .cn-role{margin:14px 0 0!important}
.pssc-crm .dash-hero.cn-today .cn-role span{display:inline-block;padding:5px 12px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:#fff!important;font:700 12px/1 var(--cn-ui);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.pssc-crm .cn-crest{width:104px;height:auto;flex:none;filter:drop-shadow(0 18px 30px rgba(0,0,0,.45));animation:cn-float 7s ease-in-out infinite}
@keyframes cn-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@media (max-width:700px){.pssc-crm .cn-crest{display:none}}
@media (prefers-reduced-motion:reduce){.pssc-crm .cn-crest{animation:none}}

/* 2026-10-26: who looks after a section, named in the Control room */
html body.pssc-crm .hub-own{display:inline-flex;align-items:center;gap:8px;margin:8px 0 0;padding:3px 10px 3px 3px;border-radius:999px;background:color-mix(in srgb,var(--tint,#0546a5) 10%,#fff);color:color-mix(in srgb,var(--tint,#0546a5) 80%,#03214d);font-size:.76rem;font-weight:700}
html body.pssc-crm .hub-own-av{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--tint,#0546a5);color:#fff;font-size:.64rem;font-weight:800}
/* 2026-10-26: headings on dark bands stay white (the navy heading rule above
   was turning "Good evening" navy on the dark welcome band) */
html body.pssc-crm .px-hero{background:radial-gradient(120% 140% at 100% 0%,rgba(232,32,10,.22),transparent 55%),linear-gradient(135deg,#03214d 0%,#0a3570 100%)}
html body.pssc-crm :is(.px-hero,.dash-hero,.cn-today,.th-on-dark) :is(h1,h2,h3){color:#fff}
html body.pssc-crm .px-hero .px-e{color:#b9c8e6}
html body.pssc-crm .px-hero .px-lede{color:#dbe5f5}html body.pssc-crm .px-hero{margin-top:20px;border-radius:24px;overflow:hidden}
/* 2026-10-26: full names on the attendance sheet, never cut off */
html body.pssc-crm .tk-list{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))!important}
html body.pssc-crm .tk-row{align-items:center;height:auto;min-height:44px}
html body.pssc-crm .tk-nm{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:anywhere;line-height:1.25;text-transform:capitalize}
/* the small group labels in the rail were too faint to read */
html body.pssc-crm .m-side-lbl{color:#5f6e8a!important}

/* 2026-10-28: committee tools without the explaining - title, numbers and actions only */
body.pssc-crm .m-col p.lede,
body.pssc-crm .dash-hero p.sub,
body.pssc-crm .dash-hero p.eyebrow{display:none}

/* 2026-10-28: the Today hub shows tool names only - the menu says the rest */
body.pssc-crm .hub-sec-h p,
body.pssc-crm .hub-sec .qa small{display:none}

/* 2026-10-28: layout pass - boxes sized to what goes in them, wide tables scroll */
body.pssc-crm .m-col input[type=number],
body.pssc-crm .m-col input[type=date],
body.pssc-crm .m-col input[type=time]{max-width:220px}
body.pssc-crm .m-col select{max-width:460px}
body.pssc-crm .m-col input[type=text]:not([name=q]),
body.pssc-crm .m-col input[type=email],
body.pssc-crm .m-col input[type=tel],
body.pssc-crm .m-col input[type=url]{max-width:560px}
body.pssc-crm .eq-bar-row > label.eq-f{flex:0 1 260px}
body.pssc-crm details.eq-more{flex:0 0 auto;align-self:flex-end;padding:0 0 10px}
body.pssc-crm details.eq-more[open]{flex:1 1 100%}
body.pssc-crm .cr-board,
body.pssc-crm .lg-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
body.pssc-crm .owe-acct + .table-scroll,
body.pssc-crm .m-col p.muted + form.form-card{margin-top:14px}

/* 2026-10-28: no "Be part of it - join the club" band inside the members' area */
body.pssc-crm .site-footer .sf-cta{display:none}

/* 2026-10-28: the "Who came" boxes - bigger, easier to tick, email under each name */
html body.pssc-crm .tk-list{grid-template-columns:repeat(auto-fill,minmax(300px,1fr)) !important;gap:10px !important;max-height:620px !important}
html body.pssc-crm .tk-row{min-height:64px;padding:12px 14px !important;gap:12px !important;border-radius:12px !important}
html body.pssc-crm .tk-row input{width:22px !important;height:22px !important}
html body.pssc-crm .tk-nm{font-size:1rem;font-weight:600}
html body.pssc-crm .tk-nm small{text-transform:none;font-size:.78rem !important;margin-top:2px}

/* ---------------------------------------------------------------------
   2026-10-29: one look for every committee tool.
   --------------------------------------------------------------------- */
/* the tool search sits beside the tabs, not on a row of its own */
@media (min-width:900px){
.pssc-crm .ctabs{grid-template-columns:minmax(0,1fr) auto;column-gap:14px;align-items:center}
.pssc-crm .ctabs>.ctabs-tools{grid-column:1;grid-row:1;min-width:0}
.pssc-crm .ctabs>.ctabs-find{grid-column:2;grid-row:1;width:auto!important;justify-self:end;white-space:nowrap}
}
/* a strip with only one tab says nothing the page title does not */
.pssc-crm .ctabs-tools:not(:has(.ctab+.ctab)){display:none!important}
/* the big banner belongs to the dashboard; on a tool it is a slim header */
.pssc-crm .m-col>.ctabs~.dash-hero{min-height:0!important;padding:14px 18px!important;margin:0 0 16px!important;background:#fff!important;background-image:none!important;color:var(--cn-ink)!important;border:1px solid var(--cn-line)!important;border-radius:16px!important;box-shadow:var(--cn-shadow)!important;display:flex!important;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;overflow:visible!important}
.pssc-crm .m-col>.ctabs~.dash-hero::before,.pssc-crm .m-col>.ctabs~.dash-hero::after{display:none!important}
.pssc-crm .m-col>.ctabs~.dash-hero .dash-top{margin:0!important;padding:0!important}
.pssc-crm .m-col>.ctabs~.dash-hero .eyebrow,.pssc-crm .m-col>.ctabs~.dash-hero .sub{display:none!important}
.pssc-crm .m-col>.ctabs~.dash-hero h1{font:700 20px/1.2 var(--cn-display)!important;color:var(--cn-navy)!important;margin:0!important;letter-spacing:0!important;text-shadow:none!important}
.pssc-crm .m-col>.ctabs~.dash-hero .hero-actions{display:flex;flex-wrap:wrap;gap:8px;margin:0!important}
.pssc-crm .m-col>.ctabs~.dash-hero .hero-actions a{background:var(--cn-navy)!important;color:#fff!important;border:1px solid var(--cn-navy)!important;border-radius:999px!important;padding:8px 14px!important;font:700 13px/1.1 var(--cn-ui)!important;box-shadow:none!important;text-decoration:none!important;backdrop-filter:none!important}
.pssc-crm .m-col>.ctabs~.dash-hero .hero-actions a.ghost{background:#fff!important;color:var(--cn-navy)!important;border-color:#cfdaee!important}
.pssc-crm .m-col>.ctabs~.dash-hero .hero-actions a:hover{filter:brightness(.96)}
/* one size for each level of heading */
.pssc-crm .m-col h1:not(.dash-hero h1):not(.m-topbar h1){font:700 24px/1.2 var(--cn-display)!important;letter-spacing:-.005em!important}
.pssc-crm .m-col h2:not(.dash-hero h2){font-size:18px!important;line-height:1.3!important}
.pssc-crm .m-col h3:not(.dash-hero h3){font-size:16px!important;line-height:1.35!important}
/* form fields fill their column the same way on every page */
.pssc-crm .form-grid .field>input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=color]),.pssc-crm .form-grid .field>select,.pssc-crm .form-grid .field>textarea{width:100%!important;max-width:none!important;box-sizing:border-box}
@media (min-width:700px){
.pssc-crm .form-grid>.cta,.pssc-crm .form-grid>button[type=submit],.pssc-crm .form-grid>.full>.cta,.pssc-crm .form-grid>.field.full>button[type=submit]{justify-self:start;width:auto!important;min-width:200px;max-width:max-content}
}
/* every table head reads the same */
.pssc-crm .m-col table:not(.mtable):not(.lg-table)>thead th,.pssc-crm .m-col table:not(.mtable):not(.lg-table)>tbody>tr:first-child>th{font:700 11px/1.3 var(--cn-ui)!important;letter-spacing:.07em;text-transform:uppercase;color:var(--cn-mut)!important;text-align:left}
/* wide boards scroll inside their card rather than off the page */
.pssc-crm .cr-board{overflow-x:auto}

/* the page always opens with its title bar, then its tabs, then its header */
.pssc-crm .m-col>.m-topbar{order:-10!important}
.pssc-crm .m-col>.m-head{order:-10!important}
.pssc-crm .m-col>.ctabs{order:-9!important}
.pssc-crm .m-col>.ctabs~.dash-hero{order:-8!important}
/* with a single tool in the section, the sidebar already says where you are */
@media (min-width:900px){.pssc-crm .ctabs:not(:has(.ctab+.ctab)){display:none!important}}
@media (min-width:700px){.pssc-crm .form-grid .field>button[type=submit],.pssc-crm .form-grid .field>.cta{align-self:flex-start;width:auto!important;min-width:160px;max-width:max-content}}
/* phones: the tool search lives in the menu; the Checked button sits under its row */
@media (max-width:899px){.pssc-crm .ctabs>.ctabs-find{display:none!important}}
@media (max-width:640px){
.pssc-crm .todo-item .todo-row{padding-right:14px!important;padding-bottom:12px!important}
.pssc-crm .todo-item .todo-ack{position:static!important;transform:none!important;display:flex;justify-content:flex-end;margin:-4px 10px 10px!important}
}
/* phones: number tiles two to a row, like the rest */
@media (max-width:640px){.pssc-crm .m-col .stat-grid,.pssc-crm .m-col .lg-tiles{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.pssc-crm .m-col .stat-grid>*,.pssc-crm .m-col .lg-tiles>*{min-width:0}}
/* Website enquiries keeps its title bar like every other tool */
@media (min-width:1001px){.pssc-crm .m-col:has(> form.eq-bar) > .m-topbar{display:flex!important}}
/* the switch between your own space and the committee tools */
.pssc-crm .m-mode{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin:0 6px 10px;padding:4px;background:rgba(3,33,77,.06);border-radius:13px}
.pssc-crm .m-mode a{position:relative;display:flex;align-items:center;justify-content:center;gap:6px;padding:9px 6px;border-radius:10px;font:700 12.5px/1 var(--cn-ui);color:var(--cn-mut)!important;text-decoration:none!important;transition:background .15s,color .15s}
.pssc-crm .m-mode a svg{width:15px;height:15px;flex:none}
.pssc-crm .m-mode a:hover{color:var(--cn-navy)!important;background:rgba(255,255,255,.6)}
.pssc-crm .m-mode a.on{background:#fff;color:var(--cn-navy)!important;box-shadow:0 1px 2px rgba(3,33,77,.12),0 4px 10px -6px rgba(3,33,77,.3)}
.pssc-crm .m-mode .n{min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--cn-red);color:#fff;font:800 10.5px/18px var(--cn-ui);font-style:normal;text-align:center}
.pssc-crm .m-mode a{white-space:nowrap;padding:8px 4px;gap:5px;font-size:12px;min-width:0}.pssc-crm .m-mode a span{overflow:hidden;text-overflow:ellipsis}.pssc-crm .m-mode a svg{width:14px;height:14px}
.pssc-crm .m-mode .n{position:absolute;top:-6px;right:-4px;box-shadow:0 0 0 2px #fff}
.pssc-crm .m-mode a svg{display:none}.pssc-crm .m-mode .n{top:-8px;right:-6px}
.pssc-crm .m-col [id]{scroll-margin-top:84px}

/* =====================================================================
   2026-11-02: committee tools polish, on every committee page.
   Readable text, easy tapping on a phone, landing on the exact section a
   link points to, attention on whatever is waiting, and a row of section
   chips on long pages. The script half lives at the end of members/crm.js.
   ===================================================================== */
.pssc-crm main :is(small,.small,.chip,.pill,.mstat,.cr-role,.idc){font-size:12px}
.pssc-crm main [id],.pssc-crm main .section-head{scroll-margin-top:118px}
@media (max-width:760px){
  .pssc-crm main :is(button,.cta,input[type=submit],select,input[type=text],input[type=email],input[type=number],input[type=date],input[type=time],input[type=search],input[type=tel],input[type=url]){min-height:42px}
  .pssc-crm main .cta.sm,.pssc-crm main button.sm{min-height:38px}
  .pssc-crm main label:has(> input[type=checkbox]),.pssc-crm main label:has(> input[type=radio]){min-height:40px;display:flex;align-items:center;gap:10px}
}
/* landing on a section */
@keyframes psscLand{0%{box-shadow:0 0 0 0 rgba(37,99,235,0)}12%{box-shadow:0 0 0 4px rgba(37,99,235,.38)}100%{box-shadow:0 0 0 0 rgba(37,99,235,0)}}
.pssc-landed{animation:psscLand 2.4s ease-out 1;border-radius:14px}
/* attention: a tool with something waiting */
html body.pssc-crm .ctabs-tools a.ctab:has(.ctab-n),html body.pssc-crm nav.ctabs:not(.is-stuck) .ctabs-tools > a.ctab:has(.ctab-n){box-shadow:0 0 0 2px #f59e0b,0 12px 28px -18px rgba(245,158,11,.8)!important}
html body.pssc-crm .ctabs-tools a.ctab:has(.ctab-n):hover,html body.pssc-crm nav.ctabs:not(.is-stuck) .ctabs-tools > a.ctab:has(.ctab-n):hover{box-shadow:0 0 0 2px #d97706,0 16px 32px -16px rgba(217,119,6,.75)!important}
/* headline tiles on Today are links */
a.stat{display:block;text-decoration:none;color:inherit;transition:transform .15s ease,box-shadow .15s ease}
a.stat:hover,a.stat:focus-visible{transform:translateY(-2px);box-shadow:0 14px 30px -18px rgba(13,35,80,.6);outline:none}
a.stat:focus-visible{box-shadow:0 0 0 3px rgba(37,99,235,.45)}
/* section chips on long pages */
.pssc-otp{position:sticky;top:58px;z-index:20;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin:0 0 14px;padding:8px 2px 10px;background:linear-gradient(#f2f5fb 72%,rgba(242,245,251,0))}
.pssc-otp::-webkit-scrollbar{display:none}
.pssc-otp a{flex:none;display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:#1e3a8a;background:#fff;border:1px solid #dbe4f3;border-radius:999px;padding:7px 13px;text-decoration:none;white-space:nowrap;transition:background .15s,color .15s,border-color .15s}
.pssc-otp a:hover{background:#eef4ff;border-color:#c7d7fe}
.pssc-otp a.on{background:#0d2350;color:#fff;border-color:#0d2350}
.pssc-otp a i{width:7px;height:7px;border-radius:50%;background:#f59e0b;box-shadow:0 0 0 3px rgba(245,158,11,.2)}
/* back to top */
.pssc-top{position:fixed;right:18px;bottom:18px;z-index:40;width:46px;height:46px;border-radius:50%;border:0;background:#0d2350;color:#fff;box-shadow:0 12px 26px -12px rgba(13,35,80,.65);display:grid;place-items:center;opacity:0;pointer-events:none;transform:translateY(10px);transition:opacity .2s,transform .2s;cursor:pointer}
.pssc-top.on{opacity:1;pointer-events:auto;transform:none}
.pssc-top svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
@media (prefers-reduced-motion:reduce){.pssc-landed{animation:none;box-shadow:0 0 0 3px rgba(37,99,235,.35)}a.stat,.pssc-top{transition:none}}
@media print{.pssc-otp,.pssc-top{display:none!important}}

/* 2026-11-02: the "are you sure" dialog for one-click actions */
.pssc-sure{position:fixed;inset:0;z-index:1000;display:none;align-items:center;justify-content:center;padding:16px;background:rgba(15,23,42,.45);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}
.pssc-sure.on{display:flex}
.pssc-sure-box{width:100%;max-width:430px;background:#fff;border-radius:18px;padding:22px 22px 18px;box-shadow:0 30px 60px -20px rgba(15,23,42,.45);animation:psscPop .16s ease-out}
.pssc-sure-box h3{margin:0 0 8px;font-size:1.12rem;line-height:1.35;color:#0f172a}
.pssc-sure-box .d{margin:0 0 18px;color:#475569;font-size:.93rem;line-height:1.5;white-space:pre-line}
.pssc-sure-act{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}
.pssc-sure-act .cta{min-height:42px}
@keyframes psscPop{from{transform:translateY(6px) scale(.97);opacity:0}to{transform:none;opacity:1}}
@media (prefers-reduced-motion:reduce){.pssc-sure-box{animation:none}}