
:root{font-family:system-ui,sans-serif;background:#f3e9dd;color:#4f284e}
*{box-sizing:border-box}body{margin:0}header{padding:.85rem max(1rem,calc((100% - 1000px)/2));background:#fffaf5;border-bottom:1px solid #e4d5ce;font-weight:700}
a{color:#85103e}main{max-width:1000px;margin:auto;padding:1rem 1rem 3rem}.public-signup{max-width:830px}
.hero{background:radial-gradient(ellipse at 100% 5%,#db9ebc 0,transparent 49%),linear-gradient(130deg,#fff5e5,#efdbdc);padding:clamp(1.35rem,4vw,2.7rem);border:1px solid #dfc7cd;border-radius:20px;margin-bottom:1rem}
h1,h2,p{margin:0}h1{font-size:clamp(2.1rem,7vw,3.8rem);line-height:1.06;letter-spacing:-.055em;color:#8c063e}h2{font-size:1.2rem}
.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:.74rem;font-weight:750;margin-bottom:.45rem}.hero p:last-of-type{margin:.55rem 0}
section.card{padding:1rem;background:#fffaf5;border:1px solid #e4d5ce;border-radius:13px}section.card p{line-height:1.45;margin:.4rem 0}
.label{display:inline-block;background:#f4e8ee;color:#76264f;font-weight:680;font-size:.78rem;padding:.28rem .58rem;border-radius:2rem}
button,a.button{display:inline-block;border:1px solid #8c063e;border-radius:8px;background:#8c063e;color:#fff;padding:.55rem .68rem;text-decoration:none;font:650 .86rem system-ui;margin-top:.4rem;cursor:pointer}button:disabled{opacity:.55;cursor:default}
button:focus-visible,a:focus-visible{outline:3px solid #ba7550;outline-offset:3px}form.signup{display:grid;gap:.75rem}.signup label{display:block;font-size:.9rem;font-weight:650}
.signup input:not([type=checkbox]),.signup select,.signup textarea{display:block;width:100%;padding:.5rem;margin-top:.2rem;border:1px solid #c9a9b7;border-radius:7px;color:inherit;background:#fff;font:inherit}
.signup textarea{resize:vertical;min-height:4rem}.signup fieldset{margin:0;border:0;padding:0;min-width:0;display:grid;gap:.75rem}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,172px),1fr));gap:.65rem}
.booking{border-top:1px solid #e4d5ce;padding:.55rem 0}.booking:first-child{border:0}[hidden]{display:none!important}

.manage{max-width:1040px;padding-top:.72rem}.manage h1{font-size:1.56rem;letter-spacing:-.035em}
.manage h2{font-size:1.1rem}.manage-head,.manage-event-bar,.manage-panel-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}
.manage-tabs{display:flex;gap:.25rem;flex-wrap:wrap;border-bottom:1px solid #dec9ce;margin:.65rem 0;padding-bottom:.32rem}
.manage-tabs button{margin:0;padding:.42rem .7rem;border-color:transparent;background:transparent;color:#6b3454}
.manage-tabs button[aria-pressed=true]{background:#8c063e;color:#fff}
.manage-event-bar{padding:.55rem .72rem;background:#fffaf5;border:1px solid #e4d5ce;border-radius:10px;margin-bottom:.65rem}
.manage-event-bar label{display:flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:700;min-width:0;flex:1 1 240px}
.manage-event-bar select{min-width:0;max-width:100%;flex:1}.manage-event-bar button,.manage-panel-head .button{margin:0}
.manage-status{font-size:.84rem;margin:.45rem 0;color:#702044}.manage-status:empty{display:none}
.manage section.card{padding:.85rem;border-radius:12px}.manage-toolbar,.manage-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,155px),1fr));gap:.55rem;align-items:end}
.manage-toolbar input,.manage-toolbar select,.manage-event-bar select{width:100%;padding:.4rem;border:1px solid #c9a9b7;border-radius:7px;color:inherit;background:#fff}
.manage form.signup{gap:.55rem}.manage .signup label,.manage-toolbar label{font-size:.8rem;font-weight:650}
.manage .signup input:not([type=checkbox]),.manage .signup select,.manage .signup textarea{padding:.38rem;margin-top:.2rem}
.manage .signup textarea{min-height:3.3rem}.manage .signup details{border:1px solid #e4d5ce;border-radius:8px;padding:.45rem .55rem}
.manage .signup details label{margin-top:.38rem}.manage summary{cursor:pointer;font-size:.86rem;font-weight:650}
.manage .checks{display:flex;gap:.35rem .75rem;flex-wrap:wrap}.manage .form-action{justify-self:start;margin-top:0}
.manage-records{padding:0;list-style:none;margin:.4rem 0}.manage-records li{border-top:1px solid #e4d5ce;padding:.38rem 0;overflow-wrap:anywhere}
.manage-records li:first-child{border-top:0}.manage-metrics{display:flex;gap:.35rem;flex-wrap:wrap;margin:.5rem 0;font-size:.8rem}
.manage-metrics span{background:#f4e8ee;border-radius:6px;padding:.3rem .48rem}.manage a{color:#85103e}.manage a.button{color:#fff}
.manage .booking{padding:.55rem 0}.manage [hidden]{display:none}
.manage-campaign{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap}.manage-campaign button{margin:0;padding:.3rem .5rem}
.manage-campaign select{max-width:9.5rem;padding:.25rem;border:1px solid #c9a9b7;border-radius:6px;color:inherit;background:#fff}
.acq-toolbar{display:grid;grid-template-columns:minmax(145px,1.45fr) repeat(2,minmax(125px,1fr)) minmax(140px,1.1fr) auto;gap:.45rem;align-items:end;margin:.55rem 0}
.acq-toolbar button{margin:0}.acq-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.4rem;margin:.6rem 0}
.acq-cards div{padding:.42rem .58rem;border:1px solid #e9d7de;border-radius:8px;background:#fbf1f2}
.acq-cards strong,.acq-cards span{display:block}.acq-cards span{font-size:.73rem;color:#653b57}.acq-cards strong{font-size:1.14rem;letter-spacing:-.03em}
.acq-grid{display:grid;grid-template-columns:minmax(210px,.8fr) minmax(0,1.55fr);gap:.7rem;align-items:start}
.acq-chart{padding:.6rem;background:#f8efeb;border:1px solid #eadad6;border-radius:9px}
.acq-switch{display:flex;gap:.2rem;flex-wrap:wrap;margin:.35rem 0}.acq-switch button{margin:0;padding:.27rem .42rem;background:#fffaf5;color:#713351;border-color:#e4cbd5;font-size:.76rem}
.acq-switch button[aria-pressed=true]{background:#8c063e;color:#fff;border-color:#8c063e}
.acq-bar{margin:.4rem 0;font-size:.76rem}.acq-bar div{display:flex;justify-content:space-between;gap:.35rem}.acq-bar div span:first-child{overflow-wrap:anywhere}
.acq-bar progress{display:block;width:100%;height:.45rem;margin-top:.14rem;accent-color:#a34775;border:0;border-radius:5px;background:#ecd9de}
.acq-bar progress::-webkit-progress-bar{background:#ecd9de;border-radius:5px}.acq-bar progress::-webkit-progress-value{background:#a34775;border-radius:5px}
.acq-table-wrap{overflow-x:auto}.acq-table{width:100%;border-collapse:collapse;font-size:.78rem;font-variant-numeric:tabular-nums}
.acq-table th,.acq-table td{padding:.38rem .3rem;text-align:right;border-bottom:1px solid #ecdfdb;vertical-align:top}
.acq-table th:first-child,.acq-table td:first-child{text-align:left;overflow-wrap:anywhere}.acq-table thead th{font-size:.72rem;color:#673b55}
.acq-table td:not(:first-child){white-space:nowrap}.acq-table small{display:block;color:#714d67}
.acq-table button{margin:0;padding:0;border:0;background:transparent;color:#85103e;text-decoration:underline;text-align:left;font:inherit;font-weight:700}
.acq-notes{font-size:.76rem;color:#6b435e}.acq-detail{margin-top:.55rem}.acq-detail h3{font-size:.88rem;margin:.25rem 0}
@media(max-width:780px){.acq-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.acq-grid{grid-template-columns:1fr}}
@media(max-width:480px){.acq-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
