:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#18332d;background:#eef3f1;font-synthesis:none;letter-spacing:0}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select,textarea{font:inherit;letter-spacing:0}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}.app-shell{min-height:100vh}.uat-bar{align-items:center;background:#f4c95d;color:#342a0f;display:flex;font-size:.75rem;justify-content:center;min-height:34px;padding:.45rem 1rem;text-align:center}.uat-bar span{border-right:1px solid #8f741e;font-weight:800;margin-right:.65rem;padding-right:.65rem;text-transform:uppercase}.brand-header{height:150px;overflow:hidden;position:relative}.brand-header img{height:100%;object-fit:cover;width:100%}.brand-shade{background:linear-gradient(90deg,#08211ce0,#08211c66 46%,#08211c14);inset:0;position:absolute}.brand-content{bottom:24px;color:#fff;left:max(24px,calc((100% - 1060px)/2));position:absolute}.brand-content p{margin:0}.wordmark{font-size:2rem;font-weight:850;line-height:1}.brand-content span{display:block;font-size:.84rem;margin-top:.35rem;opacity:.9}main{margin:0 auto;max-width:1060px;min-height:520px;padding:2rem 1.25rem 3rem}.intro{align-items:center;display:flex;flex-direction:column;margin:2rem auto;max-width:620px;text-align:center}.access-state{min-height:350px;justify-content:center}.step-icon{align-items:center;background:#dfeee9;border:1px solid #bad7ce;color:#167a68;display:flex;height:52px;justify-content:center;margin-bottom:1rem;width:52px}.eyebrow{color:#167a68;font-size:.72rem;font-weight:800;margin:0 0 .4rem;text-transform:uppercase}h1{color:#14382f;font-size:clamp(1.65rem,4vw,2.35rem);line-height:1.12;margin:0}.lead{color:#566d66;font-size:1.03rem;line-height:1.6;margin:.8rem 0 1.6rem}.primary,.secondary,.danger,.text-button{align-items:center;border-radius:4px;display:inline-flex;font-weight:750;gap:.55rem;justify-content:center;min-height:44px;padding:.7rem 1rem}.primary{background:#167a68;border:1px solid #167a68;color:#fff}.primary:hover{background:#116657}.secondary{background:#fff;border:1px solid #167a68;color:#116657}.danger{background:#b83a32;border:1px solid #b83a32;color:#fff}.text-button{background:transparent;border:1px solid transparent;color:#6d4a46}.full{margin-top:1rem;width:100%}.otp-label{color:#405b54;display:grid;font-size:.8rem;font-weight:700;gap:.45rem;margin-bottom:1rem;text-align:left;width:min(100%,330px)}.otp-label input{background:#fff;border:1px solid #9eb5ae;border-radius:4px;color:#18332d;font-size:1.6rem;font-weight:750;letter-spacing:.55rem;padding:.7rem .8rem;text-align:center;width:100%}.error-banner{align-items:center;background:#fff0ee;border-left:4px solid #bd3b31;color:#792921;display:flex;gap:.6rem;margin-bottom:1rem;padding:.8rem 1rem}.offer-workspace{background:#fff;border-top:4px solid #167a68;box-shadow:0 6px 28px #17352f17;padding:1.5rem}.preview-note{align-items:center;background:#fff6dc;border-left:4px solid #c28b24;color:#5b461d;display:flex;gap:.7rem;margin:-.25rem 0 1rem;padding:.75rem .9rem}.preview-note div{display:grid;gap:.15rem}.preview-note span{font-size:.76rem}.journey{display:grid;gap:0;grid-template-columns:repeat(4,1fr);list-style:none;margin:0 0 1.5rem;padding:0}.journey li{align-items:center;border-bottom:2px solid #d8e2df;color:#71837e;display:flex;font-size:.72rem;font-weight:700;gap:.45rem;min-height:42px;padding:0 .4rem .65rem}.journey li span{align-items:center;background:#edf2f0;border:1px solid #ccd8d4;color:#60736d;display:inline-flex;flex:0 0 24px;height:24px;justify-content:center;width:24px}.journey li.complete,.journey li.active{border-bottom-color:#167a68;color:#174c41}.journey li.complete span{background:#167a68;border-color:#167a68;color:#fff}.journey li.active span{background:#fff;border-color:#167a68;color:#167a68}.offer-heading{align-items:start;display:flex;gap:2rem;justify-content:space-between}.offer-heading h1{font-size:1.75rem}.offer-heading>div>p:last-child{color:#667a74;margin:.5rem 0 0}.deadline{align-items:center;background:#eef4f2;color:#36564e;display:grid;flex:0 0 220px;gap:.05rem .55rem;grid-template-columns:24px 1fr;padding:.75rem}.deadline svg{grid-row:1 / 3}.deadline span{font-size:.7rem;text-transform:uppercase}.deadline strong{font-size:.82rem}.guarantee{align-items:center;background:#e6f3ec;border-left:4px solid #238258;display:flex;gap:.75rem;margin:1.25rem 0;padding:.85rem 1rem}.guarantee svg{color:#238258;flex:0 0 auto}.guarantee div{display:grid;gap:.2rem}.guarantee span{color:#526a62;font-size:.78rem}.quality-strip{background:#f5f8f7;border:1px solid #d9e2df;display:grid;grid-template-columns:repeat(4,1fr);margin:0 0 1rem}.quality-strip>div{display:grid;gap:.25rem;min-width:0;padding:.8rem 1rem}.quality-strip>div+div{border-left:1px solid #d9e2df}.quality-strip span{color:#647871;font-size:.68rem;font-weight:750;text-transform:uppercase}.quality-strip strong{color:#183f36;font-size:1.1rem}.quality-strip .protected strong{color:#187348}.quality-strip .reduced strong{color:#a6332c}.seat-grid{display:grid;gap:1rem;grid-template-columns:1fr 1fr}.seat-group{border:1px solid #d9e2df;padding:1rem}.seat-group.current{border-top:3px solid #d09b3c}.seat-group.proposed{border-top:3px solid #238258}.seat-group h2{font-size:.95rem;margin:0 0 .8rem}.seat{align-items:flex-start;background:#f7f9f8;display:flex;gap:.65rem;margin-top:.55rem;min-height:66px;padding:.75rem}.seat svg{color:#536d66;flex:0 0 auto}.seat div{display:grid;gap:.25rem;min-width:0}.seat strong{font-size:.83rem;overflow-wrap:anywhere}.seat span{color:#6a7d77;font-size:.72rem}.decision-band{border-top:1px solid #dce5e2;margin-top:1.4rem;padding-top:1.25rem}.preview-actions{align-items:center;border-top:1px solid #dce5e2;display:grid;gap:.15rem .75rem;grid-template-columns:28px 1fr auto;margin-top:1.4rem;padding-top:1.25rem}.preview-actions>svg{color:#187348;grid-row:1 / 3}.preview-actions div{display:grid;gap:.2rem}.preview-actions span{color:#62766f;font-size:.78rem}.fee-line{align-items:baseline;display:grid;gap:.2rem 1rem;grid-template-columns:auto auto 1fr;margin-bottom:1rem}.fee-line span{color:#5b7069;font-size:.8rem;font-weight:700;text-transform:uppercase}.fee-line strong{font-size:1.35rem}.fee-line small{color:#6a7d77}.payment-form{border:1px solid #d9e2df;margin:1rem 0;padding:1rem}.inline-error{color:#a22f28;font-size:.8rem}.success-line{align-items:center;background:#e7f5ed;color:#176742;display:flex;font-weight:750;gap:.5rem;margin:.75rem 0;padding:.7rem}.check{align-items:flex-start;color:#405b54;display:flex;font-size:.85rem;gap:.6rem;margin:.8rem 0}.check input{accent-color:#167a68;height:18px;width:18px}.actions{display:flex;gap:.75rem;margin-top:1rem}.reject-panel{background:#faf5f4;border-left:3px solid #b83a32;display:grid;gap:.75rem;margin-top:1rem;padding:1rem}.reject-panel label{color:#5c4946;display:grid;font-size:.78rem;font-weight:700;gap:.35rem}.reject-panel select,.reject-panel textarea{background:#fff;border:1px solid #bea9a6;border-radius:4px;padding:.65rem}.reject-panel textarea{min-height:78px;resize:vertical}.result{min-height:360px;justify-content:center}footer{align-items:center;background:#163b33;color:#d8e6e2;display:flex;font-size:.75rem;gap:.5rem;justify-content:center;min-height:58px;padding:1rem;text-align:center}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:700px){.uat-bar{align-items:stretch;flex-direction:column;gap:.1rem}.uat-bar span{border:0;margin:0;padding:0}.brand-header{height:126px}main{padding:1rem .75rem 2rem}.offer-workspace{padding:1rem}.offer-heading{display:grid;gap:1rem}.journey{grid-template-columns:repeat(2,1fr);row-gap:.75rem}.journey li{min-width:0}.deadline{width:100%}.quality-strip{grid-template-columns:1fr 1fr}.quality-strip>div:nth-child(3){border-left:0;border-top:1px solid #d9e2df}.quality-strip>div:nth-child(4){border-top:1px solid #d9e2df}.seat-grid{grid-template-columns:1fr}.fee-line{grid-template-columns:1fr auto}.fee-line small{grid-column:1 / 3}.actions{align-items:stretch;flex-direction:column}.actions button{width:100%}.preview-actions{align-items:start;grid-template-columns:28px 1fr}.preview-actions button{grid-column:1 / 3;margin-top:.8rem;width:100%}}.configuration-state{align-items:center;display:flex;flex-direction:column;gap:.45rem;justify-content:center;min-height:100vh;padding:2rem;text-align:center}.configuration-state span{color:#657770}.portal-shell{min-height:100vh}.portal-header{align-items:center;background:#153b33;color:#fff;display:grid;gap:2rem;grid-template-columns:1fr auto 32px;min-height:66px;padding:.65rem max(1rem,calc((100% - 1120px)/2))}.portal-brand{color:#fff;display:flex;flex-direction:column;text-decoration:none;width:max-content}.portal-brand strong{font-size:1.25rem}.portal-brand span{font-size:.68rem;opacity:.75}.portal-header nav{display:flex;gap:.4rem}.portal-header nav a{align-items:center;color:#dce9e5;display:flex;font-size:.82rem;font-weight:700;gap:.45rem;padding:.6rem .75rem;text-decoration:none}.portal-header nav a:hover{background:#245247;color:#fff}.portal-main{max-width:1120px;min-height:calc(100vh - 158px);padding:2rem 1.25rem 3rem}.page-heading{align-items:flex-end;display:flex;gap:2rem;justify-content:space-between;margin-bottom:1.5rem}.page-heading h1{font-size:1.85rem}.page-heading>div>p:last-child{color:#657770;margin:.45rem 0 0}.loading-state{color:#667a73;padding:4rem;text-align:center}.portal-empty{background:#fff;border:1px solid #d8e2df;flex-direction:column}.portal-empty strong{color:#294b43}.portal-empty span{font-size:.82rem}.request-list,.event-list{background:#fff;border:1px solid #d8e2df}.request-row,.event-row{align-items:center;border-bottom:1px solid #e4ebe8;color:#24473f;display:grid;gap:1rem;min-height:76px;padding:.8rem 1rem;text-decoration:none}.request-row{grid-template-columns:42px minmax(180px,1fr) auto 18px}.request-row:hover{background:#f4f8f6}.request-row>div:nth-child(2),.event-row>div:nth-child(2){display:grid;gap:.25rem}.request-row span,.event-row span{color:#667a73;font-size:.76rem}.request-icon{align-items:center;background:#e7f2ee;color:#167a68;display:flex;height:38px;justify-content:center;width:38px}.event-row{grid-template-columns:52px minmax(200px,1fr) auto auto}.event-date{align-items:center;background:#edf3f1;display:flex;flex-direction:column;justify-content:center;min-height:50px}.event-date strong{font-size:1.1rem}.event-date span{text-transform:uppercase}.status{background:#edf2f0;border-radius:3px;color:#4a625b;display:inline-flex;font-size:.7rem;font-weight:800;padding:.35rem .5rem;white-space:nowrap}.status-verified,.status-available-for-match,.status-open,.status-completed{background:#e4f3eb;color:#176846}.status-cancelled,.status-rejected,.status-failed{background:#f9e7e5;color:#8f3029}.status-matching,.status-reserved-in-potential-match{background:#fff1cf;color:#77550c}.registration-form{display:grid;gap:1rem}.registration-form section{background:#fff;border:1px solid #d8e2df;padding:1.25rem}.registration-form h2{font-size:1rem;margin:0 0 1rem}.section-heading{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.section-heading h2{margin-bottom:.2rem}.section-heading p{color:#677a74;font-size:.78rem;margin:0}.form-grid{display:grid;gap:1rem;grid-template-columns:1fr 1fr}.form-grid label,.seat-entry label{color:#496159;display:grid;font-size:.75rem;font-weight:750;gap:.35rem}.form-grid .wide{grid-column:1 / 3}.form-grid input,.form-grid select,.form-grid textarea,.seat-entry input,.seat-entry select{background:#fff;border:1px solid #aebfba;border-radius:3px;color:#18332d;min-height:42px;padding:.55rem .65rem;width:100%}.form-grid textarea{min-height:82px;resize:vertical}.form-grid input:disabled{background:#edf2f0;color:#60736d}.seat-entry{align-items:end;background:#f7f9f8;border-left:3px solid #24816d;display:grid;gap:.65rem;grid-template-columns:70px 1.25fr 1fr .75fr .6fr .6fr 34px;margin-top:.65rem;padding:.8rem}.seat-entry>strong{align-self:center;font-size:.78rem}.icon-danger{align-items:center;background:transparent;border:0;color:#a53b33;display:flex;height:40px;justify-content:center;padding:0;width:34px}.terms-section .guarantee{margin-top:0}.form-actions{align-items:center;display:flex;gap:.75rem;justify-content:flex-end;margin-top:.25rem}.notice{align-items:center;background:#fff4d9;border-left:4px solid #c28922;display:flex;gap:.65rem;margin-bottom:1rem;padding:.8rem 1rem}.detail-table{background:#fff;border:1px solid #d8e2df}.detail-table>div{align-items:center;border-bottom:1px solid #e4ebe8;display:grid;gap:1rem;grid-template-columns:130px 1fr auto;min-height:58px;padding:.7rem 1rem}.detail-table span:first-child{color:#687a74;font-size:.72rem}.detail-table strong{font-size:.82rem}.auth-shell{background:#fff;display:grid;grid-template-columns:minmax(360px,1fr) minmax(410px,42%);min-height:100vh;padding-top:34px;position:relative}.auth-shell>.uat-bar{left:0;position:absolute;right:0;top:0}.auth-scene{align-items:flex-end;background:linear-gradient(0deg,#09231dcc,#09231d1f),url(/assets/stadium-offer-header.png) center/cover;color:#fff;display:flex;min-height:calc(100vh - 34px);padding:4rem max(2rem,calc((100vw - 1120px)/2))}.auth-scene h1{color:#fff;max-width:600px}.auth-panel{align-items:center;display:flex;justify-content:center;padding:2rem}@media(max-width:760px){.portal-header{gap:.75rem;grid-template-columns:1fr 32px}.portal-header nav{grid-column:1 / 3;grid-row:2;justify-content:stretch}.portal-header nav a{flex:1;justify-content:center}.page-heading{align-items:stretch;flex-direction:column;gap:1rem}.event-row{grid-template-columns:48px 1fr}.event-row>.status,.event-row>.secondary{justify-self:stretch}.request-row{grid-template-columns:38px 1fr 16px}.request-row>.status{grid-column:2;grid-row:2;justify-self:start}.request-row>svg{grid-column:3;grid-row:1 / 3}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:1}.seat-entry{align-items:stretch;grid-template-columns:1fr 1fr}.seat-entry>strong{grid-column:1 / 3}.seat-entry .icon-danger{grid-column:2;justify-self:end}.auth-shell{display:block}.auth-scene{min-height:230px;padding:2rem 1.25rem}.auth-panel{min-height:560px;padding:1rem}.detail-table>div{grid-template-columns:1fr;gap:.35rem}}
