@import"https://fonts.googleapis.com/css2?family=Bodoni+Moda:opsz,wght@6..96,400;6..96,500&display=swap";:root{--paper: #fcfaf3;--surface: #fffef9;--surface-soft: #f5efe4;--ink: #0b3033;--river: #0d3f43;--river-soft: #315f5e;--muted: #6d7f78;--line: rgba(13, 63, 67, .16);--line-soft: rgba(13, 63, 67, .08);--clay: #a99161;--warning: #9d6d2e;--good: #2f6f5b;--max: 1220px;--serif: "Bodoni Moda", Didot, "Bodoni 72", Georgia, "Times New Roman", serif;--sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;color:var(--ink);font-family:var(--sans)}*{box-sizing:border-box}[hidden]{display:none!important}html{background:var(--paper);color:var(--ink)}body{background:radial-gradient(rgba(13,63,67,.035) .35px,transparent .7px) 0 0 / 18px 18px,var(--paper);font-size:16px;line-height:1.55;margin:0}button,input,textarea{font:inherit}a{color:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--river);font-family:var(--serif);font-weight:400;letter-spacing:0;line-height:1}h1{font-size:clamp(3rem,8vw,7.4rem);max-width:980px}h2{font-size:clamp(2rem,4vw,4.2rem)}h3{font-size:clamp(1.35rem,2vw,2rem)}p,td,th,li{color:var(--river-soft)}.skip-link{background:var(--river);color:var(--surface);left:1rem;padding:.7rem 1rem;position:absolute;top:-4rem;z-index:20}.skip-link:focus{top:1rem}.admin-header{align-items:center;border-bottom:1px solid var(--line);display:flex;gap:1.5rem;justify-content:space-between;padding:1.1rem clamp(1rem,4vw,3.5rem)}.admin-brand{display:grid;line-height:1;text-decoration:none}.admin-brand span{color:var(--river);font-family:var(--serif);font-size:1.2rem}.admin-brand small,.eyebrow,.field-label,.status-pill,th{font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.admin-brand small{color:var(--muted);margin-top:.35rem}.admin-header-actions,.admin-header-actions nav,.action-row,.inline-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem 1.1rem}.admin-header-actions a,.text-button,.text-link{background:transparent;border:0;border-bottom:1px solid currentColor;color:var(--river);cursor:pointer;font-size:.72rem;font-weight:800;letter-spacing:.12em;padding:0 0 .18rem;text-decoration:none;text-transform:uppercase}.admin-header-actions a:hover,.text-button:hover,.text-link:hover{color:var(--clay)}.nav-with-dot{align-items:center;display:inline-flex;gap:.35rem}.nav-with-dot span{align-items:center;background:#b5473d;border-radius:999px;color:var(--surface);display:inline-flex;font-size:.62rem;height:1.05rem;justify-content:center;letter-spacing:0;min-width:1.05rem;padding:0 .25rem}.admin-main{margin:0 auto;max-width:var(--max);padding:clamp(1.5rem,4vw,3.2rem) clamp(1rem,4vw,3.5rem) 3.2rem}.admin-hero{border-bottom:1px solid var(--line);display:grid;gap:1.5rem;grid-template-columns:minmax(0,1fr) minmax(16rem,.34fr);margin-bottom:2rem;padding-bottom:clamp(2rem,4vw,3rem)}.admin-hero.compact-hero{grid-template-columns:minmax(0,1fr);margin-bottom:1.1rem;padding-bottom:clamp(1.2rem,2.5vw,2rem)}.compact-hero h1{font-size:clamp(2.6rem,5.4vw,5.6rem);margin-bottom:.75rem}.dashboard-hero{margin-bottom:.9rem;padding-bottom:1rem}.dashboard-hero h1{font-size:clamp(2.1rem,4vw,4.4rem);margin-bottom:0}.admin-hero p{font-size:clamp(1.05rem,1.8vw,1.35rem);max-width:680px}.hero-meta{align-self:end;border-left:1px solid var(--line);padding-left:1.5rem}.hero-meta strong{color:var(--river);display:block;font-family:var(--serif);font-size:2.2rem;font-weight:400;line-height:1}.metric-grid{display:grid;gap:1rem;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:1.5rem}.metric{border-top:1px solid var(--line);padding-top:1rem}.metric strong{color:var(--river);display:block;font-family:var(--serif);font-size:clamp(2.2rem,4vw,4rem);font-weight:400;line-height:.95}.stat-strip{background:#fffef99e;border:1px solid var(--line);display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:1.1rem}.stat-item{border-right:1px solid var(--line-soft);display:grid;gap:.25rem;min-width:0;padding:.8rem .9rem}.stat-item:last-child{border-right:0}.stat-item strong{color:var(--river);font-family:var(--serif);font-size:clamp(1.25rem,2vw,1.85rem);font-weight:400;line-height:1;overflow-wrap:break-word}.dashboard-stats{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:.9rem}.dashboard-stats .stat-item{gap:.15rem;padding:.62rem .75rem}.dashboard-stats .stat-item strong{font-size:clamp(1.45rem,2.3vw,2.2rem)}.admin-panel{background:#fffef9b8;border:1px solid var(--line);margin-top:1.3rem;padding:clamp(1rem,2.5vw,1.6rem)}.section-heading{align-items:end;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.top-panel-actions{display:flex;justify-content:flex-end;margin-bottom:.65rem}.top-page-actions{display:flex;justify-content:flex-end;margin-bottom:.8rem}.section-heading p{margin-bottom:0;max-width:620px}.search-row{align-items:end;border-bottom:1px solid var(--line);display:grid;gap:1rem;grid-template-columns:minmax(0,1fr) auto;margin-bottom:1.2rem;padding-bottom:1rem}.simple-search{margin:.8rem 0 1rem}.participant-search-panel{display:grid;gap:.7rem;margin-top:1rem}.simple-search-input{min-height:2.45rem;padding:.55rem .75rem}.input-field,.textarea-field{background:var(--surface);border:1px solid var(--line);border-radius:0;color:var(--river);min-height:3rem;padding:.8rem .9rem;width:100%}.textarea-field{min-height:11rem;resize:vertical}.input-field:focus,.textarea-field:focus{border-color:var(--river);outline:2px solid rgba(13,63,67,.1)}.field-stack{display:grid;gap:.35rem}.course-grid{display:grid;gap:.9rem;grid-template-columns:repeat(2,minmax(0,1fr))}.compact-course-grid{gap:.7rem;grid-template-columns:repeat(3,minmax(0,1fr))}.blog-admin-list{display:grid;gap:.8rem}.blog-admin-card{background:var(--surface);border:1px solid var(--line);color:inherit;display:grid;gap:.85rem;padding:1rem;text-decoration:none}.blog-admin-card:hover{border-color:#0d3f435c}.blog-admin-card h2{font-size:clamp(1.55rem,2.6vw,2.8rem);margin-bottom:.45rem}.blog-admin-card p{margin-bottom:0;max-width:760px}.blog-card-meta{border-top:1px solid var(--line-soft);display:grid;gap:.4rem;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding-top:.75rem}.blog-card-meta div{display:grid;gap:.15rem}.blog-card-meta dt{color:var(--muted);font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.blog-card-meta dd{color:var(--river-soft);margin:0}.blog-review-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.7rem;margin-bottom:1rem}.blog-review-grid{align-items:start;display:grid;gap:clamp(1rem,3vw,2rem);grid-template-columns:minmax(0,1fr) minmax(18rem,.42fr)}.blog-review-main{min-width:0}.blog-review-article{display:grid;gap:1rem}.blog-review-article h2{font-size:clamp(1.55rem,2.5vw,2.5rem);margin:1rem 0 0}.blog-review-article p,.blog-review-article li{font-size:1rem;line-height:1.75}.blog-review-article ul,.plain-list{display:grid;gap:.45rem;margin:0;padding-left:1.1rem}.blog-review-sidebar{display:grid;gap:.9rem;min-width:0}.blog-review-sidebar .detail-list h2{font-size:clamp(1.35rem,2vw,2rem)}.plain-list li{color:var(--river-soft)}.plain-list li span,.plain-list li strong{display:block}.course-card{background:var(--surface);border:1px solid var(--line);color:inherit;display:grid;gap:1rem;min-height:14rem;padding:1.2rem;text-decoration:none}.compact-course-card{gap:.7rem;min-height:0;padding:.8rem}.course-card-meta{align-items:center;display:flex;flex-wrap:wrap;gap:.45rem .7rem;justify-content:space-between}.course-card:hover{border-color:#0d3f435c}.course-card h3{margin-bottom:0}.course-summary{background:#fffef9c7;border:1px solid var(--line);color:inherit;display:grid;gap:.18rem;min-width:0;padding:.62rem .72rem;text-decoration:none}.course-summary-title{color:var(--river);font-family:var(--serif);font-size:clamp(1.15rem,1.7vw,1.45rem);font-weight:400;line-height:1.05}.course-summary-main{color:var(--river);font-size:.82rem;font-weight:750;line-height:1.25}.course-summary-dates{color:var(--muted);font-size:.73rem;line-height:1.35}.course-summary-hero{margin-top:.7rem;max-width:34rem;padding:.68rem .8rem}.course-summary-card{background:var(--surface)}.course-summary-link:hover{border-color:#0d3f435c}.course-mini-list{display:grid;gap:.55rem}.course-card-footer,.participant-summary{align-items:center;border-top:1px solid var(--line-soft);display:flex;flex-wrap:wrap;gap:.6rem 1rem;justify-content:space-between;padding-top:.9rem}.status-pill{border:1px solid var(--line);color:var(--river);display:inline-flex;line-height:1;padding:.38rem .5rem;width:fit-content}.status-pill.good{border-color:#2f6f5b59;color:var(--good)}.status-pill.created{border-color:#a991617a;color:var(--clay)}.status-pill.error{border-color:#943c346b;color:#943c34}.status-pill.legacy{border-color:#6d7f7847;color:var(--muted)}.status-pill.warning{border-color:#9d6d2e59;color:var(--warning)}.status-pill.muted{color:var(--muted)}.responsive-table{overflow-x:auto;width:100%}.light-table-wrap{border-top:1px solid var(--line)}table{border-collapse:collapse;min-width:820px;width:100%}.compact-table{min-width:720px}.dense-table{min-width:700px}.dense-table th{font-size:.62rem;padding:.52rem .58rem}.dense-table td{font-size:.86rem;padding:.56rem .58rem}.light-table{min-width:760px}.light-table th{padding-top:.58rem}.light-table td{background:#fffef957}th{border-bottom:1px solid var(--line);color:var(--muted);padding:.75rem .8rem;text-align:left}td{border-bottom:1px solid var(--line-soft);padding:.85rem .8rem;vertical-align:top}td strong,.detail-list strong{color:var(--river)}.clickable-row{cursor:pointer}.clickable-row:hover{background:#0d3f4309}.clickable-row:focus-visible{outline:2px solid rgba(13,63,67,.35);outline-offset:-2px}.muted-text{color:var(--muted)}.warning-text{color:var(--warning)}.link-stack{align-items:center;display:flex;flex-wrap:wrap;gap:.38rem .7rem}.legacy-link{color:var(--muted)}.button-link{align-items:center;display:inline-flex;justify-content:center;text-decoration:none}.disabled-link{border-color:var(--line);color:var(--muted);cursor:not-allowed;opacity:.74}.empty-state,.notice{background:var(--surface-soft);border:1px solid var(--line);color:var(--river-soft);padding:1rem}.compact-empty-state{margin:0;padding:.7rem .8rem}.notice.warning{border-color:#9d6d2e59}.detail-grid{display:grid;gap:1rem;grid-template-columns:.9fr 1.1fr}.single-detail-grid{grid-template-columns:minmax(0,.52fr)}.detail-list{display:grid;gap:.9rem}.detail-row{border-bottom:1px solid var(--line-soft);display:grid;gap:.35rem;padding-bottom:.8rem}.compact-detail-list{gap:.8rem}.full-row{border-bottom:1px solid var(--line)}.status-row,.invoice-summary{display:grid;gap:0;grid-template-columns:repeat(3,minmax(0,1fr))}.invoice-summary{border-top:1px solid var(--line-soft);grid-template-columns:repeat(2,minmax(0,1fr))}.status-cell,.invoice-summary>div{border-right:1px solid var(--line-soft);display:grid;gap:.25rem;min-width:0;padding:.68rem .72rem .68rem 0}.status-cell:last-child,.invoice-summary>div:last-child{border-right:0}.status-cell strong,.invoice-summary strong{font-size:.98rem}.note-form{display:grid;gap:1rem}.note-textarea{min-height:6rem}.note-status{margin:0}.invoice-workflow{display:grid;gap:.85rem}.invoice-toolbar{border-bottom:1px solid var(--line-soft);display:grid;gap:.65rem;margin-bottom:.7rem;padding-bottom:.85rem}.invoice-action-row{gap:.55rem .75rem}.invoice-table .invoice-select,.invoice-select-all{accent-color:var(--river);height:1rem;width:1rem}.generated-invoices{border:1px solid var(--line);display:grid}.generated-invoice-row{align-items:center;border-bottom:1px solid var(--line-soft);display:grid;gap:.55rem;grid-template-columns:minmax(10rem,1fr) auto auto auto;padding:.65rem .75rem}.generated-invoice-row:last-child{border-bottom:0}.input-field:disabled,.textarea-field:disabled{background:#f4efe3a6;color:var(--muted)}.message-grid,.message-form-compact{display:grid;gap:1rem}.message-grid{grid-template-columns:minmax(0,1fr) minmax(18rem,.46fr)}.message-form-compact .textarea-field{min-height:8.5rem}.recipient-panel{display:grid;gap:.45rem}.recipient-panel-heading{align-items:center;display:flex;gap:.75rem;justify-content:space-between}.recipient-panel-heading p,.recipient-panel-heading span{margin:0}.recipient-panel-heading span{color:var(--muted);font-size:.78rem}.recipient-list{border:1px solid var(--line);display:grid;max-height:26rem;overflow:auto}.compact-recipient-list{grid-template-columns:repeat(2,minmax(0,1fr));max-height:13rem}.recipient-row{align-items:start;border-bottom:1px solid var(--line-soft);display:grid;gap:.7rem;grid-template-columns:auto minmax(0,1fr);padding:.75rem}.compact-recipient-row{gap:.48rem;padding:.48rem .55rem}.compact-recipient-row span{display:grid;gap:.08rem;min-width:0}.compact-recipient-row strong{color:var(--river);font-size:.84rem;line-height:1.2}.compact-recipient-row small{color:var(--muted);font-size:.72rem;line-height:1.25;overflow-wrap:anywhere}.recipient-row:last-child{border-bottom:0}.recipient-row input,.invoice-check{accent-color:var(--river);height:1rem;margin-top:.25rem;width:1rem}.primary-button,.ghost-button{border:1px solid var(--river);color:var(--river);cursor:pointer;font-size:.74rem;font-weight:800;letter-spacing:.12em;min-height:2.75rem;padding:.75rem 1rem;text-transform:uppercase}.primary-button{background:var(--river);color:var(--surface)}.ghost-button{background:transparent}.primary-button:disabled,.ghost-button:disabled{border-color:var(--line);color:var(--muted);cursor:not-allowed;opacity:.74}.preview-box{background:var(--surface-soft);border:1px solid var(--line);margin-top:1rem;padding:1rem;white-space:pre-wrap}.modal-open{overflow:hidden}.pdf-modal{display:grid;inset:0;padding:clamp(.7rem,3vw,2rem);place-items:center;position:fixed;z-index:50}.pdf-modal-backdrop{background:#0b303394;border:0;cursor:pointer;inset:0;position:absolute}.pdf-modal-panel{background:var(--surface);border:1px solid rgba(255,254,249,.65);box-shadow:0 1.2rem 4rem #0b303347;display:grid;grid-template-rows:auto minmax(0,1fr);height:min(84vh,58rem);margin:0 auto;max-width:64rem;min-height:28rem;position:relative;width:min(100%,64rem)}.pdf-modal-bar{align-items:center;border-bottom:1px solid var(--line);display:flex;gap:1rem;justify-content:space-between;padding:.8rem 1rem}.pdf-modal-bar strong{color:var(--river)}.pdf-modal iframe{border:0;height:100%;width:100%}.login-shell{display:grid;min-height:100vh;place-items:center;padding:1rem}.login-panel{background:#fffef9d1;border:1px solid var(--line);max-width:34rem;padding:clamp(1.4rem,5vw,2.6rem);width:100%}.login-panel h1{font-size:clamp(3.2rem,10vw,5.8rem);margin-bottom:1rem}@media(max-width:880px){.admin-hero,.detail-grid,.single-detail-grid,.message-grid,.message-form-compact,.search-row{grid-template-columns:1fr}.hero-meta{border-left:0;border-top:1px solid var(--line);padding-left:0;padding-top:1rem}.metric-grid,.course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.compact-recipient-list,.blog-review-grid{grid-template-columns:1fr}.stat-item{border-bottom:1px solid var(--line-soft)}}@media(max-width:620px){.admin-header{align-items:flex-start;flex-direction:column}.metric-grid,.course-grid,.blog-card-meta{grid-template-columns:1fr}.stat-strip,.dashboard-stats,.status-row,.invoice-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-item:nth-child(2n),.status-cell:nth-child(2n),.invoice-summary>div:nth-child(2n){border-right:0}.section-heading,.course-card-footer,.participant-summary{align-items:flex-start;flex-direction:column}.generated-invoice-row{grid-template-columns:1fr}.pdf-modal{padding:.45rem}.pdf-modal-panel{height:86vh;min-height:0}.pdf-modal-bar{align-items:flex-start;flex-direction:column}}
