.interested, .interested-admin, .interested-confirmation { box-sizing: border-box; padding: 20px 16px; border-radius: 12px; background: #efefef; box-shadow: 0 10px 30px #0002; color: #242424; font: 14px/1.5 Arial, Helvetica, sans-serif; }
.interested { width: 100%; max-width: 42rem; margin: 1.5rem 0; }
.interested h2, .interested-admin h1, .interested-confirmation h2 { margin: 0 0 8px; padding: 0; color: #242424; font-size: 24px; font-weight: 700; line-height: 1.3; }
.interested-field { margin: 0 0 18px; }
.interested-field label { display: block; margin-bottom: 8px; font-weight: 400; font-size: 14px; }
.interested-field label span { font-weight: 400; font-size: 12px; }
.interested .interested-field input, .interested-record .interested-field input, .interested-admin input[type="search"] { width: 100%; max-width: 42rem; min-height: 46px; box-sizing: border-box; padding: 10px 14px; border: 1px solid #d2d2d2; border-radius: 8px; font: 16px/1.5 Arial, Helvetica, sans-serif; color: #242424; background: #fff; }
.interested input:focus, .interested button:focus, .interested a:focus { outline: 3px solid #1461a0; outline-offset: 3px; }
.interested-field input[aria-invalid="true"] { border: 2px solid #a02020; }
.interested-error { color: #8b1616; background: #fff3f3; padding: .6rem; }
.interested-success { color: #14512c; background: #edf9f1; padding: .8rem; border-left: 4px solid #267546; }
.interested-confirmation { width: min(32rem, calc(100% - 2rem)); border: 0; }
.interested-confirmation::backdrop { background: #0009; }
.interested-confirmation p { margin: 8px 0 24px; }
.interested-confirmation a { display: inline-block; box-sizing: border-box; text-decoration: none; }
.interested button, .interested-admin .button-primary, .interested-confirmation a { min-height: 42px; background: #c00000; color: #fff; border: 1px solid #c00000; border-radius: 8px; padding: 10px 16px; font: 700 14px/1.5 Arial, Helvetica, sans-serif; cursor: pointer; text-shadow: none; box-shadow: none; }
.interested button:hover, .interested-admin .button-primary:hover, .interested-confirmation a:hover { background: #a00000; border-color: #a00000; color: #fff; }
.interested button:focus-visible, .interested-admin .button-primary:focus-visible, .interested-confirmation a:focus-visible { outline: 3px solid #1461a0; outline-offset: 3px; }
.interested button:disabled { opacity: .7; cursor: wait; }
.interested-honeypot { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.interested-record { max-width: 42rem; }
.interested-table { overflow-x: auto; }
.interested-admin .widefat td, .interested-admin .widefat th { vertical-align: top; }
.interested-shortcode { padding: 12px 14px; border: 1px solid #d2d2d2; border-radius: 8px; background: #fff; }
.interested-shortcode code { white-space: nowrap; }
.interested-search label { display: block; margin-bottom: 8px; }
.interested-admin input[type="search"] { width: min(100%, 32rem); margin: 0 8px 8px 0; }
.interested-admin .button:not(.button-primary) { border-radius: 8px; }
@media (max-width: 480px) { .interested, .interested-admin, .interested-confirmation { padding: 16px; } .interested-search .button-primary { display: block; margin-bottom: 8px; } }

.interested .interested-description { margin: 8px 0 28px; }
.interested-address-row { display: grid; grid-template-columns: minmax(120px, 1fr) minmax(0, 3fr); gap: 16px; }
.interested-address-row .interested-field { min-width: 0; }
.interested-record textarea { width: 100%; box-sizing: border-box; padding: 10px 14px; border: 1px solid #d2d2d2; border-radius: 8px; background: #fff; font: 16px/1.5 Arial, Helvetica, sans-serif; }
.interested-address-row .interested-field { display: flex; flex-direction: column; } .interested-address-row .interested-field input { margin-top: auto; }

.interested-courses { margin: 0 0 28px; padding: 16px; border: 1px solid #d2d2d2; border-radius: 8px; background: #fff; min-width: 0; }
.interested-courses legend { padding: 0 6px; font-weight: 700; font-size: 18px; }
.interested-courses label { display: flex; align-items: flex-start; gap: 10px; margin: 12px 0; cursor: pointer; }
.interested-courses input[type="checkbox"] { flex: 0 0 auto; width: 18px; height: 18px; margin: 2px 0 0; accent-color: #c00000; }
.interested-course-admin { display: flex; align-items: center; gap: 16px; margin: 12px 0; }
.interested-confirmation h2:focus { outline: none; }

.interested-name-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.interested-name-row .interested-field { min-width:0; }
.interested-course-row { display:flex; flex-wrap:wrap; align-items:center; gap:12px 24px; }
.interested-course-choice { flex:1 1 180px; }
.interested-term-choices { display:flex; gap:20px; }
.interested-term-choices label { margin:12px 0; }
.interested-term-choices abbr { text-decoration:none; }
.interested-legacy-name { padding:12px; background:#fff; border:1px solid #ddd; border-radius:8px; }
@media (max-width:480px) { .interested-name-row { grid-template-columns:minmax(0,1fr); gap:0; } }

.interested-term-filter { border: 0; padding: 0; margin: 8px 0 16px; }
.interested-term-filter legend { font-weight: 700; margin-bottom: 8px; }
.interested-term-filter label { display: inline-flex; align-items: center; gap: 6px; margin: 0 20px 0 0; }
.interested-term-filter .description { margin: 8px 0 0; }

.interested .interested-count { display:inline-flex; align-items:center; justify-content:center; min-width:1.8em; height:1.8em; padding:0 .25em; box-sizing:border-box; border-radius:50%; background:#d00000; color:#fff; font-size:.85em; font-weight:700; }

.interested-edit { margin-top:24px; border-top:1px solid #d2d2d2; padding-top:20px; }
.interested-edit summary { cursor:pointer; font-weight:700; margin-bottom:16px; }
.interested-edit summary:focus-visible { outline:3px solid #1461a0; outline-offset:3px; }

.interested-term-choices { flex-wrap:wrap; align-items:center; }

.interested-delete { margin:20px 0; border-top:1px solid #d2d2d2; padding-top:16px; }
.interested-delete summary { cursor:pointer; font-weight:700; }
.interested-delete form label { display:block; margin-bottom:14px; }
.interested-term-help { margin:0 0 12px; }

.interested .interested-course-row { display:grid; grid-template-columns:minmax(0,1fr) 2.5rem auto; gap:12px 16px; align-items:center; }
.interested .interested-course-choice { grid-column:1; grid-row:1; min-width:0; overflow-wrap:anywhere; }
.interested .interested-count-total { grid-column:2; grid-row:1; justify-self:center; }
.interested .interested-term-choices { grid-column:3; grid-row:1; gap:12px; flex-wrap:nowrap; }
.interested-lookup-dialog { box-sizing:border-box; width:min(32rem,calc(100% - 2rem)); padding:20px 16px; border:0; border-radius:12px; background:#efefef; color:#242424; box-shadow:0 10px 30px #0002; font:14px/1.5 Arial,Helvetica,sans-serif; }
.interested-lookup-dialog::backdrop { background:#0009; }
.interested-lookup-dialog p { margin:0 0 20px; }
.interested-lookup-dialog p:focus { outline:none; }

.interested .interested-course-row, .interested .interested-course-columns { display:grid; grid-template-columns:minmax(0,1fr) 6rem 7rem; column-gap:12px; align-items:center; }
.interested .interested-course-columns { font-weight:700; padding-bottom:10px; border-bottom:1px solid #d2d2d2; }
.interested-course-columns > span:nth-child(2), .interested-course-columns > span:nth-child(3) { text-align:center; }
.interested .interested-term-choices { justify-content:center; }
@media (max-width:480px) {
 .interested .interested-course-row, .interested .interested-course-columns { grid-template-columns:minmax(0,1fr) 4.5rem 6rem; column-gap:8px; }
 .interested .interested-course-columns { font-size:12px; }
 .interested .interested-term-choices { gap:8px; }
}
