/* Shared campaign colors; existing form behavior is unchanged. */
:root{--red:#ec080c;--red-dark:#c60005;--ink:#292522;--muted:#6f6860;--line:#e7dcc8;--bg:#f6f3e9;--pink:#fff0eb;--sea:#297f88;--gold:#d7b476}
body{background:var(--bg)}
.site-header{background:#fffcf6;border-bottom:1px solid var(--line)}
.site-header .brand{flex-shrink:0}
.site-header .header-logo{display:block;width:240px;max-width:100%;height:auto}
.site-header nav a{color:#625b53}
.site-header nav a.active:after{height:4px;border-radius:4px 4px 0 0}
.campaign-artwork{background:#ece9db;max-width:1920px;margin:auto}
.campaign-artwork>img{display:block;width:100%;height:auto}
.campaign-mobile-copy{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%)}
.campaign-strip{background:var(--red);padding:16px 24px}
.campaign-strip a{font-weight:600}
.page-shell{padding-top:56px}
.intro-panel h2,.section-kicker{color:var(--sea)}
.intro-panel>p{color:#6f6860}
.feature-icon{background:#e3f2ef;color:var(--sea);border:1px solid #c4ded9}
.prepare-note{background:#eee8d9;border:1px solid #dfd0b6}
.prepare-note svg{color:var(--sea)}
.registration-card,.history-search,.terms-card{border:1px solid var(--gold);box-shadow:0 12px 36px #7664410c}
.registration-card{border-top:4px solid var(--red);border-radius:18px}
.stepper{border-bottom:1px dashed var(--gold)}
.stepper li.current>span{box-shadow:0 0 0 5px #fff0e9}
.stepper li.done>span{background:#e4f3ef;color:#246e75;border-color:#c2ded7}
.stepper li.done>b{color:var(--sea)}
.stepper li.done+li:before{background:#8bbfc0}
.stepper li>b,.step-count,.field-help,.secure-note{color:#716b63}
.form-icon{background:#e7f3f1;color:var(--sea)}
.form-subtitle{color:#706b64}
.primary{box-shadow:0 4px 12px #ec080c14}
.secondary{background:#eeeade;color:#5b554b}
input:not([type=checkbox]):not([type=file]),select{border-color:#d7d0c3}
input:focus,select:focus{border-color:var(--sea);outline:3px solid #297f8825}
a:focus-visible,button:focus-visible{outline-color:var(--sea)}
.upload-zone{background:#f4fbf9;border-color:#86b8b5;color:var(--sea)}
.upload-zone:focus-within,.upload-zone.dragover{background:#e4f3ef;outline-color:var(--sea)}
.info-note{background:#f0f6f3;color:#526a66}
.bonus-card{background:#e4f1ed;border:1px solid #bdd6cc}
.bonus-card p{color:#526a66}
.bonus-dates span{color:var(--sea)}
.history-summary,.history-table-wrap{background:#fffcf5;border-color:var(--gold)}
.history-summary header,.history-total{background:#f1eadb;border-color:var(--line)}
.history-summary h3,.history-contract strong{color:var(--ink)}
.history-table th{background:var(--red)}
.rights-badge{background:#e7f3ef;border-color:#bdd9d1;color:#246e75}
.receipt{background:#f5f2e9}
footer{background:#fffcf6;border-top:1px solid var(--gold)}
@media(max-width:700px){
.site-header .header-logo{width:200px}
.site-header nav{gap:22px}
.campaign-strip{padding:13px 18px;gap:6px}
.page-shell{padding-top:28px}
.registration-card{padding:24px 18px}
}

.returning-note { margin: 0 0 18px; }
.consent input.invalid { outline: 2px solid #e4002b; outline-offset: 1px; border-radius: 3px; box-shadow: 0 0 0 4px rgba(228,0,43,.15); }
.consent input.invalid + span { color: #c8001f; }
.phone-input input.invalid, .phone-input input.invalid:focus { border-color: #e4002b !important; box-shadow: 0 0 0 3px rgba(228,0,43,.15); outline: none; }
.fields input.invalid, .fields input.invalid:focus { border-color: #e4002b !important; box-shadow: 0 0 0 3px rgba(228,0,43,.15); outline: none; }
.contract-status { display: block; margin-top: 6px; }
.contract-status.checking { color: #77777c; }
.contract-status.available { color: #1f7a4d; }
.contract-status.taken, .contract-status.format { color: #c8001f; }
.form-step input.invalid:not([type=checkbox]), .form-step select.invalid, .form-step input.invalid:not([type=checkbox]):focus, .form-step select.invalid:focus { border-color: #e4002b !important; box-shadow: 0 0 0 3px rgba(228,0,43,.15); outline: none; transition: none; }
.product-types.invalid legend, .product-types.invalid .field-help { color: #c8001f; }
.product-types.invalid .product-option input { outline: 2px solid #e4002b; outline-offset: 1px; border-radius: 3px; }
.upload-zone.invalid { border: 1.5px dashed #e4002b; background: #fff5f6; }
.history-reject-note{margin:8px 0 0;padding:8px 12px;border-left:3px solid #e4002b;background:#fff1f3;border-radius:0 6px 6px 0;color:#9b1c33;font-size:13px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}
.history-reject-note b{font-weight:600}
.history-table tr.has-note td { border-bottom: 0; padding-bottom: 4px; }
.history-table tr.history-note-row td { padding-top: 0; }
.history-table tr.history-note-row .history-reject-note { margin: 0; }
