:root{--ink-900: #0f1824;--ink-700: #2d3a4b;--ink-500: #55657b;--ink-400: #73839a;--surface-0: #f4f8fb;--surface-1: #ffffff;--surface-2: #e9f0f6;--surface-3: #f8fbfe;--line: #d2dde8;--line-strong: #bfcedd;--brand: #0c8a7a;--brand-dark: #066659;--accent: #f4b942;--success: #0f7a3f;--success-soft: #eefaf3;--success-line: #b9e3c7;--danger: #bb1f2a;--danger-soft: #fff1f3;--danger-line: #efc0c6;--info-soft: #eff6fb;--info-line: #c6dceb;--shadow: 0 18px 40px rgba(10, 28, 44, .14);--shadow-soft: 0 10px 24px rgba(10, 28, 44, .08)}*{box-sizing:border-box}body{margin:0;color:var(--ink-900);font-family:Public Sans,Segoe UI,sans-serif;background:radial-gradient(1000px 600px at 10% -10%,#d9f8f2 0%,transparent 70%),radial-gradient(900px 500px at 90% -20%,#ffeecf 0%,transparent 70%),var(--surface-0)}a{color:inherit;text-decoration:none}h1,h2,h3{margin:0;font-family:Sora,Public Sans,sans-serif}p{color:var(--ink-700);line-height:1.45}small{color:var(--ink-500)}.auth-shell{min-height:100vh;display:grid;grid-template-columns:1.2fr 1fr;gap:1rem;padding:2rem}.auth-shell--single{grid-template-columns:minmax(0,760px);justify-content:center;align-content:start}.auth-hero{padding:2.5rem;border-radius:24px;background:linear-gradient(135deg,#0c8a7ae0,#066659e0),url(/assets/canoeing-is-for-everyone-960-250-80-c-Cgf2vaym.jpg) center/cover;color:#f8fffd;box-shadow:var(--shadow)}.auth-hero p{color:#ecfff9;max-width:60ch}.auth-card{border-radius:24px;background:var(--surface-1);box-shadow:var(--shadow);padding:2rem;display:grid;align-content:start;gap:1rem}.auth-card--wide{width:100%}.auth-logo{width:96px;height:auto;display:block;justify-self:start}.signup-card{grid-column:span 2}.plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem}.plan-card{border:1px solid var(--line);border-radius:14px;padding:1rem;background:linear-gradient(180deg,#fff,#f8fbff)}.plan-card .price{font-weight:700;color:var(--brand-dark)}.form{display:grid;gap:.8rem}label{display:grid;gap:.35rem;font-size:.92rem;color:var(--ink-700)}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:.65rem .75rem;font:inherit;color:var(--ink-900);background:var(--surface-1);transition:border-color .14s ease,box-shadow .14s ease,background-color .14s ease}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:var(--ink-400)}input:focus,select:focus,textarea:focus{outline:none;border-color:#0c8a7a7a;box-shadow:0 0 0 3px #0c8a7a24}button,.primary-btn{border:0;background:linear-gradient(135deg,var(--brand),var(--brand-dark));color:#fff;padding:.7rem .95rem;border-radius:10px;cursor:pointer;font-weight:700;font-family:Sora,sans-serif;display:inline-flex;justify-content:center;align-items:center;gap:.35rem;min-height:40px;transition:transform .14s ease,box-shadow .14s ease,filter .14s ease,background-color .14s ease;box-shadow:0 8px 18px #0666592e}button:hover:not(:disabled),.primary-btn:hover:not(:disabled){filter:saturate(1.04);transform:translateY(-1px)}button:disabled,.primary-btn:disabled{opacity:.68;cursor:not-allowed;transform:none;box-shadow:none}button:focus-visible,.primary-btn:focus-visible,a:focus-visible{outline:3px solid rgba(12,138,122,.2);outline-offset:2px}.ghost-btn{background:var(--surface-1);color:var(--ink-900);border:1px solid var(--line);box-shadow:none}.ghost-btn:hover:not(:disabled){background:var(--surface-3);border-color:var(--line-strong);filter:none}.auth-links{display:flex;justify-content:space-between;gap:.8rem;font-size:.92rem;color:var(--ink-500)}.auth-links span{text-align:right}.auth-links--single{justify-content:flex-start;align-items:flex-start;flex-direction:column;flex-wrap:nowrap}.auth-links--login{align-items:center}.auth-help-text{margin:0;color:var(--ink-700);font-size:.92rem}.auth-action-btn{min-width:190px;min-height:42px}.auth-action-btn--fixed{width:220px;max-width:220px;justify-self:center}.signup-password-feedback{margin:.3rem 0 0}.portal-shell{min-height:100vh;padding:0}.portal-header{display:grid;grid-template-columns:170px 1fr;gap:0}.brand-mark{background:var(--surface-1);border-radius:0;width:170px;height:170px;padding:.8rem;display:grid;place-items:center;box-shadow:var(--shadow)}.brand-mark p{margin:0;font-size:.85rem}.brand-mark__logo{width:148px;height:auto;display:block}.hero-strip{border-radius:0;padding:1.25rem 1.5rem;min-height:170px;background-color:#0f2a3f;background-position:center;background-size:cover;background-repeat:no-repeat;display:grid;align-content:end;color:#fff;box-shadow:var(--shadow)}.hero-strip p{margin:0;color:#dbe8f3}.portal-body{margin-top:.95rem;padding:0 1.1rem 1.1rem;display:grid;grid-template-columns:230px minmax(0,1fr);gap:.95rem}.sidebar{background:var(--surface-1);border-radius:14px;padding:.35rem .7rem;box-shadow:var(--shadow);display:grid;align-content:start;gap:.22rem}.side-group{display:grid;gap:.14rem}.side-group-toggle{border:0;width:100%;background:transparent;color:var(--ink-700);border-radius:8px;font:inherit;font-weight:700;font-size:.92rem;display:flex;align-items:center;justify-content:space-between;padding:.4rem .5rem;cursor:pointer}.side-group-toggle.active,.side-group-toggle:hover{background:var(--surface-2);color:var(--ink-900)}.side-group-caret{transform:rotate(0);transition:transform .18s ease}.side-group-caret.open{transform:rotate(90deg)}.side-group-links{display:grid;gap:.16rem}.side-link{padding:.4rem .5rem;border-radius:8px;color:var(--ink-700);font-weight:600;font-size:.92rem}.side-link--nested{margin-left:.72rem;font-size:.88rem}.side-link.active,.side-link:hover{background:var(--surface-2);color:var(--ink-900)}.logout-link-btn{border:0;width:100%;display:block;text-align:left;background:transparent;font:inherit;justify-content:flex-start;cursor:pointer}.content{background:var(--surface-1);border-radius:14px;padding:1.2rem;box-shadow:var(--shadow);min-width:0;overflow:hidden;display:grid;gap:1rem}.page-head{display:flex;align-items:start;justify-content:space-between;gap:1rem;padding-bottom:1rem;border-bottom:1px solid #e8eff6}.page-head h1{font-size:clamp(1.4rem,2.4vw,2rem);letter-spacing:-.02em}.page-head p{margin:.4rem 0 0;max-width:64ch;color:var(--ink-500)}.page-title-row{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}.page-title-actions{display:flex;align-items:center;gap:.45rem}.page-actions{display:flex;gap:.45rem;flex-wrap:wrap;justify-content:flex-end}.page-stack{display:grid;gap:1rem}.page-section{display:grid;gap:.85rem;padding:1rem 1.05rem;border:1px solid var(--line);border-radius:14px;background:linear-gradient(180deg,#fff,#fbfdff);box-shadow:var(--shadow-soft)}.page-section--compact{padding:.8rem .9rem}.page-section--flush{padding:0;overflow:hidden}.page-section__header{display:flex;align-items:start;justify-content:space-between;gap:.9rem}.page-section__header h2,.page-section__header h3{margin:0}.page-section__header p{margin:.25rem 0 0;color:var(--ink-500);font-size:.92rem}.page-section__meta{margin:0;color:var(--ink-500);font-size:.88rem;font-weight:600}.page-state{display:grid;place-items:start;gap:.35rem;padding:1rem 1.05rem;border:1px dashed var(--line-strong);border-radius:14px;background:var(--surface-3);color:var(--ink-700)}.page-state p,.page-state h2,.page-state h3{margin:0}.page-state--error{border-style:solid;border-color:var(--danger-line);background:var(--danger-soft)}.page-state--success{border-style:solid;border-color:var(--success-line);background:var(--success-soft)}.page-banner,.ccm-notice,.error{margin:0;border:1px solid transparent;border-radius:12px;padding:.75rem .9rem;font-weight:600;box-shadow:inset 0 1px #ffffff73}.page-banner{color:var(--ink-700);background:var(--info-soft);border-color:var(--info-line)}.ccm-notice{color:var(--success);background:var(--success-soft);border-color:var(--success-line)}.error{color:var(--danger);background:var(--danger-soft);border-color:var(--danger-line)}.pill{border-radius:999px;padding:.45rem .75rem;background:#182838;color:#fff;font-size:.86rem}.stat-grid,.cards-grid,.field-grid{display:grid;gap:.8rem}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-grid article,.callout,.mini-card,.course-card{border:1px solid var(--line);border-radius:12px;padding:.9rem;background:linear-gradient(180deg,#fff,#f8fbff)}.table-wrap{overflow-x:auto;overflow-y:auto;max-height:62vh;border:1px solid var(--line);border-radius:12px;background:var(--surface-1);box-shadow:var(--shadow-soft)}.table-wrap--no-scroll{max-height:none;overflow-y:visible}.renewal-options-wrap{overflow-x:auto}.renewal-options-table{min-width:0;width:100%}.renewal-options-table th,.renewal-options-table td{padding:.45rem .58rem}.renewal-options-table td:first-child,.renewal-options-table th:first-child{width:64px;text-align:center}.account-renew-grid{gap:.65rem;max-width:980px}.compact-panel{border:1px solid var(--line);border-radius:14px;background:linear-gradient(180deg,#fff,#fbfdff);padding:.8rem .9rem;box-shadow:var(--shadow-soft)}.compact-panel h3{margin:0 0 .45rem;font-size:.98rem}.compact-panel.payment-methods{padding:.55rem .65rem;gap:.35rem}.compact-panel.payment-methods label{grid-template-columns:auto 1fr;align-items:center;gap:.45rem}.compact-panel.payment-methods input[type=radio]{width:auto;margin:0}.compact-inline-field{margin-top:.2rem}.legal-signoff-stack{gap:.8rem}.legal-panel{gap:.7rem}.legal-panel__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.5rem}.legal-panel__body{display:grid;gap:.75rem}.legal-copy-list{margin:0;padding-left:1.2rem;display:grid;gap:.45rem;color:var(--ink-700)}.legal-checkbox{display:grid;grid-template-columns:auto 1fr;gap:.7rem;align-items:start;padding:.9rem;border:1px solid var(--line);border-radius:12px;background:#f8fbfd}.legal-checkbox--emphasis{border-color:#d6842f;background:#fff7eb}.legal-checkbox input[type=checkbox]{width:1.15rem;height:1.15rem;margin-top:.15rem}.legal-checkbox span{color:var(--ink-800);font-weight:600;line-height:1.45}.legal-waiver-notice{border:2px solid #d6842f;border-radius:14px;background:#fff5de;padding:.95rem 1rem}.activity-panel{display:grid;gap:.7rem;margin-top:.95rem}.activity-tabs{margin-top:.95rem}.activity-panel__header{display:flex;justify-content:space-between;align-items:end;gap:.8rem}.activity-panel__header h3{margin:0}.activity-panel__header p{margin:.15rem 0 0;color:var(--ink-500);font-size:.92rem}.activity-filter{display:grid;gap:.25rem;min-width:min(100%,18rem)}.activity-filter span{font-size:.82rem;font-weight:700;color:var(--ink-700)}.activity-filter input{width:100%}.activity-load-more{display:flex;justify-content:flex-end}.inline-checkbox-option{display:inline-flex;align-items:center;gap:.45rem}.inline-checkbox-option input[type=checkbox]{width:auto;margin:0;flex:0 0 auto}.checkbox-option-list{display:flex;flex-direction:column;gap:.35rem;padding:.35rem 0}.training-log-editor{margin-top:1rem;gap:.75rem}.training-log-editor__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.training-log-editor__header h3{margin:0}.training-log-grid{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:.75rem}.training-log-legacy-note{padding:.55rem .7rem;border:1px solid var(--line);border-radius:10px;background:#f7fafc}.training-log-instructors{display:grid;gap:.55rem}.training-log-instructors-table th,.training-log-instructors-table td{vertical-align:top}.executive-role-card{display:grid;gap:.85rem}.executive-role-card__header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.executive-role-card__header h3{margin:0 0 .2rem}.executive-role-card__header p{margin:0}.executive-role-card__current{display:grid;gap:.2rem;min-width:180px;text-align:right}.executive-role-card__editor{display:grid;grid-template-columns:minmax(240px,1.5fr) minmax(280px,2fr) minmax(150px,1fr) auto;gap:.75rem;align-items:end}.executive-admin-table{min-width:0}.executive-admin-wrap{max-width:920px}.executive-admin-table th,.executive-admin-table td{vertical-align:top;padding:.38rem .48rem}.executive-admin-table__editor-row td{background:#fbfdff;padding:.45rem .55rem}.executive-inline-editor{display:grid;grid-template-columns:minmax(280px,2fr) minmax(150px,1fr) auto;gap:.55rem;align-items:end}.executive-match-list{grid-column:1 / -1;border:1px solid var(--line);border-radius:10px;background:#fff;max-height:214px;overflow-y:auto}.executive-match-row{width:100%;display:grid;grid-template-columns:72px 1fr 1fr 1.4fr;gap:.45rem;align-items:center;text-align:left;border:0;border-bottom:1px solid #e6eef7;border-radius:0;background:transparent;padding:.34rem .5rem;color:inherit}.executive-match-row:last-child{border-bottom:0}.executive-match-row:hover,.executive-match-row.selected{background:#eef6ff}.executive-match-list__empty{padding:.6rem .7rem;color:var(--ink-500)}.executive-inline-editor__selection{grid-column:1 / -1;font-size:.88rem;color:var(--ink-500)}.compact-action-button{padding:.36rem .62rem;min-height:0;font-size:.88rem;line-height:1.15}.field-grid--email{grid-template-columns:minmax(260px,1fr) minmax(320px,2fr)}.rte-toolbar{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:.6rem}.rte-toolbar__button{min-width:84px}.rich-text-editor{min-height:220px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:.8rem;line-height:1.45}.rich-text-editor:focus{outline:2px solid rgba(44,123,229,.2);outline-offset:0;border-color:#2c7be5}.email-editor .ql-toolbar.ql-snow,.email-editor .ql-container.ql-snow{border-color:var(--line)}.email-editor .ql-toolbar.ql-snow{border-radius:12px 12px 0 0;background:#fbfdff}.email-editor .ql-container.ql-snow{border-radius:0 0 12px 12px;background:#fff}.email-editor .ql-editor{min-height:220px;font-family:inherit;font-size:1rem;line-height:1.45}.email-compose-form{gap:.85rem}.email-compose-form--narrow{max-width:56rem}.email-inline-row{display:grid;grid-template-columns:5.5rem minmax(0,1fr);align-items:center;gap:.7rem}.email-inline-content{min-width:0}.email-nested-block{display:grid;gap:.55rem;padding-left:1.15rem}.email-inline-row--top{align-items:start}.email-inline-row--nested{grid-template-columns:6.5rem minmax(0,1fr)}.email-inline-label{font-weight:600;color:var(--ink-700)}.email-member-search-results{border:1px solid var(--line);border-radius:12px;max-height:16.5rem;overflow-y:auto;background:#fff}.email-member-search-row{width:100%;display:grid;grid-template-columns:5rem 1fr 1fr 1.5fr;gap:.7rem;padding:.55rem .7rem;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink-700);text-align:left;cursor:pointer}.email-member-search-row:last-child{border-bottom:0}.email-member-search-row:hover{background:#eef6ff}.email-member-search-empty,.email-recipient-empty{padding:.7rem;color:var(--ink-500)}.email-to-field{display:grid;min-width:0;border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}.email-manual-recipient-entry{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.6rem;align-items:center;padding:.55rem .7rem;border-bottom:1px solid var(--line)}.email-manual-recipient-entry input{border:0;padding:0;min-height:2rem;box-shadow:none}.email-manual-recipient-entry input:focus{outline:none}.email-recipient-list{max-height:18rem;overflow-y:auto}.email-recipient-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.55rem .7rem;border-bottom:1px solid var(--line)}.email-recipient-row:last-child{border-bottom:0}.email-editor-wrap{min-width:0}.cert-endorsement-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.25rem 1.25rem;padding-left:.9rem}.cert-endorsement-column{display:grid;gap:.12rem}.cert-endorsement-option{font-size:.88rem;line-height:1.25}.cert-edit-section{display:grid;gap:.4rem}.cert-edit-section h4{margin:0;font-size:1rem;font-family:Sora,Public Sans,sans-serif}.cert-form-row{gap:.75rem}.cert-form-row--2{grid-template-columns:repeat(2,minmax(0,1fr))}.cert-form-row--3{grid-template-columns:1.15fr .85fr .9fr}.cert-rule-add-row{display:grid;grid-template-columns:minmax(0,1fr);gap:.45rem;align-items:center;margin:.3rem 0 .45rem}.cert-rule-add-action{display:flex;justify-content:flex-end;margin-top:.35rem}.cert-rule-table-wrap{border:1px solid var(--line);border-radius:10px;overflow:hidden;max-width:880px}.cert-rule-table{min-width:0}.cert-rule-table th,.cert-rule-table td{padding:.42rem .5rem;font-size:.88rem;vertical-align:middle}.cert-rule-table th{color:var(--ink-500);font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.02em}.cert-rule-table th:first-child,.cert-rule-table td:first-child{width:auto}.cert-rule-table th:nth-child(2),.cert-rule-table td:nth-child(2){width:118px}.cert-rule-table th:nth-child(3),.cert-rule-table td:nth-child(3){width:108px}.cert-rule-table th:last-child,.cert-rule-table td:last-child{width:102px}.cert-rule-table th:nth-child(2),.cert-rule-table th:nth-child(3),.cert-rule-table td:nth-child(2),.cert-rule-table td:nth-child(3),.cert-rule-table th:last-child,.cert-rule-table td:last-child{padding-left:.3rem;padding-right:.3rem}.cert-rule-name{font-size:.88rem;line-height:1.25}.cert-rule-logic,.cert-rule-years{min-width:0}.cert-rule-remove{padding:.5rem .65rem}.cert-rule-add-table-row td{background:#fbfdff}.payment-history-heading{margin-top:1rem}table{width:100%;border-collapse:collapse;min-width:740px}.courses-date-col{white-space:nowrap;min-width:90px}.courses-course-col{min-width:120px}.courses-location-col{min-width:100px}.courses-desc-col{white-space:normal;word-break:break-word;min-width:180px}.courses-cost-col{white-space:nowrap;min-width:70px}.courses-instructor-col{min-width:100px}.courses-contact-col{white-space:normal;min-width:120px}.course-contact-cell{display:grid;gap:.2rem}.directory-cert-lines{display:grid;gap:.15rem;white-space:normal}.directory-count{margin:0;font-size:.9rem;color:var(--ink-500);font-weight:600}.directory-cert-panel{display:grid;gap:.55rem}.directory-cert-toggle{width:100%;border:1px solid var(--line);background:linear-gradient(180deg,#fff,#f8fbfe);color:var(--ink-900);border-radius:12px;padding:.72rem .85rem;display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow-soft)}.directory-cert-filter{border:1px solid var(--line);border-radius:12px;padding:.85rem .9rem;margin:0;background:linear-gradient(180deg,#fff,#fbfdff);box-shadow:var(--shadow-soft)}.directory-cert-checks{margin-top:.35rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.28rem .65rem}.directory-cert-checks--columns{grid-template-columns:repeat(3,minmax(0,1fr));gap:.22rem .65rem}.directory-cert-column{display:grid;gap:.2rem}.courses-filter-panel{display:flex;flex-wrap:wrap;gap:.75rem}.courses-filter-panel__course-filter{flex:1 1 225px;max-width:320px;border:1px solid var(--line);border-radius:12px;padding:.8rem .9rem;background:linear-gradient(180deg,#fff,#fbfdff);box-shadow:var(--shadow-soft)}.courses-filter-panel__course-list{display:flex;flex-direction:column;gap:.1rem;margin-top:.35rem}.courses-filter-panel__location-filter{flex:1 1 420px;max-width:680px;border:1px solid var(--line);border-radius:12px;padding:.8rem .9rem;background:linear-gradient(180deg,#fff,#fbfdff);box-shadow:var(--shadow-soft)}.location-filter__controls{display:flex;flex-direction:column;gap:.5rem}.location-filter__row{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.location-filter__row-label{font-size:.85rem;font-weight:500;color:#475569;white-space:nowrap}.location-filter__city-btn{padding:.35rem .6rem;border:1px solid #cdd8e4;border-radius:6px;background:#f8fafc;color:#334155;font-size:.8rem;cursor:pointer;white-space:nowrap}.location-filter__city-btn:hover{background:#e2e8f0}.location-filter__city-btn--active{background:#3b82f6;border-color:#3b82f6;color:#fff}.location-filter__city-btn--active:hover{background:#2563eb}.location-filter__radio-option{display:flex;align-items:center;gap:.5rem;font-size:.9rem;cursor:pointer}.location-filter__radio-option input[type=radio]{margin:0;flex-shrink:0}.location-filter__radio-label{font-weight:500;white-space:nowrap}.location-filter__radio-value{color:#555}.location-filter__city-input{flex:1;min-width:100px;max-width:140px;padding:.3rem .5rem;border:1px solid #cdd8e4;border-radius:4px;font-size:.85rem}.location-filter__distance-row{display:flex;gap:.5rem;align-items:flex-end;margin-top:.5rem;padding-top:.5rem;border-top:1px solid #e8eef4}.location-filter__field{display:flex;flex-direction:column;gap:.2rem;flex:0 0 auto}.location-filter__field span{font-size:.8rem;font-weight:500}.location-filter__field input{padding:.3rem .5rem;border:1px solid #cdd8e4;border-radius:4px;font-size:.85rem;width:70px}.location-filter__btn{padding:.35rem .7rem;border:1px solid #3b82b8;background:#3b82b8;color:#fff;border-radius:4px;font-size:.8rem;cursor:pointer;white-space:nowrap}.location-filter__btn--small{padding:.25rem .5rem;font-size:.75rem}.location-filter__btn:hover:not(:disabled){background:#2d6a9a}.location-filter__btn:disabled{opacity:.5;cursor:not-allowed}.location-filter__error{color:#c00;font-size:.8rem;margin:.25rem 0 0}.location-filter__status{font-size:.8rem;color:#2d6a9a;margin:.25rem 0 0;font-style:italic}.location-filter__status--inline{margin:0;white-space:nowrap}.location-filter__map-container{width:100%;height:380px;border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-top:.5rem}.location-filter__map{height:100%;width:100%}.location-filter__results-popup{position:absolute;top:100%;left:70px;right:0;z-index:20;background:#fff;border:1px solid #cdd8e4;border-radius:8px;box-shadow:0 6px 16px #00000026;max-height:200px;overflow-y:auto;display:flex;flex-direction:column}.location-filter__result-item{padding:.5rem .65rem;border:none;border-bottom:1px solid #eef2f6;background:transparent;color:var(--ink-900);font-size:.82rem;text-align:left;cursor:pointer;line-height:1.3}.location-filter__result-item:last-child{border-bottom:none}.location-filter__result-item:hover{background:#edf3fa}.location-filter__distance-select{padding:.35rem .5rem;border:1px solid #cdd8e4;border-radius:6px;font-size:.85rem;width:90px}.radio-option{display:flex;align-items:center;gap:.4rem;font-size:.9rem;cursor:pointer}.radio-option input[type=radio]{margin:0}.course-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem}.course-filter-grid label{font-size:.84rem}.course-filter-grid select{min-width:0}.input-with-action{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.4rem;align-items:center}.input-action-btn{min-width:42px;padding:.45rem .55rem;font-size:1rem;line-height:1}th,td{text-align:left;vertical-align:top;padding:.62rem .75rem;border-bottom:1px solid #ebf0f5;font-size:.9rem}th{background:#f6f9fc;color:var(--ink-700);font-weight:700}thead tr:first-child th{position:sticky;top:0;z-index:8}.filter-row th{position:sticky;top:40px;z-index:7;background:#fbfdff;padding:.45rem .55rem}.filter-row input{min-width:120px;padding:.45rem .55rem;border-radius:8px;font-size:.82rem}.filter-row select{min-width:140px;padding:.45rem .55rem;border-radius:8px;font-size:.82rem}.date-range{display:grid;gap:.35rem}.date-popover{position:relative}.date-popover-trigger{width:100%;background:var(--surface-1);color:var(--ink-900);border:1px solid var(--line);border-radius:8px;font-family:Public Sans,Segoe UI,sans-serif;font-size:.82rem;font-weight:500;padding:.45rem .55rem;text-align:left}.date-popover-panel{position:fixed;z-index:1000;display:grid;gap:.5rem;padding:.65rem;border-radius:10px;border:1px solid var(--line);background:var(--surface-1);box-shadow:0 10px 22px #0a1c2c29}.date-popover-panel--up{transform:translateY(calc(-100% - 2px))}.date-popover-panel label{font-size:.8rem}.date-popover-panel input{min-width:0}.date-popover-actions{display:flex;gap:.4rem;justify-content:flex-end}.document-open-link{font-size:.95rem;font-weight:600;line-height:1.5;color:#074a69;text-decoration:underline;text-underline-offset:2px;transition:color .15s ease}.document-open-link:hover,.document-open-link:focus-visible{color:#0a8fc8;outline:none}.action-toolbar{display:flex;flex-wrap:wrap;gap:.75rem;margin:0;padding:.85rem .9rem;border:1px solid var(--line);border-radius:12px;background:linear-gradient(180deg,#fff,#fbfdff);box-shadow:var(--shadow-soft);align-items:end}.action-toolbar .primary-btn{font-size:.84rem;padding:.52rem .75rem}.action-toolbar label{flex:1 1 220px;min-width:180px}.table-sort-btn{border:0;background:transparent;color:inherit;padding:0;margin:0;font:inherit;font-weight:700;font-family:inherit;display:inline-flex;align-items:center;justify-content:flex-start;gap:.32rem;cursor:pointer;width:100%;min-height:0;border-radius:0;box-shadow:none;text-align:left;filter:none}.table-sort-btn:hover:not(:disabled){background:transparent;transform:none;filter:none;box-shadow:none}.table-sort-indicator{color:var(--ink-500);font-size:.74rem;line-height:1}.th-with-filter{vertical-align:top}.th-label{display:block}.th-filter-control{margin-top:.35rem;min-width:0;width:100%;padding:.4rem .52rem;border-radius:8px;font-size:.8rem;font-weight:500}.cert-view-tabs{display:flex;gap:.5rem;margin-bottom:.65rem}.cert-view-tab{border:1px solid var(--line);border-radius:10px;background:var(--surface-1);color:var(--ink-700);font-size:.86rem;font-weight:700;font-family:Public Sans,Segoe UI,sans-serif;padding:.5rem .75rem}.cert-view-tab.active{background:#152536;border-color:#152536;color:#fff}.cert-level-filter{display:flex;align-items:center;gap:.45rem;font-size:.88rem;color:var(--ink-700)}.cert-level-filter select{min-width:170px;max-width:240px}.cert-prereq-groups{display:grid;gap:.2rem}.cert-prereq-group{line-height:1.3}.cert-prereq-op{font-weight:700}.cert-prereq-group a{color:#0a6085;text-decoration:underline}.cert-legend-table{min-width:1180px;table-layout:fixed}.cert-col-code{width:120px;white-space:nowrap}.cert-col-level{width:140px;white-space:nowrap}.cert-col-description{width:240px}.cert-col-eligible{width:132px;white-space:nowrap;font-weight:700}.cert-col-eligible.eligible-yes{color:#0b6a48}.cert-col-eligible.eligible-no{color:#8a2b34}.cert-col-prereq{width:360px}.cert-col-expires{width:120px;white-space:nowrap}.cert-row-highlight td{background:#fff3bf}.cert-filter-row select{min-width:0;width:100%}.stack-form{display:grid;gap:1rem}.form-max-width{max-width:980px}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reports-selection-list{display:grid;gap:.35rem;padding-left:.85rem;max-width:420px}.reports-selection-list__item{display:grid;grid-template-columns:auto 1fr;gap:.55rem;align-items:center;cursor:pointer}.reports-selection-list__item input[type=radio]{margin:0}.reports-selection-list__item--selected .reports-selection-list__label{font-weight:700;color:var(--ink-900)}.reports-selection-list__label{color:var(--ink-700)}.reports-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;align-items:end}.reports-filter-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.reports-filter-grid--checks{grid-template-columns:repeat(2,max-content);align-items:center}.reports-date-range-row{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.reports-inline-date-field{display:grid;grid-template-columns:max-content minmax(180px,1fr);gap:.6rem;align-items:center}.reports-inline-date-field--to{grid-template-columns:max-content minmax(0,1fr)}.reports-inline-date-field span{color:var(--ink-700);font-size:.92rem}.reports-inline-date-field input{width:10.5rem;max-width:100%;justify-self:start}.reports-filter-checkbox{align-self:center}.reports-results-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.reports-results-header .directory-count{margin:0}.reports-checkbox-panel .courses-filter-panel__course-list{max-height:11rem;overflow-y:auto;padding-right:.25rem}.sortable-header{border:0;background:transparent;padding:0;color:inherit;font:inherit;font-weight:700;cursor:pointer;text-align:left}.post-course-form{max-width:1120px}.post-course-grid{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(320px,1fr) minmax(280px,.85fr);gap:1rem}.post-course-grid__left,.post-course-grid__middle,.post-course-grid__right{display:grid;align-content:start;gap:.75rem}.post-course-grid__middle{min-height:560px;grid-template-rows:minmax(0,1fr) minmax(0,1fr)}.post-course-grid__right{min-height:560px}.post-course-panel{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:.45rem}.post-course-description-label{margin:0}.post-course-description-input{min-height:0;height:100%;resize:none}.post-course-preview-title{margin:0;font-size:.96rem;font-family:Public Sans,Segoe UI,sans-serif}.post-course-preview{border:1px solid var(--line);border-radius:12px;background:linear-gradient(180deg,#fff,#fbfdff);padding:.75rem .85rem;min-height:0;overflow:auto;box-shadow:var(--shadow-soft)}.markdown-content{color:var(--ink-900);font-size:.91rem;line-height:1.35}.markdown-content>*:first-child{margin-top:0}.markdown-content>*:last-child{margin-bottom:0}.markdown-content p,.markdown-content ul,.markdown-content ol,.markdown-content pre,.markdown-content blockquote{margin:0 0 .45rem}.markdown-content ul,.markdown-content ol{padding-left:1.1rem}.markdown-content code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;background:#edf3fa;padding:.08rem .22rem;border-radius:4px;font-size:.85em}.markdown-content pre{background:#edf3fa;border-radius:8px;padding:.5rem .6rem;overflow-x:auto}.markdown-content pre code{background:transparent;padding:0}.markdown-content a{color:#0a6085;text-decoration:underline}.markdown-content--compact{font-size:.86rem}.markdown-content--compact p,.markdown-content--compact ul,.markdown-content--compact ol,.markdown-content--compact pre,.markdown-content--compact blockquote{margin-bottom:.32rem}.lat-lon-row{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.location-picker{display:flex;flex-direction:column;gap:.75rem;height:100%}.location-picker__title{margin:0;font-size:.96rem;font-weight:600;font-family:Public Sans,Segoe UI,sans-serif}.location-picker__field{display:flex;flex-direction:column;gap:.25rem}.location-picker__field-label{font-size:.85rem;font-weight:500;color:var(--ink-700);white-space:nowrap}.location-picker__map-container{flex:1;min-height:400px;border:1px solid var(--line);border-radius:12px;overflow:hidden}.location-picker__map{height:100%;width:100%;min-height:400px}.location-picker__map .leaflet-control-layers,.location-filter__map .leaflet-control-layers{border-radius:6px;border:1px solid var(--line);box-shadow:0 1px 4px #00000026}.location-picker__map .leaflet-control-layers-list,.location-filter__map .leaflet-control-layers-list{padding:.25rem 0}.location-picker__map .leaflet-control-layers-base label,.location-filter__map .leaflet-control-layers-base label{display:flex;align-items:center;gap:.35rem;padding:.25rem .5rem;margin:0;font-size:.8rem;cursor:pointer;white-space:nowrap}.location-picker__map .leaflet-control-layers-base label:hover,.location-filter__map .leaflet-control-layers-base label:hover{background:var(--ink-100)}.location-picker__map .leaflet-control-layers-base input,.location-filter__map .leaflet-control-layers-base input{width:auto;flex:0 0 auto;margin:0}.location-picker__map .leaflet-control-layers-expanded,.location-filter__map .leaflet-control-layers-expanded{min-width:100px}.location-picker__controls{display:flex;gap:.5rem;flex-wrap:wrap}.location-picker__default-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.location-picker__default-label{font-size:.85rem;font-weight:400;color:var(--ink-700);white-space:nowrap}.location-picker__default-city{font-size:.85rem;color:var(--ink-900)}.location-picker__button-row{display:flex;gap:.5rem;flex-wrap:wrap}.location-picker__search-row{display:flex;align-items:flex-end;gap:.5rem;flex-wrap:wrap}.location-picker__search-row .location-picker__field{flex:1;min-width:0}.location-picker__field--inline{flex-direction:row;align-items:center;gap:.5rem}.location-picker__field--inline input{flex:1 1 16rem;min-width:12rem}.location-picker__button-spacer{flex:1}.location-picker__search-btn,.location-picker__use-btn{font-size:.85rem;padding:.4rem .75rem}.location-picker__error{color:var(--danger);font-size:.85rem;margin:0}.location-picker__results{background:#fbfdff;border:1px solid var(--line);border-radius:8px;padding:.5rem}.location-picker__results-label{font-size:.8rem;color:var(--ink-600);margin:0 0 .35rem}.location-picker__results-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.25rem}.location-picker__result-btn{display:flex;flex-direction:column;align-items:flex-start;width:100%;padding:.4rem .5rem;background:transparent;border:1px solid var(--line);border-radius:6px;cursor:pointer;text-align:left;font-size:.82rem;transition:background .15s}.location-picker__result-btn:hover{background:#edf3fa}.location-picker__result-name{color:var(--ink-900);line-height:1.3}.location-picker__result-type{color:var(--ink-500);font-size:.75rem}.location-picker__hint{font-size:.8rem;color:var(--ink-500);margin:0}.post-course-date-col{white-space:nowrap;min-width:106px}.readonly-field{border:1px solid var(--line);border-radius:10px;min-height:40px;padding:.55rem .7rem;background:var(--surface-3);color:var(--ink-900);display:flex;align-items:center}.kv-list{margin:0;border:1px solid var(--line);border-radius:12px;background:linear-gradient(180deg,#fff,#fbfdff);overflow:hidden;box-shadow:var(--shadow-soft)}.kv-list--editable dd input,.kv-list--editable dd select,.kv-list--editable dd textarea{max-width:100%}.kv-row{display:grid;grid-template-columns:240px 1fr;gap:.8rem;padding:.65rem .8rem;border-bottom:1px solid #e7eef5}.kv-row:last-child{border-bottom:0}.kv-row dt{margin:0;color:var(--ink-700);font-weight:700}.kv-row dd{margin:0;color:var(--ink-900)}.password-section{border:1px solid var(--line);border-radius:12px;padding:.75rem .85rem;background:linear-gradient(180deg,#fff,#fbfdff);max-width:860px;box-shadow:var(--shadow-soft)}.password-layout{display:grid;grid-template-columns:180px minmax(0,1fr);align-items:start;gap:.5rem .8rem}.password-layout h3{margin:.1rem 0 0;white-space:nowrap}.password-content{display:grid;gap:.4rem}.password-row{display:grid;grid-template-columns:145px minmax(0,1fr);align-items:center;gap:.35rem}.password-label{margin:0;font-size:.88rem;color:var(--ink-700)}.password-control{display:grid;grid-template-columns:320px auto;align-items:center;gap:.35rem;row-gap:.2rem;justify-content:start}.password-control input{width:320px}.password-control .ghost-btn{padding:.42rem .62rem;min-width:62px}.password-status{margin:0}.password-status--inline{grid-column:2;align-self:center}.match-indicator{font-size:.88rem;font-weight:600}.match-indicator.match{color:#0f7a3f}.match-indicator.mismatch{color:#bb1f2a}.match-indicator.pending{color:var(--ink-500)}.toggle-visibility-btn{border-color:#8cc9bd;background:#e7f6f2;color:#115c52}.button-row{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center}.section-divider{border:none;border-top:1px solid var(--line);margin:1.5rem 0}.checkbox-option{display:flex;align-items:flex-start;gap:.5rem;font-size:.92rem;color:var(--ink-700)}.checkbox-option input[type=checkbox]{width:auto;margin:.2em 0 0;flex-shrink:0}.post-course-help-text{margin:-.3rem 0 0;font-size:.84rem;color:var(--ink-500)}.selectable-table-row{cursor:pointer}.selectable-table-row.selected td{background:linear-gradient(180deg,#f5fffc,#eefaf7)}.selectable-table-row:hover td{background:#f7fbfe}.selectable-table-row.selected:hover td{background:linear-gradient(180deg,#f5fffc,#eefaf7)}.table-radio-cell{width:56px;text-align:center}.table-radio-control{width:auto;margin:0;cursor:pointer}.table-wrap--short{max-height:30vh;margin-top:.5rem}.table-wrap--course-list{max-height:32rem}.my-courses-helper-text{margin:0;padding:.5rem;font-size:.85rem;color:var(--ink-500)}.my-courses-helper-text--stacked{padding:0;margin:-.15rem 0 .65rem}.my-courses-search-field{max-width:360px}.my-courses-pending-actions{margin-bottom:.5rem}.my-courses-panel-tabs{margin-bottom:0}.my-courses-pass-checkbox{width:auto;margin:0}.roster-delete-btn{border-color:var(--danger-line);color:var(--danger);background:var(--danger-soft)}.payment-methods{border:1px solid var(--line);border-radius:12px;padding:.8rem;display:grid;gap:.45rem;background:linear-gradient(180deg,#fff,#fbfdff);box-shadow:var(--shadow-soft)}.chip-row{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:.7rem}.chip{background:#eef5fb;border:1px solid #d7e3ef;border-radius:999px;padding:.35rem .66rem;font-size:.82rem;font-weight:700;color:var(--ink-700)}.cards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.slide-in{animation:rise .55s ease both}.delay-1{animation-delay:.08s}.delay-2{animation-delay:.16s}.delay-3{animation-delay:.24s}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1024px){.portal-header,.portal-body,.auth-shell,.stat-grid,.cards-grid,.field-grid,.reports-filter-grid,.post-course-grid,.plan-grid{grid-template-columns:1fr}.password-row{grid-template-columns:1fr;gap:.35rem}.password-control{grid-template-columns:minmax(0,1fr) auto;width:100%}.password-control input{width:100%}.password-status--inline{grid-column:1 / -1}.password-layout{grid-template-columns:1fr;gap:.45rem}.activity-panel__header{flex-direction:column;align-items:stretch}.password-status{margin-left:0}.kv-row{grid-template-columns:1fr;gap:.2rem}.signup-card{grid-column:span 1}.post-course-grid__middle,.post-course-grid__right{min-height:0;grid-template-rows:auto auto}.location-picker__map-container,.location-picker__map{min-height:250px}.course-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.post-course-description-input,.post-course-preview{min-height:220px}}@media(max-width:640px){.course-filter-grid{grid-template-columns:1fr}.location-picker__field--inline{flex-direction:column;align-items:stretch}.location-filter__status--inline{white-space:normal}}.ccm-shell{display:grid;gap:1rem}.ccm-shell--wide{max-width:1400px}.ccm-topbar,.ccm-loadbar{display:grid;grid-template-columns:1.2fr 1fr auto;gap:.9rem;align-items:end;padding:.9rem 1rem;border:1px solid var(--line);border-radius:14px;background:linear-gradient(180deg,#fff,#fbfdff);box-shadow:var(--shadow-soft)}.ccm-loadbar{grid-template-columns:1fr auto auto auto}.ccm-meta{display:flex;gap:.45rem;align-items:center;flex-wrap:wrap}.ccm-layout{display:grid;grid-template-columns:280px minmax(0,1fr) 360px;gap:1rem;min-height:620px}.ccm-layout--builder{grid-template-columns:260px minmax(0,.85fr) minmax(0,1.05fr) 320px}.ccm-pane{border:1px solid var(--line);border-radius:14px;background:linear-gradient(180deg,#fff,#fbfdff);padding:.85rem .9rem;display:grid;align-content:start;gap:.6rem;box-shadow:var(--shadow-soft)}.ccm-col-head{font-size:1.06rem;font-weight:600;color:var(--ink-900);line-height:1.2}.ccm-pane-header{display:flex;justify-content:space-between;align-items:end;gap:.5rem}.ccm-pane-header span{color:var(--ink-500);font-size:.88rem}.ccm-list{display:grid;gap:.35rem}.ccm-list-item{text-align:left;border:1px solid var(--line);border-radius:10px;background:var(--surface-1);color:var(--ink-900);padding:.55rem .65rem;display:grid;gap:.2rem}.ccm-list-item strong{font-size:.9rem}.ccm-list-item span{color:var(--ink-500);font-size:.82rem}.ccm-list-item.active{border-color:#0c8a7a5c;background:linear-gradient(180deg,#f5fffc,#eefaf7)}.ccm-video-add{display:grid;grid-template-columns:1fr;gap:.5rem}.ccm-item-actions{display:flex;justify-content:flex-start;gap:.45rem}.ccm-quick-drop{min-height:86px;border:2px dashed #bfd0df;border-radius:12px;background:#f7fbfe;color:#4d647a;font-size:.9rem;font-weight:600;display:flex;align-items:center;justify-content:center;text-align:center;padding:.75rem}.ccm-match-btn{min-width:104px;height:38px;border-radius:10px}.ccm-save-btn{width:100%;height:42px;border-radius:10px;font-weight:800}.ccm-item-list{display:grid;gap:.45rem;max-height:500px;overflow:auto}.ccm-item-list--tall{max-height:640px}.ccm-quiz-builder{border-top:1px solid #dfe8f1;padding-top:.7rem;display:grid;gap:.55rem}.ccm-quiz-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem}.ccm-span-2{grid-column:span 2}.ccm-answers{display:grid;gap:.3rem;margin-top:.4rem}.ccm-answer-row{display:flex;align-items:center;gap:.45rem}.ccm-item-card{border:1px solid var(--line);border-radius:10px;background:var(--surface-1);padding:.55rem .65rem;display:flex;justify-content:space-between;gap:.6rem}.ccm-item-card p{margin:.2rem 0 0;font-size:.84rem;word-break:break-word}.ccm-slide-item-edit{display:grid;gap:.3rem}.ccm-item-card--draggable{cursor:grab}.ccm-item-card--draggable.active{border-color:#2e7db6;background:#ecf6ff;box-shadow:inset 0 0 0 1px #b4d7ef}.ccm-item-remove{border:1px solid #d3dbe5;border-radius:8px;background:#f6f8fb;color:#546071;font-size:1.1rem;line-height:1;width:28px;height:28px}.ccm-pane--items-compact{max-width:430px}.ccm-pane--quiz-editor{min-width:0}.ccm-randomize-row{display:grid;gap:.35rem}.ccm-randomize-row label{display:flex;align-items:center;gap:.4rem;font-size:.84rem;color:var(--ink-700)}.ccm-question-list{display:grid;gap:.55rem;max-height:640px;overflow:auto;padding-right:.2rem}.ccm-question-card{border:1px solid var(--line);border-radius:10px;background:var(--surface-1);padding:.55rem .6rem;display:grid;gap:.5rem}.ccm-option-list{display:grid;gap:.35rem}.ccm-option-row{display:grid;grid-template-columns:auto 1fr auto;gap:.35rem;align-items:center;cursor:grab}.ccm-slide-grid{display:grid;gap:.45rem;max-height:560px;overflow:auto}.ccm-media-tabs{display:flex;gap:.35rem}.ccm-media-tab{border:1px solid #d1dce8;border-radius:8px;background:#f4f7fb;color:#304050;padding:.32rem .6rem;font-size:.82rem;font-weight:700}.ccm-media-tab.active{border-color:#2b7db7;background:#e9f3fb;color:#1a4566}.ccm-slide{border:1px solid var(--line);border-radius:10px;background:var(--surface-1);color:var(--ink-900);padding:.45rem;display:block;text-align:left}.ccm-slide img{width:100%;height:150px;object-fit:contain;border-radius:7px;border:1px solid #dbe6ef;background:#eaf1f8}.ccm-slide-thumb-wrap{position:relative}.ccm-slide-chapter-badges{position:absolute;top:6px;right:6px;z-index:2;display:flex;gap:.25rem;flex-wrap:wrap;justify-content:flex-end;max-width:calc(100% - 86px)}.ccm-slide-chapter-badge{min-width:20px;height:20px;padding:0 .35rem;border-radius:6px;background:#dbe6f0;color:#243447;font-size:.72rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.ccm-slide-chapter-badge.active{background:#2b7db7;color:#fff}.ccm-slide.linked-active{border-color:#0c8a7a6b;background:linear-gradient(180deg,#f4fffc,#eaf7f4);box-shadow:inset 0 0 0 1px #0c8a7a1f}.ccm-slide.picked{border-color:#2e7db6}.ccm-slide.dimmed{opacity:.52;filter:grayscale(.2)}.ccm-slide.dimmed.linked-active,.ccm-slide.dimmed.picked{opacity:.9;filter:none}.ccm-slide-title{position:absolute;left:6px;bottom:6px;max-width:calc(100% - 12px);padding:.2rem .38rem;border-radius:6px;background:#141f2bb8;color:#fff;font-size:.75rem;font-weight:600;line-height:1.2}.ccm-slide-number{position:absolute;top:6px;left:6px;z-index:2;min-width:24px;height:20px;padding:0 .4rem;border-radius:6px;background:#122c48db;color:#fff;font-size:.72rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.ccm-video-library{display:grid;gap:.45rem;max-height:560px;overflow:auto}.ccm-video-card{border:1px solid var(--line);border-radius:10px;background:var(--surface-1);padding:.45rem;display:grid;gap:.4rem}.ccm-video-card img,.ccm-video-thumb-fallback{width:100%;height:120px;border-radius:7px;border:1px solid #dbe6ef;object-fit:cover}.ccm-video-thumb-fallback{display:flex;align-items:center;justify-content:center;color:#617387;background:#eef3f8;font-size:.82rem;font-weight:600}.ccm-video-card p{margin:.2rem 0 0;font-size:.8rem;color:#5a6c7e;word-break:break-word}@media(max-width:1200px){.ccm-layout,.ccm-topbar,.ccm-loadbar,.ccm-quiz-grid{grid-template-columns:1fr}.ccm-span-2{grid-column:span 1}}
