/* SOURCE: assets/app.css */
:root{color-scheme:dark;--bg:#050b12;--surface:#0b1828;--surface2:#102238;--line:#20384f;--muted:#9bb0c4;--text:#f4f8fc;--blue:#259bff;--red:#ff3945;--green:#58daa8;--amber:#ffc260;--shadow:0 18px 55px #0005;font-family:Inter,Arial,sans-serif;font-size:15px;line-height:1.5}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 90% 0,#102b46 0,transparent 42%),var(--bg);color:var(--text);min-height:100vh}a{color:inherit;text-decoration:none}a:hover{color:#8ecaff}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}button:focus-visible,a:focus-visible,input:focus,textarea:focus,select:focus{outline:2px solid var(--blue);outline-offset:3px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(1.8rem,4vw,3.25rem);line-height:1.1;letter-spacing:-.045em;margin-bottom:16px}h2{font-size:1.4rem;letter-spacing:-.025em}h3{font-size:1.08rem}p{color:var(--muted)}small,.muted{color:var(--muted)}hr{border:0;border-top:1px solid var(--line);margin:22px 0}.skip{position:fixed;top:-60px;left:20px;background:var(--blue);z-index:100;padding:10px}.skip:focus{top:10px}.topbar{height:84px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #20384faa;background:#07111de8;gap:20px}.brand{display:flex;gap:15px;align-items:center}.brand img{width:58px;height:58px;object-fit:contain}.brand strong{display:block;letter-spacing:.12em;font-size:13px}.brand small{display:block;font-size:11px;letter-spacing:.12em}.topbar nav{display:flex;align-items:center;gap:24px;font-size:13px;font-weight:700}.topbar nav a.active{color:var(--blue)}.preview{padding:10px 4vw;background:#263020;border-bottom:1px solid #897b3438;color:#efe3b1;font-size:12px;display:flex;align-items:center;gap:12px}.preview b{white-space:nowrap;font-size:10px;border:1px solid #887943;border-radius:4px;padding:2px 6px;letter-spacing:.08em}.preview a{margin-left:auto;color:#ffdf9e;text-decoration:underline}.wrapper{max-width:1280px;margin:auto;padding:36px 30px 60px}.eyebrow{color:var(--blue);font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;margin:0 0 12px;display:block}.hero{display:flex;align-items:end;justify-content:space-between;gap:28px;margin:8px 0 32px}.hero p{max-width:620px;margin-bottom:0}.hero .meta-chip{white-space:nowrap}.meta-chip,.badge{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:100px;padding:6px 12px;font-size:11px;font-weight:700;background:#132439;line-height:1.3}.badge.green{color:var(--green);background:#10392a;border-color:#286349}.badge.red{color:#ffa5ac;background:#3c1c29;border-color:#773542}.badge.amber{color:#ffdb92;background:#382d1a;border-color:#726033}.badge.blue{color:#9ad1ff;background:#102f4f;border-color:#235985}.layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:26px;align-items:start}.panel{background:linear-gradient(135deg,#0e2035,var(--surface));border:1px solid var(--line);border-radius:16px;padding:26px;box-shadow:var(--shadow);margin-bottom:22px}.panel h2{margin-bottom:18px}.panel.flat{box-shadow:none}.summary{position:sticky;top:22px}.summary-cover{height:114px;border-radius:12px;object-fit:cover;width:100%;margin-bottom:20px}.summary .line{display:flex;justify-content:space-between;gap:15px;font-size:13px;margin-bottom:12px}.summary .line span:first-child{color:var(--muted)}.total{display:flex;align-items:baseline;justify-content:space-between;font-size:15px;font-weight:700;padding-top:20px;margin-top:20px;border-top:1px solid var(--line)}.total strong{font-size:32px;letter-spacing:-.04em}.saving{padding:11px 13px;background:#103627;border:1px solid #266749;border-radius:8px;margin:12px 0;color:#8de2bc;font-size:12px}.stepper{display:flex;gap:0;margin:0 0 28px;padding:0;list-style:none}.stepper li{flex:1;display:flex;align-items:center;gap:8px;color:#6e879e;font-size:11px;font-weight:700;position:relative}.stepper li:after{content:'';height:1px;background:var(--line);flex:1;margin:0 12px}.stepper li:last-child:after{display:none}.stepper span{width:27px;height:27px;display:grid;place-items:center;background:#122538;border:1px solid #2c4359;border-radius:100%;font-size:12px}.stepper li.active{color:var(--text)}.stepper li.active span{color:white;background:var(--blue);border-color:var(--blue)}.activity-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:22px}.activity-card{height:224px;display:flex;align-items:end;position:relative;overflow:hidden;border-radius:14px;padding:21px;text-align:left;color:white;background:#102338;border:2px solid #263b50}.activity-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.57;transition:transform .3s}.activity-card:before{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#000e,transparent 90%);z-index:1}.activity-card>span{position:relative;z-index:2}.activity-card strong{font-size:25px;letter-spacing:-.035em;display:block}.activity-card small{color:#d6e2ed}.activity-card:hover img{transform:scale(1.03)}.activity-card.selected{border-color:var(--red)}.activity-card.laser.selected{border-color:var(--blue)}.activity-card .checkmark{position:absolute;top:13px;right:13px;background:var(--red);width:24px;height:24px;display:grid;place-items:center;border-radius:50%;font-size:12px;z-index:3}.activity-card.laser .checkmark{background:var(--blue)}.option-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0 22px}.option{color:var(--text);padding:15px 12px;background:#091726;border:1px solid var(--line);border-radius:10px;text-align:left;display:flex;flex-direction:column;gap:5px}.option.selected{background:#123650;border-color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue)}.option strong{font-size:14px}.option b{font-size:21px}.option small{font-size:11px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:16px;min-width:0}.field label{font-weight:700;font-size:12px;color:#d0ddeb}.field small{font-size:11px}input,select,textarea{width:100%;padding:12px 13px;border:1px solid #2a4158;background:#071321;color:var(--text);border-radius:8px;min-height:44px}textarea{min-height:95px;resize:vertical}input[type=checkbox]{width:18px;height:18px;min-height:0;accent-color:var(--blue);flex-shrink:0}input[type=file]{font-size:12px}input[type=number]{max-width:100%}input[readonly]{color:var(--muted)}.fields{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.fields.three{grid-template-columns:repeat(3,1fr)}.check{display:flex;align-items:start;gap:9px;margin:13px 0;font-size:12px;color:#c0d0df}.check input{margin-top:2px}.btn{border:1px solid transparent;background:var(--blue);color:#021222;border-radius:9px;font-size:13px;font-weight:800;padding:12px 18px;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;line-height:1.35}.btn:hover{filter:brightness(1.1);color:#011120}.btn.secondary{background:#14283d;color:#e3edf6;border-color:#30475d}.btn.ghost{background:transparent;color:var(--muted);border-color:var(--line)}.btn.danger{background:#40202b;color:#ffafb6;border-color:#743244}.btn.success{background:#58daa8;color:#06251b}.btn.small{padding:7px 10px;min-height:34px;font-size:11px}.btn.full{width:100%}.actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:20px}.actions.between{justify-content:space-between}.hint,.notice{border-left:3px solid var(--blue);background:#10283d;padding:12px 14px;font-size:12px;color:#bbd0e3;margin:15px 0;border-radius:0 8px 8px 0}.notice.warning{background:#352c1b;border-color:var(--amber);color:#f0d49f}.notice.error{background:#3a202b;border-color:var(--red);color:#ffd0d3}.notice.success{background:#103728;border-color:var(--green);color:#b0edcd}.slots{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.slot{border:1px solid var(--line);color:var(--text);background:#091624;padding:13px 6px;border-radius:9px;text-align:center}.slot strong{display:block;font-size:14px}.slot small{display:block;margin-top:4px;font-size:10px}.slot.selected{border-color:var(--blue);background:#103858}.slot:disabled{text-decoration:none;background:#0a121b;opacity:.48}.empty{text-align:center;padding:38px 20px;color:var(--muted);border:1px dashed #35506b;border-radius:12px}.empty strong{display:block;color:#d9e7f3;margin-bottom:9px}.calendar-toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:20px}.calendar-toolbar input{width:175px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(125px,1fr));gap:8px;min-width:940px}.calendar-scroll{overflow:auto;padding-bottom:10px}.calendar-day{background:#081522;border:1px solid var(--line);border-radius:9px;min-height:270px;padding:10px}.calendar-day h3{font-size:11px;text-transform:uppercase;letter-spacing:.03em;margin-bottom:16px;color:#9aafc3}.cal-event{padding:10px 9px;background:#411e2a;border-left:3px solid var(--red);border-radius:5px;margin-bottom:8px;font-size:11px;overflow-wrap:anywhere}.cal-event.laser{background:#133758;border-color:var(--blue)}.cal-event.closed{background:#2a2b2f;border-color:#8b98a4}.cal-event b{display:block;font-size:10px;margin-bottom:5px}.cal-event small{display:block;color:#c1c9d2}.calendar-key{display:flex;gap:20px;color:var(--muted);font-size:11px;margin-top:14px}.calendar-key i{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:6px;background:var(--red)}.calendar-key .laser i{background:var(--blue)}.admin-layout{display:grid;grid-template-columns:232px minmax(0,1fr);min-height:calc(100vh - 118px)}.sidebar{border-right:1px solid var(--line);background:#071421;padding:28px 16px}.sidebar .nav-group{color:#607f9c;text-transform:uppercase;letter-spacing:.1em;font-size:10px;font-weight:800;margin:21px 12px 9px}.sidebar a{display:flex;gap:10px;padding:10px 12px;margin-bottom:3px;font-size:12px;color:#aac0d3;border-radius:7px;align-items:center}.sidebar a.active{background:#153854;color:#e8f4ff;border-left:3px solid var(--blue);padding-left:9px}.sidebar a:hover{background:#112c44;color:white}.sidebar .nav-icon{width:17px;opacity:.7}.admin-main{padding:32px;max-width:1550px;width:100%}.admin-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:2px 0 24px}.admin-heading h1{font-size:30px;margin:0 0 8px}.admin-heading p{margin:0;font-size:12px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:24px}.stat{border:1px solid var(--line);border-radius:12px;background:linear-gradient(140deg,#102943,#091727);padding:22px}.stat .value{font-size:32px;font-weight:800;letter-spacing:-.055em;display:block;margin:6px 0}.stat small{font-size:11px}.stat .statlabel{font-size:11px;color:#aec2d4}.split{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px;white-space:nowrap}th{color:#7d9bb5;font-size:10px;text-transform:uppercase;letter-spacing:.06em;font-weight:700;text-align:left;padding:12px 13px;border-bottom:1px solid var(--line)}td{padding:14px 13px;border-bottom:1px solid #1b3147;max-width:350px;white-space:normal;overflow-wrap:anywhere}tr:last-child td{border-bottom:0}td .sub{display:block;color:var(--muted);font-size:10px;margin-top:4px}td .actions{margin:0;min-width:70px}td strong{font-size:12px}.row-cards{display:flex;flex-direction:column;gap:12px}.row-card{background:#0a1929;border:1px solid var(--line);padding:17px 19px;border-radius:10px;display:flex;align-items:center;justify-content:space-between;gap:20px}.row-card p{margin:3px 0 0;font-size:11px}.row-card h3{margin:0;font-size:13px}.switch{position:relative;width:42px;height:25px;display:inline-flex;flex-shrink:0;cursor:pointer}.switch input{opacity:0;width:1px;height:1px;position:absolute}.switch span{position:absolute;inset:0;background:#354252;border:1px solid #536175;border-radius:30px}.switch span:before{content:'';position:absolute;width:17px;height:17px;left:3px;top:3px;border-radius:50%;background:#bed0df;transition:.15s}.switch input:checked+span{background:#1c688d;border-color:#309cbe}.switch input:checked+span:before{transform:translateX(17px);background:#b1f0ff}.switch input:disabled+span{opacity:.35;cursor:not-allowed}.switch input:focus-visible+span{outline:2px solid var(--blue);outline-offset:3px}.module-head{display:flex;align-items:center;gap:10px;margin:25px 0 15px;font-size:12px;letter-spacing:.05em;text-transform:uppercase;color:#afc9de}.tiny{font-size:10px}.link{color:#72bdff;text-decoration:underline}.login-layout{display:grid;grid-template-columns:1.1fr 1fr;min-height:calc(100vh - 84px);max-width:1400px;margin:auto}.login-art{background:linear-gradient(0deg,#061220 4%,#06122077 60%),url('../../assets/img/venue-immersive.webp') center/cover;min-height:550px;display:flex;align-items:end;padding:55px}.login-art h1{font-size:56px;max-width:480px}.login-form{align-self:center;padding:60px;max-width:540px;width:100%;margin:auto}.login-form h2{font-size:30px}.login-form>p{font-size:13px}.loading{padding:80px 20px;text-align:center}.loading img{height:90px;width:90px;object-fit:contain;margin-bottom:20px}.loading p:after{content:' ';display:inline-block;width:12px;height:12px;border:2px solid #45617b;border-top-color:#56afff;border-radius:50%;margin-left:10px;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.footer{text-align:center;color:#5e7e9a;font-size:10px;padding:24px 10px}.footer a{margin:0 10px}#toast{position:fixed;bottom:26px;right:26px;z-index:1000;max-width:420px;background:#123f31;border:1px solid #407b65;border-radius:12px;padding:15px 21px;box-shadow:var(--shadow);color:#daffed;font-size:13px;display:none}#toast.error{background:#502632;border-color:#a14960;color:#ffdae0}dialog{color:var(--text);background:#0c1d30;border:1px solid #38536e;border-radius:16px;max-width:760px;width:calc(100% - 30px);max-height:90vh;padding:28px;box-shadow:0 35px 80px #0009}dialog::backdrop{background:#010912c9;backdrop-filter:blur(4px)}.dialog-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.dialog-top h2{margin:0}.close-btn{border:0;background:#1d354b;color:white;width:33px;height:33px;border-radius:7px;cursor:pointer}.form-error{padding:12px;background:#4a1f30;color:#ffbbca;font-size:12px;border-radius:8px;margin:10px 0}.qr-wrap{padding:15px;background:white;border-radius:12px;width:max-content;max-width:100%;margin:20px auto}.qr-wrap canvas{display:block;width:180px;height:180px;max-width:100%}.progress{height:7px;background:#1c3148;border-radius:8px;overflow:hidden;margin:12px 0}.progress>span{display:block;height:100%;background:var(--green)}.seats{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.seat{border:1px solid var(--line);border-radius:10px;background:#0a1b2b;padding:12px 8px;text-align:center;font-size:12px}.seat label{display:flex;flex-direction:column;align-items:center;gap:8px}.seat.paid{background:#143c2e;border-color:#37654f;color:#90e4b9}.seat b{font-size:13px}.game-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.game-card{padding:0;overflow:hidden;display:flex;flex-direction:column}.game-card .photo{height:140px;width:100%;object-fit:cover;filter:brightness(.7)}.game-card .inside{padding:20px;flex:1}.game-card h3{font-size:18px}.game-card .actions{margin-top:15px}.listitem{padding:15px 0;border-bottom:1px solid var(--line)}.listitem:last-child{border:0}.listitem strong{display:block}.listitem p{margin:5px 0;font-size:12px}.screen-mode .topbar,.screen-mode .preview,.screen-mode .footer{display:none}.screen-mode .wrapper{max-width:none;padding:45px}.screen-mode h1{font-size:52px}.screen-mode .cal-event{font-size:22px}.screen-mode .calendar-grid{grid-template-columns:1fr}.screen-mode .calendar-day h3{font-size:25px}.screen-mode .cal-event b{font-size:24px}.hidden{display:none!important}.kpi-mini{display:flex;justify-content:space-between;padding:11px 0;border-bottom:1px solid var(--line);font-size:12px}.kpi-mini strong{color:white}.raw-report{max-height:270px;overflow:auto;font-size:11px;background:#061321;padding:15px;border-radius:9px;white-space:pre-wrap;overflow-wrap:anywhere}.datestrip{display:flex;gap:10px;overflow:auto;margin-bottom:20px}.datestrip button{flex:1;min-width:72px;padding:12px;background:#0b1b2b;border:1px solid var(--line);color:white;border-radius:9px}.datestrip button.active{background:#123955;border-color:var(--blue)}.datestrip small{display:block}.datestrip b{display:block;font-size:23px}
@media(max-width:1150px){.topbar nav{gap:15px}.layout{grid-template-columns:minmax(0,1fr) 280px}.sidebar{padding:20px 10px}.admin-layout{grid-template-columns:195px 1fr}.admin-main{padding:26px 22px}.stats{gap:10px}.stat{padding:17px}.split{grid-template-columns:1fr}.game-grid{grid-template-columns:1fr 1fr}}
@media(max-width:850px){.topbar{height:auto;min-height:74px;padding:12px 20px;flex-wrap:wrap;gap:10px}.brand img{height:44px;width:44px}.brand strong{font-size:11px}.topbar nav{width:100%;overflow-x:auto;white-space:nowrap;padding:8px 0 1px;justify-content:space-between;font-size:11px}.preview{padding:10px 20px;align-items:start;font-size:10px}.preview a{display:none}.wrapper{padding:26px 20px}.hero{align-items:start}.hero .meta-chip{display:none}.layout{grid-template-columns:1fr}.summary{position:static}.summary-cover{display:none}.admin-layout{grid-template-columns:1fr}.sidebar{border-bottom:1px solid var(--line);border-right:0;padding:12px;display:flex;overflow-x:auto;gap:6px}.sidebar .nav-group{display:none}.sidebar a{white-space:nowrap;flex-shrink:0;margin:0;font-size:11px;padding:9px}.sidebar a.active{border-left:0;border-bottom:2px solid var(--blue);padding:9px}.admin-main{padding:25px 18px}.stats{grid-template-columns:repeat(2,1fr)}.login-layout{grid-template-columns:1fr}.login-art{display:none}.login-form{padding:45px 25px}.panel{padding:21px}.stepper li{font-size:10px}.stepper li:after{margin:0 7px}.game-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.activity-card{height:176px;padding:14px}.activity-card strong{font-size:22px}.activity-card small{font-size:10px}.option-grid{grid-template-columns:1fr 1fr}.option-grid .option:last-child:nth-child(3){grid-column:1/-1;flex-direction:row;align-items:center;justify-content:space-between;gap:12px}.fields,.fields.three{grid-template-columns:1fr}.slots{grid-template-columns:repeat(2,1fr)}.hero p{font-size:12px}.stepper li{gap:5px}.stepper li:after{margin:0 5px}.stepper span{width:23px;height:23px;font-size:10px}.panel{padding:18px}.admin-heading{align-items:start;flex-direction:column}.admin-heading h1{font-size:27px}.game-grid{grid-template-columns:1fr}.seats{grid-template-columns:repeat(3,1fr)}.row-card{gap:12px;padding:14px}.row-card .actions{margin:0}.stat .value{font-size:28px}dialog{padding:20px}#toast{bottom:15px;right:15px;left:15px;max-width:none}.calendar-grid{min-width:880px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

.auth-shell{max-width:680px;margin:45px auto;padding:25px}.auth-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:32px}.auth-logo{width:86px;height:86px;object-fit:contain;margin-bottom:20px}.auth-card label{display:block;font-size:13px;margin:14px 0}.auth-card label input{margin-top:8px}.auth-card button{width:100%;margin-top:15px}.auth-card h1{font-size:32px}
/* 1.1 planning and player operations */
.calendar-tools{display:flex;justify-content:space-between;gap:18px;align-items:center;flex-wrap:wrap;margin:18px 0}.segmented{display:flex;gap:4px;padding:4px;background:var(--surface,#142033);border-radius:12px}.segmented button{border:0;padding:10px 14px;background:transparent;color:inherit;border-radius:9px;cursor:pointer}.segmented button.selected{background:#1765e3;color:white}.availability-grid{display:grid;gap:6px}.availability-grid.month{grid-template-columns:repeat(7,minmax(0,1fr))}.availability-grid.days{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}.weekday{font-size:12px;opacity:.65;text-align:center;padding:5px}.day-cell{min-height:75px;background:#122239;color:#eef3ff;border:1px solid #294567;border-radius:10px;padding:10px 5px;display:flex;flex-direction:column;gap:6px;align-items:center;cursor:pointer}.day-cell span{font-size:10px}.day-cell strong{font-size:19px}.day-cell:disabled{opacity:.36;cursor:default;border-color:transparent}.day-cell.selected{outline:2px solid #2d8bff;background:#193d65}.available-slots{margin:22px 0}.slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(122px,1fr));gap:9px}.slot{padding:14px;border:1px solid #35567a;border-radius:10px;background:#122239;color:#fff;cursor:pointer;display:flex;flex-direction:column;gap:6px}.slot span{font-size:11px}.public-calendar.month{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.public-calendar.days{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.public-day{background:#101e30;border:1px solid #263951;border-radius:12px;padding:9px;min-height:132px}.public-day h3{margin:0 0 8px;font-size:15px}.public-event{display:flex;flex-direction:column;width:100%;gap:6px;padding:9px;margin-bottom:7px;border:0;border-left:3px solid #348efa;border-radius:5px;background:#163351;color:#f1f6ff;text-align:left;overflow-wrap:anywhere}.public-event[data-join]{cursor:pointer}.public-event[data-join]:hover{background:#214c76}.public-event.laser{border-left-color:#f07070;background:#432837}.public-event.closed{border-left-color:#8190a0;background:#282d34}.public-event strong{font-size:12px;line-height:1.4}.public-event small,.event-time{font-size:10px;line-height:1.4}.roster-edit{display:grid;gap:10px;margin:20px 0}.roster-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;background:#132236;border-radius:10px}.roster-row .field{margin:0}.seat-number{font-weight:800;opacity:.5}.roster-summary{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.player-table{width:100%;min-width:640px}.player-table th{white-space:nowrap}.player-table td{vertical-align:middle}.warn-text{display:block;font-size:11px;color:#edbd64}.session-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:14px;margin:18px 0}.stat{padding:20px;background:#14243b;border:1px solid #2a405f;border-radius:12px;display:flex;flex-direction:column;gap:12px}.stat strong{font-size:27px}.stat span{font-size:12px;opacity:.7}.permission-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:25px}.gift-code{font-family:monospace;font-size:24px;letter-spacing:2px;overflow-wrap:anywhere;padding:20px;background:#10233b}.activity-switch{display:flex;gap:12px;margin-bottom:20px}.service-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:20px 0}.service-card{display:flex;flex-direction:column;gap:10px;text-align:left;padding:20px;background:#14273f;border:1px solid #355376;border-radius:12px;color:inherit;cursor:pointer}.service-card.selected{outline:2px solid #3f93ff}.steps{display:flex;gap:10px;margin:0 0 25px;flex-wrap:wrap}.steps span{padding:12px;border-bottom:2px solid #284461;opacity:.6}.steps span.active{opacity:1;border-color:#4c9bff}pre{max-width:100%;overflow:auto;font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere}dialog{max-width:min(920px,95vw)}
@media(max-width:750px){.public-calendar.month{grid-template-columns:repeat(2,minmax(0,1fr))}.public-calendar.month .weekday,.calendar-pad{display:none}.public-day{min-height:100px}.availability-grid.month{gap:3px}.day-cell{min-height:62px;padding:7px 2px}.day-cell span{font-size:9px}.day-cell strong{font-size:16px}.roster-row{gap:6px;padding:10px;grid-template-columns:20px minmax(0,1fr)}.roster-row>.check{grid-column:2}.permission-grid{grid-template-columns:1fr}.calendar-tools{gap:12px}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero h1{font-size:34px}.summary{position:static!important}.public-event strong{font-size:13px}}

@media(max-width:600px){.availability-grid.month .day-cell span{display:none}.availability-grid.month .day-cell:after{content:attr(data-count);font-size:10px;line-height:1.3;color:#b6d4f5}.availability-grid.month .day-cell:disabled:after{content:"\2014"}.availability-grid.month .day-cell{min-height:53px;gap:6px;overflow:hidden}.steps{gap:4px;flex-wrap:nowrap;justify-content:space-between}.steps span{font-size:11px;padding:9px 3px;white-space:nowrap}.topbar nav{flex-wrap:wrap;white-space:normal;overflow:visible;justify-content:flex-start;gap:12px}.topbar nav a{white-space:nowrap}.hero{gap:14px}.hero>.btn{max-width:125px;padding:12px}.hero h1{font-size:31px}}

/* Authentication: show error panels only when they contain a message. */
.form-error:empty{display:none}
/* Systempay 2.7: scope contrast fixes, no overrides inside hosted card iframes. */

/* SOURCE: assets/admin.css */
/* Admin 1.2: compact navigation, readable records and scheduling workspace. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.ui-icon{width:19px;height:19px;flex:none;vertical-align:middle}
.detail-tabs{display:flex;gap:8px;border-bottom:1px solid #d6dfe9;margin:20px 0 24px;overflow-x:auto;white-space:nowrap}
.detail-tabs a{padding:13px 16px;text-decoration:none;border-bottom:3px solid transparent;color:inherit;opacity:.75;font-weight:650}
.detail-tabs a.active{border-bottom-color:#297bc9;opacity:1;color:#297bc9}
.address-details{padding:14px 0;margin:12px 0}.address-details summary,.billing-summary summary{cursor:pointer;font-weight:650;padding:8px 0}
.billing-fields{margin:14px 0}.contact-links{display:flex;gap:16px;flex-wrap:wrap}.contact-links a{word-break:break-word}
.booking-contact{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}
.booking-contact h2{margin:8px 0 12px}.billing-summary{margin-top:12px}
body.admin-mode{background:#f4f6fa;color:#1b2b40;--primary:#2470ba;--background:#f4f6fa;--surface:#fff;--text:#1b2b40;--muted:#66798e;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:14px;line-height:1.5}
.admin-mode *{box-sizing:border-box}.admin-mode h1,.admin-mode h2,.admin-mode h3,.admin-mode b,.admin-mode strong{color:inherit}
.admin-mode h1{font-size:28px;letter-spacing:-.8px;line-height:1.2;margin:5px 0 8px}.admin-mode h2{font-size:18px;letter-spacing:-.3px;margin:0 0 12px}.admin-mode h3{font-size:16px;margin:12px 0}
.admin-mode p{color:#677990;font-size:14px;line-height:1.65}.admin-mode .hint,.admin-mode .tiny{color:#768599;font-size:12px}
.admin-mode a{color:#246caf}.admin-mode a:hover{text-decoration:none}.admin-mode .muted{color:#768599}
.admin-mode fieldset{border:0;padding:0;margin:0;min-width:0}.admin-mode fieldset:disabled{opacity:.85}
.admin-app{display:flex;min-height:100vh}.admin-sidebar{width:244px;position:fixed;inset:0 auto 0 0;z-index:50;background:#102337;color:#c6d2de;display:flex;flex-direction:column;border-right:1px solid #20354a;overflow-y:auto;padding:0 14px}
.admin-brand{display:flex;gap:9px;align-items:center;padding:24px 6px;text-decoration:none;color:#fff!important;flex-shrink:0}.admin-brand img{width:42px;height:42px;object-fit:contain}.admin-brand b{font-size:16px;letter-spacing:1px}.admin-brand small{display:block;font-size:8px;letter-spacing:1.25px;color:#8399b0;margin-top:3px}
.admin-sidebar .admin-create{display:flex;justify-content:center;padding:11px 8px;background:#2b78c5;color:#fff;border:0;margin:0 4px 22px;font-weight:650;border-radius:9px;font-size:13px}
.admin-sidebar nav{flex:1}.admin-nav-label{font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:#8297ad;padding:0 12px 10px}
.admin-nav-link{display:flex;align-items:center;gap:10px;padding:10px 12px;margin-bottom:3px;color:#bbcddd!important;font-size:13px;border-radius:8px;line-height:1.4;text-decoration:none;transition:background .12s}
.admin-nav-link .ui-icon{color:#839fbb;width:18px;height:18px}.admin-nav-link:hover{background:#1d3349;color:#fff!important}.admin-nav-link.active{background:#244c74;color:#fff!important;box-shadow:inset 3px 0 #64afea}.admin-nav-link.active .ui-icon{color:#a5d8ff}
.admin-nav-section{border-top:1px solid #25394d;margin-top:14px;padding-top:8px}.admin-nav-section summary{display:flex;align-items:center;justify-content:space-between;list-style:none;cursor:pointer;color:#c2d0df;padding:11px 12px;font-weight:650;font-size:12px}.admin-nav-section summary::-webkit-details-marker{display:none}.admin-nav-section summary span{transition:transform .2s}.admin-nav-section[open] summary span{transform:rotate(180deg)}.admin-nav-section .admin-nav-link{font-size:12px;padding:9px 12px}
.sidebar-foot{display:flex;align-items:center;gap:6px;color:#9ab0c7;border-top:1px solid #283b4d;padding:20px 5px;margin-top:20px;font-size:11px}.sidebar-foot .tiny{margin-left:auto;color:#8099b2}.environment-dot{width:7px;height:7px;border-radius:50%;background:#44c69b}.environment-dot.private{background:#ebbb59}
.admin-workspace{margin-left:244px;width:calc(100% - 244px);min-width:0;display:flex;flex-direction:column}.admin-topbar{position:sticky;top:0;z-index:30;display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:78px;padding:12px 30px;background:rgba(255,255,255,.96);border-bottom:1px solid #e3e9f1;backdrop-filter:blur(12px)}
.admin-breadcrumb{display:flex;align-items:center;gap:12px;min-width:0;font-size:13px}.admin-breadcrumb>span:first-of-type{color:#8290a2}.crumb-separator{color:#ccd6e0}.admin-breadcrumb strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:280px;font-size:13px}
.admin-tools{display:flex;align-items:center;gap:16px}.command-button{display:flex;align-items:center;gap:9px;background:#f4f7fb;border:1px solid #e1e8ef;color:#76879b;border-radius:8px;padding:9px 11px;cursor:pointer;font-family:inherit;font-size:12px}.command-button .ui-icon{width:16px;height:16px}.command-button kbd{background:#fff;border:1px solid #dbe3eb;border-radius:4px;padding:1px 4px;font-size:10px;margin-left:8px}
.user-menu{display:flex;align-items:center;gap:9px;border:0;background:none;cursor:pointer;text-align:left;padding:0;color:#263c53;font-size:12px;font-weight:650}.user-menu small{display:block;font-size:10px;color:#7b899b;font-weight:400}.user-avatar{width:35px;height:35px;border-radius:50%;background:#e8f1fb;color:#306aa7;display:grid;place-items:center;font-weight:700}
.admin-main{max-width:1800px;margin:0 auto;padding:28px 30px 40px;width:100%;flex:1;min-width:0}.admin-footer{padding:16px 30px;border-top:1px solid #e5eaf0;color:#95a0ad;font-size:11px;display:flex;justify-content:space-between}.admin-footer span{color:#7b8d9f}
.admin-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:25px}.admin-heading .eyebrow{font-size:9px;letter-spacing:1.6px;color:#8a9aab;font-weight:700}.admin-heading p{margin:4px 0}.heading-actions{flex-shrink:0;display:flex;gap:8px}
.admin-mode .panel{background:#fff;border:1px solid #e1e8f0;border-radius:12px;padding:22px;box-shadow:0 3px 8px rgba(17,41,66,.025);margin-bottom:20px;color:#1b2b40;min-width:0}.admin-mode .panel h2{color:#24394e}.admin-mode .panel hr{border:0;border-top:1px solid #e4eaf1;margin:22px 0}
.admin-mode .btn{background:#246fb8;color:#fff;border:1px solid #246fb8;border-radius:8px;padding:10px 15px;font-size:13px;font-weight:650;box-shadow:none;text-transform:none;letter-spacing:0;min-height:38px;gap:8px}
.admin-mode .btn:hover{background:#1b609f;border-color:#1b609f}.admin-mode .btn.secondary{background:#edf4fb;border-color:#d6e4f1;color:#2566a3}.admin-mode .btn.secondary:hover{background:#e2eef9}.admin-mode .btn.ghost{background:#fff;border-color:#dfe7f0;color:#586f85}.admin-mode .btn.ghost:hover{background:#f3f7fb;color:#2566a3}.admin-mode .btn.small{padding:6px 10px;font-size:12px;min-height:32px}.admin-mode .btn:disabled{opacity:.45;cursor:not-allowed}.admin-mode .text-button{background:none;border:0;padding:0;min-height:0;color:#246caf}
.admin-mode .actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.admin-mode .icon-button{width:36px;height:36px;display:inline-grid;place-items:center;padding:0;min-width:0;background:transparent;border:1px solid #e0e7ef;border-radius:8px;color:#647c94;cursor:pointer}.mobile-toggle{display:none!important}.sidebar-overlay{display:none}
.admin-mode .field{margin:0 0 14px;min-width:0}.admin-mode .field label{font-size:12px;font-weight:650;color:#52697f;margin-bottom:6px;display:block}.admin-mode input,.admin-mode select,.admin-mode textarea{background:#fff;border:1px solid #d9e2ec;color:#263a50;border-radius:7px;padding:10px 11px;width:100%;font-family:inherit;font-size:13px;outline:none;min-height:40px;box-shadow:none}.admin-mode input:focus,.admin-mode select:focus,.admin-mode textarea:focus{border-color:#5a9bda;box-shadow:0 0 0 3px #e9f3fc}.admin-mode input::placeholder,.admin-mode textarea::placeholder{color:#97a5b5}.admin-mode select{color-scheme:light}.admin-mode input[type=checkbox],.admin-mode input[type=radio]{width:16px;height:16px;min-height:0;accent-color:#2674bd}.admin-mode input[type=date]{color-scheme:light}.admin-mode .fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}.admin-mode .fields .field{margin-bottom:0}.admin-mode form .fields{margin:12px 0 22px}.admin-mode .check{font-size:13px;color:#5a6e85;display:flex;align-items:center;gap:8px;margin:12px 0}.admin-mode textarea{resize:vertical;min-height:100px}.admin-mode code{background:#eef3f8;color:#365672;padding:3px 6px;border-radius:4px}
.admin-mode .stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px}.admin-mode .stat{background:#fff;border:1px solid #e0e8f1;border-radius:12px;padding:20px;box-shadow:0 3px 8px rgba(17,41,66,.02);display:flex;flex-direction:column;gap:7px}.admin-mode .stat>span{font-size:12px;color:#75869a}.admin-mode .stat .value{font-size:32px;font-weight:750;line-height:1.2;letter-spacing:-1px;color:#213c55}.admin-mode .stat small{font-size:10px;color:#93a0af}.stat-heading{display:flex;justify-content:space-between;align-items:center;color:#71869b;font-size:12px}.stat-heading .ui-icon{color:#588abe}.admin-mode .stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin-bottom:20px}.admin-mode .stat-grid .stat strong{font-size:24px}
.dashboard-columns{display:grid;grid-template-columns:minmax(0,1fr) 286px;gap:22px;align-items:start}.dashboard-columns>.panel{overflow:hidden}.section-title{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:20px}.section-title h2{margin:0!important}.section-title p{font-size:12px;margin:5px 0 0}.quick-links{display:flex;flex-direction:column;gap:10px}.admin-mode .quick-links .btn{justify-content:flex-start;border:none;background:#f6f9fc}.admin-mode .quick-links .ui-icon{color:#6a8dab}.admin-mode .kpi-mini{display:flex;gap:10px;justify-content:space-between;border-bottom:1px solid #edf1f6;padding:12px 0;font-size:12px;color:#6a7f93}.admin-mode .kpi-mini b{color:#334d65}.admin-mode .kpi-mini:last-child{border:0}
.admin-mode .table-wrap{overflow:auto;border:0;border-radius:0}.admin-mode table{width:100%;border-collapse:collapse;font-size:13px;color:#445e74;white-space:normal}.admin-mode th{background:#f7f9fc;border-bottom:1px solid #e4ebf2;border-top:1px solid #edf1f6;padding:12px;color:#8796a6;font-weight:650;font-size:10px;letter-spacing:.6px;text-transform:uppercase;text-align:left}.admin-mode td{padding:15px 12px;border-bottom:1px solid #edf1f6;vertical-align:middle;background:transparent;white-space:normal}.admin-mode tr:last-child td{border-bottom:0}.admin-mode tr:hover td{background:#fbfcfe}.admin-mode td strong{font-weight:650;font-size:12px}.admin-mode td .sub{display:block;font-size:11px;color:#8b9aab;margin-top:4px;max-width:250px}.admin-mode .balance-due{color:#bf7d29!important}.source-label{font-size:10px;color:#8296a8;display:inline-block;margin:4px 5px 0 0}.admin-mode .badge{display:inline-flex;align-items:center;font-size:10px;font-weight:600;letter-spacing:0;padding:4px 8px;border:0;border-radius:6px;margin:2px 3px 2px 0;white-space:normal;line-height:1.5}.admin-mode .badge.green{background:#e8f5ee;color:#26845e}.admin-mode .badge.amber{background:#fff4df;color:#aa791f}.admin-mode .badge.red{background:#feeeee;color:#b56868}.admin-mode .badge.blue{background:#eaf2fd;color:#487bb9}.admin-mode .badge.neutral{background:#edf1f6;color:#75869a}.admin-mode .notice{background:#edf5fd;color:#3e6b98;border:1px solid #d9e9f8;border-left:3px solid #77a5d3;border-radius:8px;padding:15px;font-size:13px;line-height:1.6;margin:16px 0}.admin-mode .notice.warning{background:#fff7e8;color:#916829;border-color:#f3e3bd}.admin-mode .empty{padding:42px 24px;color:#91a0b2;text-align:center;background:#fbfcfe;border:1px dashed #dfe6ee;border-radius:10px}.admin-mode .empty strong{display:block;color:#546c84;font-size:15px;margin-bottom:8px}
.filter-bar{display:flex;align-items:flex-end;gap:14px;flex-wrap:wrap;margin-bottom:18px}.filter-bar .field{margin:0!important;min-width:180px}.filter-bar .grow{flex:1}.table-caption{font-size:12px;color:#8396a8;padding:0 0 12px}.pagination{display:flex;justify-content:space-between;align-items:center;gap:14px;padding-top:18px;border-top:1px solid #edf1f5;color:#8a99aa;font-size:12px}.customer-cell{display:flex;align-items:center;gap:12px;text-decoration:none!important;color:#334d64!important}.customer-cell small{display:block;color:#8b9baf;font-size:11px;margin-top:3px}.initials{width:34px;height:34px;flex:none;border-radius:10px;background:#edf4fb;display:grid;place-items:center;font-size:11px;color:#5080b2;font-weight:700}.customer-context{display:flex;align-items:center;gap:12px;margin-top:-8px;margin-bottom:24px;color:#7b8da1;font-size:13px;flex-wrap:wrap}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.info-list{display:grid;grid-template-columns:120px minmax(0,1fr);gap:13px 16px;font-size:13px}.info-list dt{color:#8a98a9}.info-list dd{margin:0;word-break:break-word;color:#476176}.admin-mode .detail-tabs{margin:8px 0 24px}.admin-mode .detail-tabs a{padding:12px 8px;margin-right:12px;font-size:13px;color:#778b9e}.admin-mode .detail-tabs a.active{color:#246fb8}.deployment-card .step-dot{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;color:#4c82b6;background:#edf4fc;font-weight:750;font-size:13px;margin-bottom:16px}.health-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:22px 0}.health-grid>div{display:flex;flex-direction:column;gap:8px;padding:18px;background:#f7f9fc;border-radius:8px}.health-grid span{font-size:12px;color:#7e91a5}.health-grid strong{font-size:14px;color:#41617f}
.admin-mode #dialog{background:#fff;border:1px solid #dfe7ef;box-shadow:0 24px 80px #0e28413d;border-radius:14px;width:min(850px,calc(100vw - 32px));color:#254058;padding:26px;max-height:88vh;overflow:auto}.admin-mode #dialog::backdrop{background:rgba(10,26,43,.55);backdrop-filter:blur(3px)}.admin-mode #dialog .close-btn{color:#7c91a8;border:0;background:transparent;cursor:pointer;font-size:26px}.admin-mode #dialog h2{font-size:20px}.command-results{display:flex;flex-direction:column;max-height:55vh;overflow-y:auto}.command-results>a{display:flex;align-items:center;gap:15px;border-bottom:1px solid #eef2f6;padding:12px;color:#48627c;text-decoration:none}.command-results>a:hover{background:#f5f9fd}.command-results>a>span{flex:1;font-size:14px;font-weight:600}.command-results small{display:block;font-size:10px;color:#8b9eae;font-weight:400}.command-results .ui-icon{color:#7b9fc3}
.admin-mode .calendar-panel{padding:0;overflow:hidden}.admin-calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 22px;border-bottom:1px solid #edf2f7;flex-wrap:wrap}.admin-calendar-toolbar h2{font-size:17px;margin:0 0 0 12px;text-transform:capitalize}.admin-mode .segmented{display:inline-flex;border:1px solid #dfe8f0;background:#f4f7fb;padding:3px;border-radius:8px;gap:2px}.admin-mode .segmented button,.admin-mode .segmented a{background:transparent;border:0;border-radius:5px;padding:7px 12px;min-height:30px;font-family:inherit;font-size:12px;color:#6e879e;cursor:pointer;white-space:nowrap}.admin-mode .segmented .selected{color:#2976bd;background:#fff;box-shadow:0 1px 4px #12294a14;font-weight:650}.calendar-filters{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;padding:16px 22px}.calendar-filters .field{margin:0;flex:1;min-width:130px;max-width:195px}.calendar-filters .check{max-width:185px;font-size:11px!important;margin:0 2px 8px}.calendar-filters input,.calendar-filters select{min-height:36px;padding:8px 9px}.calendar-filters .field label{font-size:10px;color:#8b9caf}.calendar-legend{display:flex;gap:20px;align-items:center;padding:0 22px 17px;color:#8a9bad;font-size:11px}.calendar-legend>span{display:flex;align-items:center;gap:6px}.calendar-legend i{width:7px;height:7px;border-radius:2px;display:inline-block}.airsoft-dot{background:#419b94}.laser-dot{background:#628ec4}.closed-dot{background:#adb9c7}.calendar-total{margin-left:auto}
.admin-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid #e2eaf3}.month-weekday{padding:12px 6px;text-align:center;font-size:11px;background:#f8fafc;color:#8093a8;border-bottom:1px solid #e3ebf3}.month-day,.month-pad{min-height:176px;border-right:1px solid #e9eff5;border-bottom:1px solid #e9eff5;padding:7px;min-width:0}.month-pad{background:#f9fbfd}.month-day.today{background:#f5faff}.month-day header{display:flex;align-items:center;justify-content:space-between;gap:2px;height:30px;margin-bottom:4px}.month-day header button{border:0;background:none;min-width:27px;height:27px;cursor:pointer;color:#8497ad;font-weight:650;border-radius:7px;font-family:inherit}.month-day.today header button{background:#2f7bbc;color:#fff}.month-day header small{font-size:9px;color:#a2afbe}.admin-event{border:0;border-left:3px solid #63ada7;background:#eaf6f3;color:#396a66;cursor:pointer;font-family:inherit;text-align:left;border-radius:5px;overflow:hidden;display:block;padding:6px 7px}.admin-event.laser{background:#edf3fc;border-left-color:#83a8d6;color:#4d739e}.admin-event:hover{filter:brightness(.965);box-shadow:0 2px 6px #102e4e15}.admin-event.compact{width:100%;margin:5px 0;font-size:10px}.event-top{display:flex;justify-content:space-between;gap:6px;align-items:center;white-space:nowrap}.event-top b{font-size:10px!important;color:inherit}.event-top>span{font-size:8px;opacity:.8}.event-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px!important;font-weight:650!important;margin-top:3px}.event-meta,.event-state{display:block;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.83;margin-top:2px}.admin-event.status-cancelled,.admin-event.status-expired,.admin-event.status-no_show{opacity:.55;background:#f4f1f1;border-left-color:#c29c9c;color:#977a7a}.admin-event.status-cancelled .event-name,.admin-event.status-expired .event-name{text-decoration:line-through}.admin-event.status-waiting_payment,.admin-event.status-waiting_players{border-left-style:dashed}.more-events{border:0;background:transparent;cursor:pointer;font-size:10px;color:#738da4;padding:3px 0}.closed-pill{font-size:9px;background:#f1f3f6;color:#8c97a5;display:block;padding:3px 6px;border-radius:3px}
.admin-week-scroll{overflow:auto;max-height:900px;border-top:1px solid #e4ebf2;overscroll-behavior:contain}.admin-week{min-width:1000px}.week-header,.week-body{display:grid;grid-template-columns:55px repeat(7,minmax(0,1fr))}.week-header{position:sticky;top:0;z-index:8;background:#fff;border-bottom:1px solid #e2eaf3;height:77px}.time-zone-label{font-size:8px;color:#9cabbc;padding:28px 8px}.week-date{text-align:center;padding:10px;border-left:1px solid #f0f3f7;color:#7a8fa6}.week-date span{display:block;font-size:10px;text-transform:uppercase}.week-date strong{font-size:19px;display:grid;place-items:center;width:32px;height:32px;border-radius:9px;margin:4px auto 0}.week-date.today strong{background:#2d78b9;color:#fff}.week-body{position:relative;height:var(--calendar-height)}.time-axis{position:relative;background:#fafcfe}.time-axis>span{position:absolute;width:100%;text-align:center;font-size:10px;color:#99aabc;padding-top:2px}.week-column{position:relative;height:100%;border-left:1px solid #e6edf5;background:repeating-linear-gradient(to bottom,transparent 0px,transparent 75px,#eaf0f6 75px,#eaf0f6 76px);min-width:0}.week-column.today{background-color:#fcfdff}.admin-event.timed{position:absolute;z-index:3;min-width:0;font-size:10px;padding:5px 6px}.admin-event.timed .event-state{margin-top:7px}.closure-block{position:absolute;left:0;right:0;z-index:1;pointer-events:none;background:repeating-linear-gradient(135deg,#f1f3f6 0,#f1f3f6 6px,#f8f9fb 6px,#f8f9fb 12px);border-top:1px solid #dfe4ec;border-bottom:1px solid #dfe4ec;overflow:hidden}.closure-block span{display:block;text-align:center;color:#adb9c7;font-size:10px;padding:6px}.preview-amount{display:flex;justify-content:space-between;gap:20px;padding:18px;background:#f5f8fb;margin:20px 0;border-radius:8px}.activity-label{font-size:10px;color:#42867e;background:#eaf6f3;border-radius:5px;padding:4px 8px}.activity-label.laser{color:#4b7baf;background:#edf4fd}.calendar-preview h3{font-size:22px!important;margin:16px 0 10px}
.admin-mode .split,.admin-mode .layout{gap:20px}.admin-mode pre{color:#50677b;background:#f4f7fb;padding:15px;border:1px solid #e1e9f2;border-radius:8px;overflow:auto}.admin-mode .row-card{border-bottom:1px solid #e5ecf4;background:#fff;padding:14px 0;color:#405a73}.admin-mode .feature-card{background:#fff;color:#425b73;border-color:#e1e8f0}.admin-mode .warn-text{color:#b57a27}.admin-mode .player-table th{white-space:nowrap}.admin-mode .player-table .btn{white-space:nowrap}
@media(min-width:1600px){.admin-main{padding:32px 40px}.dashboard-columns{grid-template-columns:minmax(0,1fr) 310px}.admin-month-grid .month-day{min-height:195px}}
@media(max-width:1300px){.command-button span,.command-button kbd{display:none}.command-button{padding:9px}.admin-main{padding:25px 22px}.dashboard-columns{grid-template-columns:minmax(0,1fr)}.dashboard-columns>aside{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px}.admin-topbar{padding:12px 22px}.admin-sidebar{width:224px}.admin-workspace{margin-left:224px;width:calc(100% - 224px)}.calendar-filters .field{min-width:140px;max-width:none}.calendar-filters .check{max-width:none}.event-top>span{display:none}.month-day{padding:5px}.admin-event.compact .event-meta{font-size:8px}.calendar-total{display:none!important}}
@media(max-width:1000px){.admin-sidebar{transform:translateX(-100%);transition:transform .2s;width:244px}.admin-workspace{margin-left:0;width:100%}.mobile-toggle{display:inline-grid!important}.nav-open .admin-sidebar{transform:translateX(0)}.nav-open .sidebar-overlay{display:block;position:fixed;inset:0;background:#102a4580;z-index:40;border:0}.admin-topbar{min-height:68px}.admin-breadcrumb>span{display:none}.admin-tools{gap:10px}.admin-month-grid{min-width:800px}.calendar-panel:has(.admin-month-grid){overflow-x:auto}.admin-mode .stats{gap:10px}.admin-mode .stat{padding:16px}.admin-mode .stat .value{font-size:26px}}
@media(max-width:640px){.admin-main{padding:20px 14px}.admin-topbar{padding:10px 14px;gap:8px}.admin-tools .user-menu>span:last-child{display:none}.admin-tools>.btn{display:none}.admin-breadcrumb strong{font-size:12px;max-width:190px}.admin-heading{align-items:flex-start;flex-wrap:wrap;gap:12px}.admin-mode h1{font-size:24px}.admin-heading p{font-size:12px}.admin-mode .panel{padding:16px;border-radius:10px}.admin-mode .calendar-panel{padding:0}.admin-mode .stats{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-mode .fields{grid-template-columns:1fr}.detail-grid{grid-template-columns:1fr;gap:0}.health-grid{grid-template-columns:1fr}.admin-mode .table-wrap{margin:0 -4px}.admin-mode table{min-width:640px}.admin-mode th,.admin-mode td{padding:11px 8px}.admin-mode .stat .value{font-size:27px}.dashboard-stats .stat-heading{font-size:10px}.stat-heading .ui-icon{width:15px}.stat small{font-size:9px!important}.admin-mode .panel .section-title{flex-direction:column}.admin-calendar-toolbar{padding:14px}.admin-calendar-toolbar h2{font-size:14px;margin:0;flex-basis:100%;order:1}.calendar-filters{padding:10px 14px;gap:9px}.calendar-filters .field{min-width:42%;max-width:calc(50% - 5px)}.calendar-filters .check{font-size:11px}.calendar-legend{padding:0 14px 12px;gap:14px}.admin-footer{padding:16px;flex-direction:column;gap:6px}.booking-contact{flex-direction:column}.admin-mode .filter-bar .field{min-width:100%}.admin-mode .pagination{align-items:flex-start;flex-direction:column}.info-list{grid-template-columns:100px minmax(0,1fr);font-size:12px;gap:12px}.admin-mode .detail-tabs{gap:0}.admin-mode .detail-tabs a{padding:12px 8px;font-size:12px;margin:0}.booking-contact .contact-links{flex-direction:column;gap:7px}}
@media(prefers-reduced-motion:reduce){.admin-sidebar,.admin-nav-link{transition:none}}

/* Keep off-screen accessible labels inside their own scroller. */
.sr-only{left:0;top:0;clip-path:inset(50%)}
.admin-mode .table-wrap{position:relative}
.admin-mode .hint{background:#f0f6fc;color:#526b83;border-left:3px solid #75a9da}
.admin-mode .notice.warning{background:#fff8e8;color:#805d25;border-color:#edcf8d}

/* SOURCE: assets/experience.css */
/* AS-DF 1.2.1 - player onboarding and group invitations */
.onboarding-intro{max-width:870px;margin:30px 0}.onboarding-intro h1{font-size:clamp(2rem,4vw,3.2rem);margin:12px 0}.onboarding-intro p{max-width:700px}.onboarding-steps{display:flex;flex-wrap:wrap;gap:18px;margin-top:24px}.onboarding-steps span{display:flex;align-items:center;gap:9px;font-size:.9rem}.onboarding-steps b{display:grid;place-items:center;border:1px solid #375f83;width:30px;height:30px;border-radius:50%;color:#9edcff}.onboarding-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:24px;align-items:start}.onboarding-grid .panel{margin:0}.onboarding-grid .hint{line-height:1.7}.community-welcome{border-top:3px solid #55b4e8!important}.welcome-benefit{display:flex;gap:14px;margin:20px 0}.welcome-benefit>span{color:#77c6f5;font-weight:800;font-size:1.15rem;line-height:1.7}.welcome-benefit h3{margin:0 0 5px;font-size:1rem}.welcome-benefit p{font-size:.92rem;margin:0;line-height:1.6}.community-choice{border:0;padding:0;margin:22px 0}.community-choice legend{font-weight:700;margin-bottom:10px}.choice-card{display:flex;gap:12px;padding:14px;border:1px solid #3b506a;border-radius:10px;margin:10px 0;cursor:pointer}.choice-card input{width:18px;height:18px;flex:0 0 18px;margin-top:3px}.choice-card:has(input:checked){border-color:#77c6f5;background:rgba(65,135,188,.13)}.choice-card small{display:block;margin-top:6px;line-height:1.5}.choice-card:has(input:disabled){opacity:.55;cursor:not-allowed}.onboarding-grid [hidden]{display:none!important}.membership-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.membership-summary p{margin:6px 0 0}.group-share{border-top:3px solid #55b4e8!important}.share-link-field label{display:block;font-weight:600;margin-bottom:8px}.share-link-field>div{display:flex;gap:10px}.share-link-field input{min-width:0;flex:1;font-size:.9rem;padding:12px}.sms-preview{margin:16px 0}.sms-preview summary{cursor:pointer}.sms-preview textarea{width:100%;box-sizing:border-box;margin-top:12px;padding:14px;line-height:1.6;min-height:120px}.join-welcome{max-width:720px;margin:30px auto}.join-welcome p{line-height:1.8}.join-seat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:22px 0}.join-seat{display:flex;align-items:flex-start;gap:13px;border:1px solid #3b506a;border-radius:12px;padding:18px;cursor:pointer}.join-seat:has(input:checked){border-color:#77c6f5;background:rgba(65,135,188,.14)}.join-seat input{width:18px;height:18px;flex:0 0 18px;margin-top:3px}.join-seat small{display:block;line-height:1.5;margin-top:5px}.join-seat.claimed{opacity:.55;cursor:not-allowed}.my-group-place .stat-grid{margin:22px 0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.group-share .hint{font-size:.88rem;line-height:1.6}.group-share [hidden]{display:none!important}
@media(max-width:850px){.onboarding-grid{grid-template-columns:1fr}.onboarding-intro{margin:20px 0}.onboarding-steps{gap:12px}.onboarding-steps span{font-size:.8rem}.share-link-field>div{flex-direction:column}.membership-summary{align-items:flex-start}.group-share .actions{display:flex;flex-wrap:wrap}.group-share .actions>*{flex:1 1 170px}.join-seat-grid{grid-template-columns:1fr}.onboarding-grid .fields{grid-template-columns:1fr}}
/* 1.3 Reception and community */
.cash-toolbar{position:sticky;bottom:16px;z-index:8;display:flex;justify-content:space-between;align-items:center;gap:20px;margin:20px 0;padding:20px 24px;background:#102b40;color:#fff;border:1px solid #39647d;border-radius:16px;box-shadow:0 8px 30px #07182726}.cash-toolbar strong{display:block;font-size:19px}.cash-toolbar small{display:block;opacity:.8;margin-top:4px}.cash-toolbar .eyebrow{color:#9ed8f4}.cash-toolbar .btn.ghost{color:#fff;border-color:#59798e}.cash-total{display:inline-block;font-size:26px;margin-left:15px;color:#91efc8}.cash-modal-total{text-align:center;padding:24px;background:#edf5fa;border-radius:14px;margin-bottom:15px;color:#142c42}.cash-modal-total strong{display:block;font-size:36px}.roster-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:10px 0}.reception-table{min-width:860px}.reception-table td{vertical-align:middle}.reception-table small{display:block;margin-top:5px;max-width:220px}.reception-table input[type=checkbox],.roster-top input[type=checkbox]{width:19px;height:19px;accent-color:#087dac}.attendance-buttons{display:flex;gap:5px;flex-wrap:wrap;min-width:130px}.attendance-buttons .btn{padding:7px 9px}.reception-table .player-absent{background:#fbefef}.reception-table .btn{margin-top:4px}.majority-card{border:1px solid #497a98;background:#0c2030;color:#edf7ff;border-radius:14px;padding:18px;margin:18px 0}.majority-card p,.majority-card small{color:#bed5e2}.majority-card input{accent-color:#249cd8}.invitation-closed{max-width:720px;margin:48px auto;text-align:center;padding:40px}.closed-symbol{width:64px;height:64px;line-height:58px;font-size:44px;border-radius:50%;background:#ffe7e5;color:#aa332e;margin:20px auto}.invitation-closed .actions{justify-content:center}.community-hero{display:grid;grid-template-columns:1fr 240px;gap:32px;align-items:center;padding:42px;border:1px solid #23577a;border-radius:24px;margin:24px 0;background:linear-gradient(125deg,#0d2337,#0c3d55 75%,#205b64);color:#fff}.community-hero h1{font-size:clamp(28px,4vw,46px);line-height:1.08;max-width:720px;margin:14px 0}.community-hero p{color:#c5dce9;font-size:16px;max-width:680px;line-height:1.65}.community-hero .eyebrow{color:#83d8e4}.community-hero-card{padding:24px;border:1px solid #4c7d97;border-radius:18px;background:#ffffff0a;text-align:center}.community-hero-card span{font-size:11px;letter-spacing:.12em}.community-hero-card strong{display:block;font-size:66px;color:#a2f0d5}.community-hero-card p{margin:0 0 10px}.community-hero-card small{color:#b5d0df}.community-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:22px 0 30px}.community-steps article{display:flex;gap:13px;padding:18px 15px;border:1px solid var(--line,#2b4357);border-radius:15px;background:var(--surface,#0d1b2b)}.community-steps b{display:flex;justify-content:center;align-items:center;width:30px;height:30px;flex-shrink:0;border-radius:9px;background:#144669;color:#a9dffd}.community-steps h3{font-size:16px;margin:0 0 6px}.community-steps p{font-size:13px;line-height:1.6;margin:0;opacity:.8}.community-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:24px;align-items:start}.community-filters{display:flex;gap:14px;align-items:end}.community-filters .field{flex:1}.community-games{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px}.community-game{border:1px solid #304f64;border-radius:18px;padding:22px;background:var(--surface,#0d1b2b);display:flex;flex-direction:column;gap:10px;border-top:4px solid #2992bf}.community-game.laser{border-top-color:#6eaa87}.community-game h3{font-size:21px;margin:6px 0}.community-game p{margin:0;line-height:1.55;opacity:.85}.community-game-top{display:flex;align-items:center;justify-content:space-between}.community-game .community-date{font-weight:600;opacity:1}.community-organizer{display:flex;align-items:center;gap:10px;margin:10px 0}.community-organizer small,.community-organizer strong{display:block}.avatar-circle{width:40px;height:40px;border-radius:50%;background:#284b62;color:#c0e9ff;font-size:13px;display:flex;align-items:center;justify-content:center}.community-capacity{margin-top:auto;padding:12px;background:#122f42;border-radius:10px;color:#e4f4fa}.community-capacity strong,.community-capacity small{display:block}.community-capacity small{margin-top:5px;font-size:12px;color:#b0c9d9}.community-shortcuts{display:grid;gap:10px}.community-shortcuts .btn{justify-content:flex-start;white-space:normal}.community-tip p,.community-side details p{font-size:14px;line-height:1.65}.community-side details summary{cursor:pointer;font-weight:700}.community-description{white-space:pre-wrap;line-height:1.7}.community-side>.panel{margin-bottom:18px}.community-games>.empty{grid-column:1/-1}.price-exact-detail{padding:14px 0;border-block:1px solid #304f64;display:flex;gap:18px;flex-wrap:wrap}.price-exact-detail small{display:block}
@media(max-width:1000px){.community-layout{grid-template-columns:1fr}.community-side{display:grid;grid-template-columns:1fr 1fr;gap:15px}.community-hero{grid-template-columns:1fr 190px;padding:28px}.cash-toolbar{flex-wrap:wrap}.community-steps{gap:10px}}
@media(max-width:650px){.community-hero{grid-template-columns:1fr;padding:22px;margin-top:16px}.community-hero-card{display:none}.community-steps,.community-games,.community-side{grid-template-columns:1fr}.community-steps article{padding:13px}.community-hero .actions{display:grid}.community-hero .btn{width:100%}.cash-toolbar{bottom:6px;padding:14px;gap:10px}.cash-toolbar .actions{width:100%}.cash-toolbar #cash-selected-button{flex:1}.cash-total{font-size:23px}.roster-top{align-items:flex-start;flex-direction:column}.community-filters{gap:8px}.invitation-closed{padding:25px 18px;margin:25px 0}.community-layout{gap:15px}}

/* Reception toolbar contrast in both public and light administration themes. */
.cash-toolbar .btn.ghost{background:#22445b!important;color:#eff7ff!important;border-color:#52768e!important}.cash-toolbar .btn.ghost:hover{background:#305871!important}.cash-toolbar small{color:#c4d9e8!important}.cash-toolbar .eyebrow{color:#a6d8f5!important}

/* 1.3.1: accessible checkout controls and touch-friendly reception. */
.wizard-account .auth-tabs {margin:20px 0;display:flex;gap:8px;flex-wrap:wrap}
.wizard-account .form-error {color:var(--danger,#e34d64);white-space:pre-line}
.steps .wizard-back-step {font:inherit;color:inherit;background:transparent;border:1px solid currentColor;border-radius:12px;padding:10px 14px;cursor:pointer}
.steps .wizard-back-step:hover {background:rgba(80,160,255,.15)}
.steps .wizard-back-step:focus-visible {outline:3px solid #59a9ff;outline-offset:3px}
#roster-form> .btn {margin:10px 8px 0 0}
.reception-table input[type=checkbox],.roster-top input[type=checkbox] {width:26px;height:26px;min-width:26px;cursor:pointer;accent-color:#147ee9}
.reception-table tr:has(input[data-cash-seat]:not(:disabled)) {cursor:pointer}
.reception-table tr:has(input[data-cash-seat]:not(:disabled)):hover {background:rgba(28,131,226,.08)}
.reception-table tr.cash-row-selected {background:rgba(28,131,226,.16);box-shadow:inset 4px 0 0 #167ddd}
.reception-table tr.cash-row-selected:hover {background:rgba(28,131,226,.22)}
.group-cash-shortcut {display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px;flex-wrap:wrap}
.group-cash-shortcut p {font-size:.85rem;max-width:55ch;margin:0}
.cash-toolbar {position:sticky;bottom:12px;z-index:30;box-shadow:0 8px 32px rgba(0,0,0,.18)}
.community-own131 {margin-top:28px}
.community-own131 .row-card small {display:block;margin-top:6px}
.community-own131 .detail-grid {gap:24px}
#join-missing-alias131 {padding:14px;background:rgba(80,160,255,.1);border-radius:12px;margin:16px 0}
#join-missing-alias131[hidden] {display:none}
@media(max-width:700px){.wizard-account .segmented button{flex:1;min-height:44px}.steps{gap:6px;flex-wrap:wrap}.steps .wizard-back-step,.steps span{font-size:.8rem}.cash-toolbar{bottom:4px;padding:12px}.cash-toolbar .actions{gap:6px}.group-cash-shortcut>.btn{width:100%;min-height:44px}.roster-top .check{min-height:44px}.community-own131 .detail-grid{display:block}}
/* 1.3.1 readable payment summary and touch-friendly wizard actions. */
#cash-batch-form .row-card{padding:14px 16px;margin:8px 0;gap:18px;border:1px solid #dce5ef;border-radius:12px}
#cash-batch-form .row-card>div{min-width:0}
#cash-batch-form .row-card small{display:block;margin-top:4px;line-height:1.45;overflow-wrap:anywhere}
#cash-batch-form .row-card>strong{white-space:nowrap}
#roster-form>.btn{margin:8px 8px 0 0}
/* 1.3.2 - Optional offers, documentary checks and inline conversations. */
.offer-panel132{border:1px solid var(--line,#20384f);border-radius:14px;padding:20px;margin:18px 0;background:var(--surface,#fff)}
.offer-panel132:empty{display:none}.offer-panel132 [hidden]{display:none!important}.offer-panel132 legend{font-weight:750;padding:0 7px}
.proof-seat132{margin-top:10px;min-width:185px}.proof-seat132 small{display:block;margin:5px 0}.proof-seat132 .actions{gap:5px;flex-wrap:wrap}
.inline-thread132{margin-top:22px;padding-top:16px;border-top:1px solid var(--line,#20384f);text-align:left}.inline-thread132 h4{margin:0 0 12px}.inline-thread132 label{display:block;font-weight:650}.inline-thread132 textarea{width:100%;box-sizing:border-box;resize:vertical;margin:7px 0}.inline-thread132 .actions{margin-top:8px}
.thread-messages132{max-height:300px;overflow:auto;overscroll-behavior:contain}.thread-message132{padding:12px;border-radius:10px;background:var(--surface2,#102238);color:var(--text,#f4f8fc);margin:7px 0}.thread-message132>div{display:flex;gap:10px;justify-content:space-between;flex-wrap:wrap}.thread-message132 time{font-size:.73rem;opacity:.75}.thread-message132 p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.9rem;margin:7px 0}.moderation132{margin-top:12px;text-align:right}
@media(max-width:640px){.offer-panel132{padding:14px}.thread-message132>div{display:block}.thread-message132 time{display:block}.proof-seat132{min-width:150px}}

.community-games:has(.inline-thread132){grid-template-columns:1fr}.thread-message132 p{color:inherit}.admin-mode .thread-message132{background:#f1f5fa;color:#1b2b40}.admin-mode .offer-panel132,.admin-mode .inline-thread132{border-color:#dce3eb}.inline-thread132 .thread-message132 strong{color:inherit}

/* 1.3.3 - Four event types. Status badges remain independent of activity colours. */
.party-airsoft-public{--party-color:#2563eb;--party-dark:#102b52;--party-light:#eaf2ff;--party-ink:#1744a3}
.party-airsoft-private{--party-color:#16a34a;--party-dark:#123626;--party-light:#e9f8ef;--party-ink:#166534}
.party-laser-public{--party-color:#dc2626;--party-dark:#421c27;--party-light:#fff0f0;--party-ink:#a51c25}
.party-laser-private{--party-color:#9333ea;--party-dark:#321c4a;--party-light:#f4edff;--party-ink:#7020a8}
.party-neutral{--party-color:#8291a3;--party-dark:#28313b;--party-light:#f0f2f5;--party-ink:#566475}
.party-legend133{display:flex;flex-wrap:wrap;gap:10px 22px;margin:15px 0;color:var(--muted,#64748b);font-size:12px}
.party-legend133>span{display:inline-flex;align-items:center;gap:7px}
.party-dot133,.party-badge133 i{display:inline-block;width:10px;height:10px;flex-shrink:0;border-radius:3px;background:var(--party-color)}
.party-badge133{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:700;border-radius:6px;padding:5px 8px;margin-bottom:12px;background:var(--party-dark);color:#f4f8fc}
.admin-mode .party-badge133{background:var(--party-light);color:var(--party-ink)}
.public-event[class*="party-"],.cal-event[class*="party-"]{border-left-color:var(--party-color);background:var(--party-dark);color:#f4f8fc}
.public-event[class*="party-"][data-join]:hover{background:var(--party-dark);outline:2px solid var(--party-color);filter:brightness(1.18)}
.admin-event[class*="party-"]{border-left-color:var(--party-color);background:var(--party-light);color:var(--party-ink)}
.admin-event[class*="party-"].status-cancelled,.admin-event[class*="party-"].status-expired,.admin-event[class*="party-"].status-no_show{border-left-color:var(--party-color);background:var(--party-light);color:var(--party-ink);opacity:.55}
.activity-label[class*="party-"]{background:var(--party-light);color:var(--party-ink)}
.service-card[class*="party-"]{border-left:4px solid var(--party-color)}
.service-card[class*="party-"].selected{outline:2px solid var(--party-color);background:var(--party-dark)}
.community-game[class*="party-"]{border-top-color:var(--party-color)}
.session-party133{border-left:4px solid var(--party-color)}
.summary[data-live-summary]{border-top:4px solid var(--party-color)}
.summary-price133{min-height:130px;margin-top:12px}.price-loading133{color:var(--muted);font-size:13px;margin:15px 0}
.summary-price133 .notice{font-size:12px}.summary-price133 .total strong{white-space:nowrap}
.calendar-legend{flex-wrap:wrap}.calendar-legend .party-dot133{width:9px;height:9px;background:var(--party-color)}
@media(max-width:700px){.party-legend133{gap:9px 16px;font-size:11px}.summary-price133{min-height:100px}}

/* SOURCE: assets/operations.css */
/* AS-DF 1.4 - scoped enhancements, no font/CDN dependency. */
.op-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1.25rem;margin:1.5rem 0}.op-heading h1{margin:.35rem 0;font-size:clamp(1.7rem,4vw,2.5rem);line-height:1.15}.op-heading p{max-width:75ch;color:var(--muted)}.op-shortcuts{display:flex;flex-wrap:wrap;gap:.45rem;margin:1rem 0}.op-card{margin:0 0 1rem;padding:1.25rem;min-width:0}.op-card h2{font-size:1.15rem;margin:0 0 .8rem}.op-row{display:flex;justify-content:space-between;gap:.8rem;align-items:center;flex-wrap:wrap}.op-stack{display:grid;gap:.8rem;align-content:start}.op-filters{display:flex;flex-wrap:wrap;align-items:end;gap:.85rem;margin:1rem 0}.op-filters .field{flex:1 1 180px;margin:0}.op-filters .check{padding:.6rem 0}.op-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6;margin:.85rem 0}.op-notice{border:1px solid var(--line);border-left:4px solid #4c91ef;background:var(--surface);padding:1rem 1.2rem;margin:1rem 0;border-radius:10px;overflow-wrap:anywhere}.op-history{padding:.8rem 0;border-bottom:1px solid var(--line)}.op-history small{display:block;color:var(--muted);margin:.35rem 0}.op-pager{display:flex;gap:1rem;align-items:center;justify-content:center;margin:1.5rem 0}.op-ideas{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:1rem}.op-ideas .op-card{display:flex;flex-direction:column}.op-ideas h2{margin-top:1rem}.op-ideas .op-row:last-child{margin-top:auto}.op-excerpt{line-height:1.6;overflow-wrap:anywhere}.op-tag{font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.op-vote{display:inline-flex;gap:.45rem;align-items:center;border:1px solid var(--line);background:var(--surface);color:var(--text);padding:.65rem .9rem;border-radius:10px;font:inherit;cursor:pointer}.op-vote.selected{border-color:#4c91ef;background:rgba(76,145,239,.13)}.op-detail-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:1.25rem;align-items:start}.op-response{border-left:3px solid #4c91ef;padding:1rem;background:rgba(76,145,239,.08);margin:1rem 0}.op-comment{border-top:1px solid var(--line);padding:1rem 0}.op-comment.muted{opacity:.7}.op-conversation{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem 1.25rem;text-decoration:none;color:var(--text)}.op-conversation h2{font-size:1rem;margin:0}.op-conversation p{margin:.5rem 0 0;color:var(--muted);font-size:.85rem}.op-unread{display:inline-block;width:.6rem;height:.6rem;background:#4c91ef;border-radius:50%;margin-right:.6rem}.op-chat-messages{display:flex;flex-direction:column;gap:.8rem;max-height:60vh;min-height:150px;overflow-y:auto;padding:1rem .2rem;overscroll-behavior:contain}.op-bubble{align-self:flex-end;max-width:88%;padding:.9rem 1rem;background:rgba(76,145,239,.11);border:1px solid var(--line);border-radius:14px 14px 3px 14px}.op-bubble.staff{align-self:flex-start;background:var(--surface);border-radius:14px 14px 14px 3px}.op-bubble.internal{align-self:stretch;max-width:100%;border:1px dashed #c98e2d;background:rgba(201,142,45,.08)}.op-bubble-meta{display:flex;gap:1rem;flex-wrap:wrap;align-items:baseline;font-size:.8rem;color:var(--muted)}.op-bubble .op-text{margin:.45rem 0 0}.op-event{border:1px solid var(--line);border-radius:8px;margin:.65rem 0;overflow:hidden}.op-event summary{display:flex;gap:.5rem;flex-direction:column;cursor:pointer;padding:.85rem 1rem}.op-event small{font-size:.78rem;color:var(--muted);overflow-wrap:anywhere}.op-event-body{padding:0 1rem 1rem}.op-json{white-space:pre-wrap;overflow-wrap:anywhere;max-height:450px;overflow:auto;font-size:.8rem;background:var(--bg);padding:1rem;border-radius:8px}.op-table-wrap{overflow-x:auto;max-width:100%}.op-table{width:100%;border-collapse:collapse}.op-table th,.op-table td{text-align:left;border-bottom:1px solid var(--line);padding:.85rem;vertical-align:top}.op-table th{font-size:.78rem;color:var(--muted)}.op-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:1rem;margin:1rem 0}.op-metrics>a,.op-metrics>div{display:flex;flex-direction:column;gap:.45rem;padding:1rem;border:1px solid var(--line);border-radius:10px;color:var(--text);text-decoration:none}.op-metrics b{font-size:1.9rem;line-height:1}.op-metrics span{font-size:.8rem;color:var(--muted)}.op-card textarea,.op-event textarea{width:100%;resize:vertical;min-height:100px;box-sizing:border-box;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:8px;padding:.8rem;font:inherit}#dialog-content textarea{width:100%;resize:vertical;min-height:100px;padding:.8rem;font:inherit;box-sizing:border-box}.op-error{color:#d55858}.op-card input,.op-card select{max-width:100%}.op-card blockquote{margin:1rem 0;padding-left:1rem;border-left:3px solid var(--line)}.op-day-calendar .week-header,.op-day-calendar .week-body{grid-template-columns:60px minmax(0,1fr)!important}.op-day-calendar .admin-week{min-width:0!important}[draggable=true]{cursor:grab}[draggable=true]:active{cursor:grabbing}
@media(max-width:760px){.op-detail-grid{grid-template-columns:1fr}.op-heading{flex-direction:column}.op-card{padding:1rem}.op-shortcuts{gap:.2rem}.op-shortcuts .btn{font-size:.75rem;padding:.55rem .65rem}.op-conversation{align-items:flex-start;flex-direction:column}.op-bubble{max-width:96%}.op-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.op-filters .field{flex:1 1 140px}.op-pager{flex-wrap:wrap}.op-table th,.op-table td{padding:.65rem}.op-heading .actions{width:100%}}
@media(prefers-reduced-motion:reduce){.op-card *{scroll-behavior:auto!important;transition:none!important}}

/* SOURCE: assets/release150.css */
/* AS-DF 1.5 - matches the main site's dark blue/red identity. No remote fonts/CDN. */
:root{--radius150:20px;--muted:#acc0d1}
.client150{background:radial-gradient(ellipse at 5% 8%,#12325365,transparent 42%),radial-gradient(ellipse at 98% 28%,#54142530,transparent 38%),#060b12}
.client150 .topbar{background:#070d16ee;border-bottom:1px solid #263849;backdrop-filter:blur(16px);min-height:88px}
.client150 .brand strong{font-size:16px;letter-spacing:.12em}.client150 .brand small{color:#b8c9d7;letter-spacing:.14em}
.client150 .wrapper{max-width:1320px;padding-top:24px}.site-trail150{display:flex;gap:10px;color:#9baebf;font-size:12px;margin-bottom:24px}
.client150 .hero{position:relative;isolation:isolate;overflow:hidden;padding:40px;border:1px solid #304761;border-radius:24px;background:linear-gradient(105deg,#101f32f7,#15283eef 62%,#2b1424cc);margin-bottom:26px;min-height:190px;align-items:center}
.client150 .hero:after{content:"";position:absolute;inset:0 0 0 auto;width:38%;z-index:-1;background:repeating-linear-gradient(135deg,transparent 0 26px,#439bff0c 26px 28px);border-left:1px solid #4aa5ff22;transform:skew(-14deg)}
.client150 .hero .eyebrow{letter-spacing:.18em;color:#80c7ff}.client150 .hero h1{font-size:clamp(32px,4.5vw,58px);max-width:720px;letter-spacing:-.045em;margin:12px 0 14px}.client150 .hero p{max-width:640px;font-size:16px;line-height:1.6;color:#c0d1e1}
.client150 .panel{border-radius:var(--radius150);background:linear-gradient(140deg,#102035,#0b1726);border-color:#2a3e54;box-shadow:0 10px 36px #0002}
.client150 .btn{border-radius:11px;min-height:44px;padding:12px 18px}.client150 .btn:not(.secondary):not(.ghost):not(.danger){background:linear-gradient(110deg,#158ded,#1675d0);box-shadow:0 5px 20px #138ae528}
.client150 .service-card{position:relative;min-height:155px;border-radius:16px;background:#14263a;padding:22px;transition:border-color .15s,transform .15s}.client150 .service-card:hover{transform:translateY(-2px);border-color:#79baff}.client150 .service-card.selected{outline:0;border:2px solid #51aeff;background:linear-gradient(135deg,#183d61,#142c45)}
.client150 .service-card strong{font-size:18px}.client150 .service-card span{font-size:22px;font-weight:750;color:#fff}.client150 .service-card small{color:#b7cde2}
.client150 input,.client150 textarea,.client150 select{background:#091421;border:1px solid #36516a;border-radius:10px;min-height:46px}.client150 label{color:#d4e0ed}
.client150 .steps{padding:9px;border:1px solid #2b4259;background:#0b1726;border-radius:14px;gap:8px}.client150 .steps span{flex:1;text-align:center;border:0;border-radius:9px;padding:13px 8px}.client150 .steps .active{background:#1a4268;color:#f8fbff;font-weight:750}
.client150 .summary{border-radius:20px;overflow:hidden}.client150 .summary-cover{min-height:125px}.client150 .op-shortcuts{display:none}
.client-tabs150{display:flex;gap:7px;overflow:auto;margin:0 0 20px;align-items:center;padding-bottom:3px}.client-tabs150 a{white-space:nowrap}.client150 .footer{margin-top:60px;display:flex;align-items:center;gap:22px;flex-wrap:wrap;padding:35px max(24px,calc((100vw - 1240px)/2));border-top:1px solid #263849;background:#060b12}.client150 .footer>strong{display:block;flex:1 0 100%;font-size:24px;letter-spacing:-.02em;color:#e7f1fb}
.notify150{display:inline-flex!important;position:relative;padding:10px!important;border:1px solid #32506b;border-radius:12px;align-items:center;justify-content:center;min-width:42px;min-height:42px;flex-shrink:0}.notify-count150{position:absolute;right:-6px;top:-8px;border-radius:20px;background:#c6273b;color:#fff;font-size:10px;padding:2px 6px;line-height:16px}.notify-count150[hidden]{display:none}
.metrics150{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:14px;margin:22px 0}.metric150{display:flex;flex-direction:column;gap:8px;padding:22px;border:1px solid #2c4157;background:#101e2f;border-radius:16px;min-width:0}.metric150>span{font-size:12px;color:#b4c7db}.metric150>strong{font-size:clamp(25px,2.5vw,38px);letter-spacing:-.035em;line-height:1.1;color:#f6faff}.metric150 small{font-size:11px;line-height:1.5}
.quick150{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 24px}.quick150>a{display:flex;align-items:center;gap:16px;border:1px solid #2d4862;border-radius:17px;background:#101f32;padding:24px}.quick150 svg{width:30px;height:30px;color:#66b9ff;flex-shrink:0}.quick150 strong,.quick150 span{display:block}.quick150 strong{font-size:20px}.quick150 span{font-size:12px;color:#a9bed4;margin-top:4px}
.launch-grid150{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;margin:20px 0}.launch150{display:flex;flex-direction:column;gap:14px;margin:0}.launch150 .ui-icon{width:30px;height:30px;color:#69b3f2}.launch150 strong{font-size:18px}.launch150 span{font-size:12px;color:#9fbad2}.launch150:hover{border-color:#5facf0}
.players150{display:flex;flex-direction:column;border:1px solid #30455b;border-radius:13px;overflow:hidden;margin-top:16px}.player150{display:grid;grid-template-columns:minmax(130px,1fr) minmax(210px,auto) minmax(140px,auto);gap:18px;align-items:center;padding:16px;background:#0c1a2b;border-bottom:1px solid #283e54}.player150:last-child{border-bottom:0}.player150 strong{font-size:16px}.player150 small{display:block;font-size:11px;color:#9fb8cf}.absent150{background:#2b1721}.state-buttons150{display:flex;gap:6px;flex-wrap:wrap}.state-buttons150 .btn{min-height:44px;padding:10px 14px}.selected150{background:#174c3c!important;border-color:#63cba4!important;color:#ecfff5!important}.danger.selected150{background:#61242e!important;border-color:#ec7183!important}.player150>div:last-child .badge{display:inline-block;margin-right:6px}.reception-group150{border-top:3px solid #4aafff}.reception-group150.laser{border-top-color:#e04a61}
.tablet150 .admin-main{max-width:1500px;width:100%;margin:auto}.tablet150 #reception-filter150{position:sticky;top:72px;z-index:10;background:#0a1726f7;border:1px solid #324b63;padding:14px;border-radius:14px;backdrop-filter:blur(10px)}.tablet150 #reception-filter150 .field:last-child{flex:1;min-width:240px}.tablet150:fullscreen .admin-sidebar{display:none}.tablet150:fullscreen .admin-app{grid-template-columns:1fr}.tablet150:fullscreen .admin-workspace{margin:0}
.wallet150{border:1px solid #476992;background:linear-gradient(120deg,#173657,#172c45);padding:26px;border-radius:16px;display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.wallet150 strong{font-size:35px}.bars150{display:grid;gap:13px;max-height:550px;overflow:auto}.bar-row150{display:grid;grid-template-columns:86px 1fr 35px;gap:12px;align-items:center;font-size:12px}.bar-row150>div{background:#24374b;border-radius:8px;height:17px;overflow:hidden}.bar-row150 i{display:block;min-height:100%;background:linear-gradient(90deg,#247ecd,#54baff);border-radius:8px}.notification150.unread150{border-left:4px solid #51adff}.notification150 h2{font-size:18px}.search-result150{padding:15px;display:flex;gap:14px;border-bottom:1px solid #2c435b;align-items:center}.search-result150 small{display:block;margin-top:5px}.search-result150 strong{overflow-wrap:anywhere}#global-results150{max-height:65vh;overflow:auto}
#offline150{position:sticky;top:0;z-index:2000;background:#774414;color:#fff;padding:12px 22px;text-align:center;font-weight:600}
fieldset{min-width:0;border:1px solid #37516a;border-radius:12px;padding:18px;margin-bottom:20px}legend{padding:0 8px;color:#bed9ef}.table-wrap{max-width:100%;overflow:auto}.op-text{overflow-wrap:anywhere}.panel,.op-card,.op-detail-grid>*{min-width:0}
@media(max-width:1100px){.player150{grid-template-columns:minmax(120px,1fr) minmax(190px,auto)}.player150>div:nth-child(3){grid-column:1/-1;padding-top:8px;border-top:1px solid #253d53}.client150 .hero{padding:30px}.quick150>a{padding:18px}.quick150 strong{font-size:17px}}
@media(max-width:700px){.client150 .topbar{padding:15px 18px}.client150 .wrapper{padding:20px 16px}.client150 .hero{padding:26px 22px;min-height:auto;border-radius:18px;flex-direction:column;align-items:stretch}.client150 .hero p{font-size:14px}.client150 .hero>.btn{max-width:none;align-self:flex-start}.client150 .panel{padding:20px}.client150 .service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.client150 .service-card{padding:15px;min-height:148px}.client150 .service-card strong{font-size:15px}.client150 .service-card span{font-size:19px}.metrics150{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.metric150{padding:17px}.quick150{grid-template-columns:1fr;gap:10px}.quick150>a{padding:16px}.player150{grid-template-columns:1fr;gap:12px;padding:15px}.player150>div:nth-child(3){grid-column:auto}.player150 .state-buttons150{flex-wrap:nowrap}.player150 .state-buttons150 .btn{flex:1;padding:10px}.tablet150 #reception-filter150{position:static}.op-filters .field{min-width:0}.launch-grid150{grid-template-columns:repeat(2,minmax(0,1fr))}.launch150{padding:18px}.launch150 strong{font-size:15px}.client150 .steps{gap:3px;padding:5px}.client150 .steps span{font-size:10px;white-space:normal;padding:10px 4px}.wallet150{flex-direction:column;align-items:flex-start;gap:12px}.client150 .footer{gap:15px;padding:30px 20px}.client150 .footer>strong{font-size:21px}.client-tabs150{margin-bottom:12px}.site-trail150{margin-bottom:16px}.client150 .op-detail-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.client150 .service-card{transform:none!important;transition:none}}

/* Reception uses the admin light palette and the full tablet width. */
.admin-mode .player150{background:#f5f9fd;color:#19344d;border-color:#d6e3ed}.admin-mode .player150 strong{color:#173952}.admin-mode .player150 small{color:#466178}.admin-mode .absent150{background:#fff0f3}.admin-mode .players150{border-color:#cfdeea}.admin-mode .player150>div:nth-child(3){border-color:#d1dfea}.metric150 small{color:#a9c0d5}
.admin-mode fieldset{border-color:#c5d8e7}.admin-mode legend{color:#36536e}.admin-mode .launch150 span{color:#466178}
.tablet150 .admin-sidebar,.tablet150 .command-button,.tablet150 .sidebar-toggle{display:none!important}.tablet150 .admin-workspace{width:100%;margin-left:0}.tablet150 .admin-main{max-width:1500px}.tablet150 #reception-filter150{background:#f6fafff7;color:#19344d;border-color:#c5d9e9}.tablet150 #reception-filter150 label{color:#36536e}.tablet150 .admin-main .hint{color:#526a80}.tablet150 .admin-main>.op-head{margin-top:5px}.tablet150 .admin-topbar{padding-left:25px}.tablet150 .admin-topbar .breadcrumbs{display:none}.tablet150 .admin-tools{margin-left:auto}.tablet150:fullscreen .admin-workspace{width:100%}
@media(max-width:700px){.tablet150 .admin-tools{gap:8px}.tablet150 .admin-topbar{padding:12px}.tablet150 .admin-user{display:none}.tablet150 .admin-main{padding:20px 14px}.tablet150 .player150 .state-buttons150{flex-wrap:wrap}}

.tablet150 .mobile-toggle{display:none!important}

/* SOURCE: assets/release160.css */
/* AS-DF 1.6.0. Public dark / staff light. Original 1.3.4 proportions and artwork.
   Keep this sheet LAST; no framework, remote font or build step is required. */
body.client160 {
  --bg:#050d14; --panel:#0c1d2e; --surface:#0c1d2e; --surface2:#10283d;
  --line:#203d53; --text:#f2f7fc; --muted:#9eb6ca; --blue:#1e9dff;
  --accent:#1e9dff; --radius150:14px;
  color:var(--text); background:radial-gradient(ellipse at 91% 8%,#102c43 0,transparent 42%),var(--bg);
  font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
}
body.release160 * {box-sizing:border-box;}
body.release160 [hidden] {display:none!important;}
body.release160 :focus-visible {outline:3px solid #59b5ff;outline-offset:4px;}
body.release160 #main {scroll-margin-top:88px;}
body.client160 #main:focus {outline:none;}
body.client160 a,body.client160 button,body.client160 input {touch-action:manipulation;}
body.client160 .topbar {
  min-height:78px; padding:14px max(24px,calc((100vw - 1320px)/2));gap:22px;
  background:#05111deb; border-bottom:1px solid #203b50;backdrop-filter:blur(16px);
  position:relative;z-index:50;flex-wrap:nowrap;
}
body.client160 .brand {flex-shrink:0;gap:13px;}
body.client160 .brand img {width:54px;height:44px;object-fit:contain;}
body.client160 .brand strong {font-size:14px;letter-spacing:.14em;color:#f6faff;}
body.client160 .brand small {font-size:10px;letter-spacing:.14em;color:#a5bdd0;}
body.client160 .topbar nav {gap:22px;align-items:center;justify-content:flex-end;flex:1;}
body.client160 .topbar nav>a {font-size:12px;white-space:nowrap;}
body.client160 .topbar nav>a.active {color:#32adff;}
body.client160 .notify150 {background:#0e2336;border:1px solid #2c455b;border-radius:9px;min-height:38px;min-width:38px;}
.public-toggle160 {display:none;border:1px solid #2d4b62;border-radius:9px;padding:9px;background:#0e2336;color:#ecf7ff;}
.public-toggle160 svg {width:22px;height:22px;}
body.client160 .wrapper {max-width:1320px;padding:28px 32px 42px;min-width:0;}
body.client160 .site-trail150 {font-size:11px;gap:9px;margin:0 0 12px;color:#829eb5;}
body.client160 .site-trail150 a {color:#a8c7dd;}
body.client160 .hero {
  border:0;border-radius:0;background:none;box-shadow:none;padding:24px 0 28px;
  margin:0 0 10px;min-height:155px;display:flex;align-items:center;justify-content:space-between;
  overflow:visible;gap:25px;isolation:auto;
}
body.client160 .hero:after {display:none;}
body.client160 .hero h1 {font-size:clamp(30px,3.4vw,46px);line-height:1.13;letter-spacing:-.04em;margin:15px 0;max-width:850px;}
body.client160 .hero p {font-size:15px;line-height:1.65;max-width:720px;color:#a9c0d3;margin:0;}
body.client160 .hero .eyebrow {font-size:10px;letter-spacing:.15em;color:#24adff;}
body.client160 .hero>.btn {flex-shrink:0;font-size:12px;}
body.client160 .panel {border-radius:14px;border:1px solid #233e55;padding:24px;background:linear-gradient(130deg,#0e2235,#0a1928);box-shadow:0 10px 30px #0002;}
body.client160 .panel h2 {font-size:20px;line-height:1.3;letter-spacing:-.025em;}
body.client160 .panel h3 {font-size:17px;}
body.client160 p {color:#adc2d4;}
body.client160 .btn {min-height:42px;padding:11px 17px;border-radius:9px;font-size:13px;line-height:1.3;font-weight:650;box-shadow:none;}
body.client160 .btn:not(.secondary):not(.ghost):not(.danger):not(.cta160) {background:#179df8;color:#03121d;box-shadow:none;}
body.client160 .btn.secondary {background:#132d43;color:#e4f3ff;border:1px solid #2d4c65;}
body.client160 .btn.ghost {background:transparent;color:#b8d0e2;border:1px solid #24435c;}
body.client160 .btn.ghost:hover {background:#142d42;color:#fff;}
body.client160 .btn.cta160 {background:linear-gradient(110deg,#f12638,#dc162b)!important;color:#fff!important;border:1px solid #ff4754;box-shadow:0 5px 16px #e21b3026;}
body.client160 .btn.cta160:hover:not(:disabled) {background:#ff2e40!important;}
body.client160 .btn:disabled {opacity:.5;cursor:not-allowed;}
body.client160 input,body.client160 textarea,body.client160 select {min-height:43px;border-radius:8px;border:1px solid #2a485f;background:#071623;color:#eef6fc;}
body.client160 input[type="checkbox"],body.client160 input[type="radio"] {min-height:0;width:18px;height:18px;accent-color:#219dff;flex-shrink:0;}
body.client160 label {font-size:12px;font-weight:550;color:#c2d6e6;}
body.client160 .notice {border-radius:6px;background:#102e41;color:#c1d6e5;border-left:3px solid #27aaff;font-size:12px;line-height:1.6;}
body.client160 .notice.warning {background:#382919;border-color:#e5ad52;color:#ffe6b9;}
body.client160 .hint,body.client160 .tiny {font-size:12px;line-height:1.6;}
body.client160 .layout {grid-template-columns:minmax(0,1fr) 310px;gap:24px;align-items:start;}
body.client160 .layout>section {min-width:0;}
body.reserve160 #main {position:relative;isolation:isolate;}
body.reserve160 #main:before {
 content:"";position:absolute;z-index:-1;top:0;right:0;width:600px;height:350px;pointer-events:none;opacity:.14;
 background:linear-gradient(90deg,#07131c,transparent),linear-gradient(0deg,#07131c,transparent 75%),url("brand160/airsoft-cqb.webp") center/cover no-repeat;
}
body.reserve160 #main[data-activity="laser"]:before {
 background-image:linear-gradient(90deg,#07131c,transparent),linear-gradient(0deg,#07131c,transparent 75%),url("brand160/laser-action.webp");
}
body.client160 .steps {display:flex;gap:10px;margin:6px 0 24px;padding:0;background:none;border:0;border-radius:0;flex-wrap:nowrap;}
body.client160 .steps>span {display:flex;align-items:center;gap:7px;flex:0 1 auto;min-height:43px;padding:9px 14px 12px 5px;border:0;border-bottom:2px solid #253e51;border-radius:0;background:none;color:#8ca7be;text-align:left;font-size:12px;white-space:nowrap;}
body.client160 .steps>span.active {color:#f3f9fe;border-bottom-color:#18a4ff;font-weight:650;background:none;}
body.client160 .steps>span.done160 {color:#add6ee;}
.step-number160 {width:19px;height:19px;line-height:19px;border-radius:50%;text-align:center;display:inline-block;background:#1b3448;color:#a6c4da;font-size:11px;flex-shrink:0;}
.active .step-number160 {background:#139ef6;color:#001b2e;}
body.client160 .steps .wizard-back-step {font-size:12px;border:0;background:none;border-radius:4px;padding:0;min-height:24px;}
body.client160 .steps .wizard-back-step:hover {color:#fff;background:none;}
body.client160 .service-grid {grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
body.client160 .service-card {
 min-height:190px;padding:0 15px 16px;overflow:hidden;border-radius:11px;border:1px solid #33506a;border-left:3px solid var(--party-color,#2789f9);
 background:#102638;display:flex;flex-direction:column;align-items:stretch;text-align:left;gap:0;transform:none;position:relative;
}
body.client160 .service-card:hover {transform:none;border-color:#58a2d8;}
body.client160 .service-card.selected {border:1px solid var(--party-color,#248aff);border-left:3px solid var(--party-color,#248aff);box-shadow:0 0 0 1px var(--party-color,#248aff);background:var(--party-dark,#102b52);outline:0;}
.service-photo160 {width:calc(100% + 30px);max-width:none;height:72px;object-fit:cover;margin:0 -15px 13px;opacity:.74;}
body.client160 .service-card.selected .service-photo160 {opacity:.95;}
body.client160 .service-card strong {font-size:14px;line-height:1.45;margin-bottom:8px;}
body.client160 .service-card span {font-size:14px;font-weight:500;color:#dfebf5;margin-top:auto;}
body.client160 .service-card small {font-size:11px;color:#a6bed1;margin-top:7px;}
body.client160 .activity-switch {margin:16px 0 19px;gap:9px;}
body.client160 .activity-switch .btn {font-size:12px;min-height:38px;padding:10px 17px;}
body.client160 #formula-form>.fields {grid-template-columns:1fr 1fr 1.35fr;gap:14px;}
body.client160 .summary {position:sticky;top:22px;border-radius:14px;border-top:3px solid var(--party-color,#238bff);padding:22px;overflow:hidden;}
body.client160 .summary-cover {width:100%;height:112px;min-height:0;object-fit:cover;border-radius:9px;margin-bottom:20px;}
body.client160 .summary .eyebrow {color:#22a8fc;font-size:10px;}
body.client160 .summary h2 {font-size:20px;margin:12px 0 18px;}
body.client160 .summary .line {font-size:12px;padding:6px 0;gap:16px;}
body.client160 .summary .line>span {color:#9fb9cf;}
body.client160 .summary .total {padding-top:17px;margin-top:14px;gap:10px;align-items:center;}
body.client160 .summary .total strong {font-size:28px;}
body.client160 .summary .notice {font-size:11px;padding:12px;}
body.client160 .summary-price133 {min-height:100px;}
body.client160 .footer160 {margin:32px 0 0;padding:27px max(28px,calc((100vw - 1256px)/2));border-top:1px solid #1a3246;background:#040b12;gap:14px 23px;font-size:10px;color:#829db4;line-height:1.7;}
body.client160 .footer160>strong {font-size:15px;letter-spacing:.06em;margin:0;color:#cedfea;}
body.client160 .footer160 a {color:#93b9d4;}

/* Dedicated client shell. Existing profile, benefits and support forms are moved,
   never cloned: handlers, names, security checks and field contents are retained. */
.client-frame160 {max-width:1440px;margin:0 auto;display:grid;grid-template-columns:228px minmax(0,1fr);align-items:stretch;}
.client-sidebar160 {border-right:1px solid #20394e;background:#071522bf;padding:32px 16px;}
.client-sidebar160 nav {position:sticky;top:20px;}
.client-nav-title160 {font-size:9px;letter-spacing:.15em;color:#83a5bd;margin:5px 12px 22px;}
.client-sidebar160 nav a,.client-mobile-menu160 nav a {display:flex;align-items:center;gap:11px;border-radius:8px;padding:13px 12px;margin:4px 0;color:#b3cbdc;font-size:12px;font-weight:550;}
.client-sidebar160 nav a svg,.client-mobile-menu160 nav a svg {width:17px;height:17px;flex-shrink:0;}
.client-sidebar160 nav a.active,.client-mobile-menu160 nav a.active {background:linear-gradient(100deg,#075bac,#0c3860);color:#f5fbff;box-shadow:inset 2px 0 0 #35adff;}
.client-sidebar160 nav a:hover,.client-mobile-menu160 nav a:hover {background:#15334c;color:#fff;}
.client-nav-bottom160 {margin:30px 6px 0;padding-top:20px;border-top:1px solid #1d364b;}
.client-nav-bottom160>a:not(.btn) {display:block;font-size:10px;color:#86acc7;padding-top:22px;}
body.client160 .client-frame160 .wrapper {max-width:none;width:100%;padding:24px 28px 35px;}
.client-mobile-menu160 {display:none;}
body.client160 .account-hero160 {min-height:130px;padding:14px 0 28px;gap:15px;}
body.client160 .account-hero160 h1 {font-size:32px;}
body.client160 .account-hero160 p {font-size:13px;max-width:540px;}
body.client160 .account-hero160 .btn {min-width:150px;}
.account-metrics160 {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:24px;}
.metric-card160 {border:1px solid #23415a;border-radius:12px;background:linear-gradient(130deg,#0d263a,#0b1b2a);padding:18px 13px;display:flex;align-items:flex-start;gap:12px;min-width:0;}
.metric-card160:hover {border-color:#5089b3;}
.metric-icon160 {background:#09355a;border:1px solid #154a6c;color:#35b4ff;display:grid;place-items:center;width:34px;height:36px;border-radius:10px;flex-shrink:0;}
.metric-icon160 svg {width:19px;height:19px;}
.metric-card160:nth-child(2) .metric-icon160 {color:#42e2b2;background:#103c36;border-color:#21534e;}
.metric-card160:nth-child(3) .metric-icon160 {color:#c4a1ff;background:#2b2345;border-color:#4d3a69;}
.metric-card160:nth-child(4) .metric-icon160 {color:#ffc876;background:#40331b;border-color:#68512a;}
.metric-card160 small {display:block;font-size:10px;line-height:1.5;color:#a7c2d6;}
.metric-card160 strong {display:block;font-size:24px;margin:6px 0;font-weight:750;letter-spacing:-.03em;color:#f3f9ff;white-space:nowrap;}
.metric-card160>span:last-child {min-width:0;}
.account-grid160 {display:grid;grid-template-columns:minmax(0,1fr) 265px;gap:20px;align-items:start;}
.account-grid160>div {min-width:0;}
.account-grid160 .panel {margin-bottom:20px;}
body.client160 .section-title160 {display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px;}
body.client160 .section-title160 h2 {font-size:18px;margin:0;}
body.client160 .section-title160 .btn {font-size:11px;min-height:32px;padding:7px 10px;flex-shrink:0;}
.reservation-card160 {display:flex;align-items:center;gap:14px;padding:15px 0;border-top:1px solid #244054;min-width:0;}
.reservation-card160:hover .reservation-info160 strong {color:#63bcff;}
.reservation-card160>img {width:90px;height:70px;border-radius:7px;object-fit:cover;flex-shrink:0;}
.date-card160 {min-width:40px;text-align:center;display:flex;flex-direction:column;gap:2px;}
.date-card160 b {font-size:24px;color:#e9f5ff;line-height:1.1;}
.date-card160 small {font-size:9px;text-transform:uppercase;color:#80bce3;}
.reservation-info160 {flex:1;min-width:0;}
.reservation-info160 strong {display:block;font-size:14px;line-height:1.5;color:#e9f4fc;overflow-wrap:anywhere;}
.reservation-info160 small {display:block;font-size:10px;color:#99b9cf;line-height:1.6;margin-top:2px;}
.reservation-state160 {display:flex;align-items:center;gap:12px;}
.reservation-state160 .badge {font-size:9px;max-width:115px;white-space:normal;text-align:center;}
body.client160 .account-side160 .panel {padding:22px;}
.account-side160 .panel h2 {font-size:18px;}
.account-side160 p {font-size:12px;line-height:1.7;}
.help-card160>svg {width:28px;height:28px;color:#51b7ff;margin-bottom:10px;}
body.client160 .account-discover160 {position:relative;overflow:hidden;background:linear-gradient(90deg,#091a2bf5 20%,#091a2bb0),url("brand160/hero-dual.webp") center/cover;border-color:#284961;}
.account-discover160 p {font-size:13px;line-height:1.65;max-width:480px;}
.account-discover160 .btn {margin:8px 7px 0 0;}
.account-discover160 .eyebrow {font-size:9px;color:#7bb9e2;}
.loyalty-card160>strong {display:block;font-size:26px;margin:16px 0 8px;color:#83cef9;}
.empty160 {padding:30px 15px;text-align:center;}
.empty160>svg {width:38px;height:38px;color:#4584b0;}
.empty160 p {font-size:13px;line-height:1.7;}
body.client160 .op-head h1 {font-size:32px;}
body.client160 .detail-tabs {flex-wrap:wrap;gap:6px;border-bottom:1px solid #26445b;margin-bottom:24px;}
body.client160 .detail-tabs a {font-size:12px;}
body.client160 .quick150 {gap:10px;}
body.client160 .quick150>a {padding:17px;border-radius:11px;}
body.client160 .quick150 strong {font-size:17px;}
body.client160 .wallet150 {background:linear-gradient(110deg,#10354e,#102337);border-color:#316183;}

/* Light administration stays consistent with the original staff application. */
body.admin-mode.release160 {background:#f3f6fa;color:#162e46;}
body.admin-mode.release160 .admin-topbar {background:#fff;border-bottom:1px solid #dce5ef;}
body.admin-mode.release160 .admin-main>.op-head h1 {font-size:30px;letter-spacing:-.025em;}
body.admin-mode.release160 .panel {border:1px solid #dce6ef;border-radius:13px;box-shadow:0 3px 10px #172f4b04;}
body.admin-mode.release160 .metric150 {background:#fff;border:1px solid #d9e5ef;border-radius:12px;padding:21px;position:relative;box-shadow:0 3px 12px #11375b04;}
body.admin-mode.release160 .metric150:before {content:"";position:absolute;left:0;top:17px;height:26px;width:3px;background:#1c8aeb;border-radius:0 3px 3px 0;}
body.admin-mode.release160 .metric150>span {color:#5e748d;font-size:12px;}
body.admin-mode.release160 .metric150>strong {color:#173754;font-size:32px;}
body.admin-mode.release160 .metric150 small {color:#667d95;}
body.admin-mode.release160 .launch150 {background:#fff;}
body.admin-mode.release160 .launch150>strong {color:#1b3d5b;}
body.admin-mode.release160 .launch150 svg {color:#1a82d2;}
body.admin-mode.release160 .notify150 {color:#235b85;border-color:#d3e1ed;background:#f6faff;}
body.admin-mode.release160 .admin-sidebar {background:#081a2b;}
body.admin-mode.release160 .admin-sidebar .active {background:#115cb0;}
body.admin-mode.release160 .bar-row150>div {background:#e4edf4;}
body.admin-mode.release160 .search-result150 {border-color:#dbe6f0;}
body.admin-mode.release160 .wallet150 {background:linear-gradient(120deg,#eef8ff,#e8f2ff);border-color:#c3dceb;color:#173d5a;}
body.admin-mode.release160 .wallet150 strong {color:#174a72;}
body.admin-mode.release160 .player150 {background:#f8fbfe;}
body.admin-mode.release160 .player150.absent150 {background:#fff1f3;}
body.admin-mode.release160 .reception-group150 {border-top:3px solid #268dde;}
body.admin-mode.release160 .reception-group150.laser {border-top-color:#d73c54;}
body.admin-mode.release160 .players150 {border-radius:10px;}
body.admin-mode.release160 .state-buttons150 .btn {min-height:44px;}
body.admin-mode.release160 .admin-footer {display:flex;gap:20px;align-items:center;flex-wrap:wrap;}
.version160 {margin-left:auto;color:#617b92;font-size:10px;}
#reserve-sticky160 {display:none;}

@media(min-width:1441px) {body.client160 .client-frame160 .wrapper {padding:30px 32px;}}
@media(max-width:1200px) {
 .client-frame160 {grid-template-columns:205px minmax(0,1fr);}
 .client-sidebar160 {padding-inline:10px;}
 .account-grid160 {grid-template-columns:1fr;}
 .account-side160 {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
 .account-metrics160 {grid-template-columns:repeat(2,minmax(0,1fr));}
 body.client160 .topbar nav {gap:15px;}
 body.client160 .layout {grid-template-columns:minmax(0,1fr) 280px;gap:20px;}
 body.client160 .service-grid {gap:9px;}
 body.client160 .service-card {padding-inline:12px;}
 .service-photo160 {width:calc(100% + 24px);margin-inline:-12px;}
}
@media(max-width:1000px) {
 body.client160 .topbar {padding:14px 22px;gap:15px;}
 body.client160 .brand strong {font-size:12px;}
 body.client160 .brand small {font-size:8px;}
 body.client160 .brand img {width:45px;height:38px;}
 body.client160 .topbar nav {gap:12px;}
 body.client160 .topbar nav>a {font-size:11px;}
 body.client160 .wrapper {padding-inline:24px;}
 body.client160 #formula-form>.fields {grid-template-columns:1fr 1fr;}
 body.client160 .service-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
 body.client160 .hero {gap:15px;}
 body.client160 .hero h1 {font-size:36px;}
 body.client160 .hero>.btn {max-width:180px;white-space:normal;text-align:center;}
 .client-frame160 {grid-template-columns:185px minmax(0,1fr);}
 body.client160 .client-frame160 .wrapper {padding:22px;}
 .client-sidebar160 nav a {font-size:11px;padding:12px 9px;gap:9px;}
 body.client160 .account-hero160 {flex-direction:column;align-items:flex-start;}
 .reservation-card160>img {display:none;}
}
@media(max-width:760px) {
 body.client160 .topbar {min-height:68px;padding:13px 18px;gap:12px;align-items:center;}
 body.client160 .brand {margin-right:auto;}
 body.client160 .brand strong {font-size:11px;letter-spacing:.12em;}
 body.client160 .brand small {font-size:8px;}
 .public-toggle160 {display:flex;align-items:center;justify-content:center;width:40px;height:40px;}
 body.client160 .topbar>nav {display:none;position:absolute;left:0;right:0;top:100%;padding:14px 20px;background:#081a2bf7;border-bottom:1px solid #325675;box-shadow:0 14px 24px #0005;z-index:100;}
 body.client160 .topbar.menu-open160>nav {display:flex;flex-direction:column;align-items:stretch;gap:4px;}
 body.client160 .topbar>nav a,body.client160 .topbar>nav button {min-height:44px;font-size:14px;padding:12px 14px;display:flex;align-items:center;}
 body.client160 .topbar>nav .active {background:#113351;border-radius:8px;}
 body.client160 .notify150 {min-width:37px;min-height:37px;}
 body.client160 .wrapper {padding:19px 16px 35px;}
 body.client160 .hero {min-height:0;padding:20px 0 22px;gap:15px;align-items:flex-start;flex-direction:column;margin-bottom:0;}
 body.client160 .hero h1 {font-size:32px;line-height:1.07;margin:13px 0;}
 body.client160 .hero p {font-size:13px;line-height:1.6;}
 body.client160 .hero>.btn {max-width:none;padding:8px 12px;min-height:36px;font-size:11px;}
 body.client160 .hero .eyebrow {font-size:9px;}
 body.client160 .site-trail150 {font-size:10px;margin-bottom:0;}
 body.client160 .layout {display:block;}
 body.client160 .panel {padding:20px;border-radius:12px;}
 body.client160 .panel h2 {font-size:18px;}
 body.client160 .summary {position:static;margin:22px 0 0;padding:20px;}
 body.client160 .summary-cover {height:120px;}
 body.client160 .steps {gap:6px;margin:7px 0 20px;justify-content:space-between;}
 body.client160 .steps>span {flex:1;min-width:0;gap:4px;padding:8px 2px 11px;font-size:9px;line-height:1.3;white-space:normal;}
 body.client160 .steps .wizard-back-step {font-size:9px;text-align:left;line-height:1.3;min-height:27px;}
 .step-number160 {width:15px;height:15px;line-height:15px;font-size:9px;}
 body.client160 .service-grid {grid-template-columns:1fr;gap:10px;}
 body.client160 .service-card {min-height:105px;display:grid;grid-template-columns:72px minmax(0,1fr);grid-template-rows:auto auto auto;gap:4px 13px;padding:13px;align-items:center;}
 .service-photo160 {grid-row:1/4;grid-column:1;width:72px;height:76px;margin:0;border-radius:6px;object-fit:cover;}
 body.client160 .service-card strong {font-size:13px;line-height:1.35;margin:0;}
 body.client160 .service-card span {font-size:13px;margin:0;}
 body.client160 .service-card small {font-size:11px;margin:0;}
 body.client160 .activity-switch {margin:14px 0 17px;}
 body.client160 #formula-form>.fields {grid-template-columns:1fr 1fr;gap:12px;}
 body.client160 #formula-form>.fields>.field:last-child {grid-column:1/-1;}
 body.client160 .client-frame160 .wrapper {padding:15px 16px 30px;}
 .client-frame160 {display:block;}
 .client-sidebar160 {display:none;}
 .client-mobile-menu160 {display:block;border:1px solid #28465e;background:#0b2032;border-radius:10px;padding:0 13px;margin-bottom:17px;}
 .client-mobile-menu160>summary {list-style:none;display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:43px;cursor:pointer;font-weight:650;font-size:12px;color:#ddedf8;}
 .client-mobile-menu160>summary::-webkit-details-marker {display:none;}
 .client-mobile-menu160>summary>span {color:#73b7ea;font-size:10px;}
 .client-mobile-menu160[open] {padding-bottom:18px;}
 .client-mobile-menu160 .client-nav-title160 {margin:15px 12px;}
 .client-mobile-menu160 .client-nav-bottom160 {margin-top:18px;}
 body.client160 .account-hero160 h1 {font-size:29px;}
 .account-metrics160 {gap:10px;margin-bottom:19px;}
 .metric-card160 {padding:14px 11px;gap:8px;flex-direction:column;}
 .metric-card160>span:last-child {width:100%;}
 .metric-card160 strong {font-size:24px;}
 .metric-card160 small {font-size:10px;}
 .metric-icon160 {width:29px;height:29px;border-radius:8px;}
 .metric-icon160 svg {width:16px;height:16px;}
 .account-grid160 {gap:0;}
 .account-side160 {display:block;}
 body.client160 .upcoming160 {padding:17px;}
 body.client160 .section-title160 h2 {font-size:17px;}
 .reservation-card160 {gap:10px;position:relative;flex-wrap:wrap;}
 .date-card160 {min-width:34px;}
 .date-card160 b {font-size:22px;}
 .reservation-info160 {flex:1;}
 .reservation-info160 strong {font-size:12px;}
 .reservation-info160 small {font-size:10px;}
 .reservation-state160 {margin-left:44px;justify-content:space-between;flex:1 1 calc(100% - 44px);}
 .reservation-state160 .badge {max-width:none;}
 body.client160 .account-side160 .panel {padding:20px;}
 body.client160 .detail-tabs {overflow:auto;flex-wrap:nowrap;}
 body.client160 .detail-tabs a {white-space:nowrap;padding:12px 10px;font-size:11px;}
 body.client160 .op-head h1 {font-size:28px;}
 body.client160 .quick150 {grid-template-columns:1fr;}
 body.client160 .footer160 {padding:24px 20px;font-size:10px;}
 body.reserve160 .footer160 {padding-bottom:116px;}
 body.reserve160 #main:before {width:100%;height:320px;opacity:.09;}
 #reserve-sticky160 {display:flex;align-items:center;justify-content:space-between;gap:15px;position:fixed;bottom:0;left:0;right:0;z-index:60;border-top:1px solid #35526a;background:#061624f5;backdrop-filter:blur(12px);padding:13px 17px calc(13px + env(safe-area-inset-bottom));box-shadow:0 -8px 25px #0004;}
 #reserve-sticky160>div {flex-shrink:0;}
 #reserve-sticky160 small {display:block;color:#b2cadd;font-size:10px;}
 #reserve-sticky160 strong {display:block;color:#f6faff;font-size:22px;line-height:1.4;}
 #reserve-sticky160 .btn {font-size:12px;min-height:44px;padding:11px 15px;}
 body.admin-mode.release160 .metric150 {padding:17px;}
 body.admin-mode.release160 .metric150>strong {font-size:27px;}
 body.admin-mode.release160 .admin-main>.op-head h1 {font-size:25px;}
 body.admin-mode.release160 .admin-footer {gap:9px;}
}
@media(max-width:360px) {
 body.client160 .wrapper {padding-inline:12px;}
 body.client160 .panel {padding:16px;}
 body.client160 .steps {gap:4px;}
 body.client160 .steps>span {font-size:8px;}
 body.client160 .brand small {font-size:7px;}
 body.client160 .service-card {grid-template-columns:56px minmax(0,1fr);gap:4px 10px;padding:11px;}
 .service-photo160 {width:56px;}
 #reserve-sticky160 .btn {font-size:11px;padding-inline:11px;}
 #reserve-sticky160 strong {font-size:20px;}
}
@media(prefers-reduced-motion:reduce) {
 body.release160 * {scroll-behavior:auto!important;transition:none!important;animation:none!important;}
}
/* Previous steps keep their native back buttons. */
body.client160 .steps>button.wizard-back-step {display:flex;align-items:center;gap:7px;min-height:43px;padding:9px 14px 12px 5px;border-bottom:2px solid #315d7a;border-radius:0;flex:0 1 auto;color:#adcfe4;white-space:nowrap;}
body.client160 .steps>button .step-number160 {background:#174464;color:#b3dfff;}
@media(max-width:760px){body.client160 .steps>button.wizard-back-step{flex:1;min-width:0;gap:4px;font-size:9px;padding:8px 2px 11px;white-space:normal;}}
/* Inactive steps remain legible on the dark background. */
body.client160 .steps>span,body.client160 .steps>button {opacity:1;}
body.client160 .steps>span>span {padding:0;border:0;opacity:1;font:inherit;color:inherit;}

/* SOURCE: assets/release170.css */
/* 1.7 additions: preserve the 1.6 public and administration palettes. */
.ps-money170{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0}
.ps-money170>div{background:var(--surface,#f3f6fb);color:inherit;border:1px solid #dce4ed;border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:6px;min-width:0}
.ps-money170 strong{font-size:1.65rem;font-variant-numeric:tabular-nums}.ps-money170 small{font-size:.86rem}.ps-money170 span{font-size:.82rem}
.ps-cart-summary170{display:flex;flex-direction:column;gap:5px;border-left:4px solid #2563eb;padding:12px 16px;margin:18px 0}.ps-cart-summary170 span{font-size:.85rem}
.ps-actions170{flex-wrap:wrap;gap:10px}.ps-origin170{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.ps-origin170 code{overflow-wrap:anywhere}
.ps-mapping170 input{min-width:85px;width:100%;max-width:135px}.ps-diagnostic170{white-space:pre-wrap;overflow-wrap:anywhere;max-height:420px;overflow:auto;font-size:.83rem}
.ps-panel170 p,.ps-panel170 .notice{overflow-wrap:anywhere}
@media(max-width:760px){.ps-money170{grid-template-columns:1fr;gap:9px}.ps-money170>div{padding:13px}.ps-money170 strong{font-size:1.4rem}.ps-actions170>.btn{width:100%}.ps-panel170 .section-title160{align-items:flex-start;gap:8px}}

.ps-history170{padding:14px 16px;border:1px solid #dce4ed;border-radius:12px;margin-top:10px}.ps-history170 p{margin:5px 0 0}

/* SOURCE: assets/release180.css */
/* ASDF 1.8: preserve the existing light administration and dark public identity. */
.admin-mode .pos-toolbar180{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 20px;margin:18px 0;background:#edf5fc;border:1px solid #bdd4e7;border-radius:12px;position:sticky;top:76px;z-index:8;box-shadow:0 6px 20px #102c4810}
.pos-toolbar180 strong,.pos-toolbar180 span{display:block}.pos-toolbar180 span{font-size:12px;line-height:1.5;margin-top:5px;color:#47617a}.pos-toolbar180 .actions{margin:0}.pos-tools180{display:flex;align-items:end;gap:16px;flex-wrap:wrap}.pos-tools180 .field{flex:1;min-width:180px}.pos-tools180 .hint{flex:1;min-width:180px}.pos-group-actions180{max-width:520px;justify-content:flex-end}.pos-notice180{font-size:13px;line-height:1.65}.players180{border:1px solid #cddfec;border-radius:12px;overflow:hidden;margin-top:16px}.player180{display:grid;grid-template-columns:minmax(200px,1fr) minmax(185px,auto) minmax(135px,auto) minmax(125px,auto);align-items:center;gap:16px;padding:16px;background:#f7fafc;border-bottom:1px solid #d8e4ee}.player180:last-child{border-bottom:0}.player180.absent180{background:#fff0f3}.identity180{display:flex;align-items:flex-start;gap:12px;min-width:0}.identity180 input.select180{width:24px;height:24px;min-height:24px;min-width:24px;margin:2px 0;accent-color:#246cc4;cursor:pointer}.identity180 input:disabled{cursor:not-allowed;opacity:.45}.player180 strong{color:#18354d;overflow-wrap:anywhere}.player180 small{display:block;color:#526d82;font-size:12px;line-height:1.65}.player180 .price180{margin-top:5px}.player180 .btn{min-height:44px;padding:10px 13px;font-size:12px}.player180 .paid180{display:flex;flex-direction:column;gap:6px}.cart180{display:flex;flex-direction:column;gap:5px}.cart180 .btn{white-space:normal;text-align:center}.player180 .state-buttons150{gap:5px}.reception-group180 .admin-heading{gap:18px}.reception-group180 .actions{flex-wrap:wrap}.pos-toolbar180 .btn{min-height:44px}.admin-mode .notice.success{background:#eaf8f1;border-color:#a8d8bf;color:#1c583d}#pos-result180:empty{display:none}
@media(max-width:1200px){.player180{grid-template-columns:minmax(180px,1fr) minmax(185px,auto) minmax(125px,auto)}.player180 .cart180{grid-column:2/4;flex-direction:row;align-items:center}.pos-toolbar180{flex-wrap:wrap}.pos-group-actions180{max-width:400px}}
@media(max-width:800px){.admin-mode .pos-toolbar180{position:static}.player180{grid-template-columns:1fr 1fr;gap:12px}.player180 .identity180{grid-column:1/-1}.player180 .attendance180{grid-column:1/-1}.player180 .cart180{grid-column:auto}.pos-group-actions180{max-width:none;justify-content:flex-start}.pos-toolbar180 .actions{width:100%}.pos-toolbar180 .actions .btn{flex:1}.pos-toolbar180 .actions .btn:last-child{flex-basis:100%}.player180 .state-buttons150 .btn{flex:1}.reception-group180 .admin-heading{flex-direction:column;align-items:stretch}.pos-tools180 .hint{flex-basis:100%}.reception-group180 h2{overflow-wrap:anywhere}.player180 .btn{font-size:13px}.player180 .cart180{display:block}}
@media(prefers-reduced-motion:reduce){.pos-toolbar180,.player180{transition:none}}

/* SOURCE: assets/release190.css */
/* Additive management controls. Existing ASDF colours and layout retained. */
.sort-button190{display:inline-flex;align-items:center;justify-content:space-between;gap:.6rem;border:0;padding:.3rem 0;background:transparent;color:inherit;font:inherit;font-weight:inherit;text-align:left;cursor:pointer;min-height:36px;width:100%}
.sort-button190:focus-visible{outline:2px solid #2563eb;outline-offset:3px;border-radius:3px}
.sort-mark190{opacity:.45;font-size:.9em}
th[aria-sort="ascending"] .sort-mark190,th[aria-sort="descending"] .sort-mark190{font-size:0;opacity:1}
th[aria-sort="ascending"] .sort-mark190::after{content:"\2191";font-size:15px}
th[aria-sort="descending"] .sort-mark190::after{content:"\2193";font-size:15px}
.sort-hint190{font-size:.78rem;color:#64748b;margin:.5rem 0}
.customer-followup190{min-width:1480px}
.customer-followup190 td{vertical-align:top}
.filter-followup190{flex-wrap:wrap;gap:.75rem}
.filter-followup190 .field{min-width:180px}
.erase-panel190{border:1px solid #efb2b2!important;background:#fff8f8!important;margin-top:1rem}
.erase-panel190 h2{color:#9f2020}
.erase-btn190{border:1px solid #b42318!important;background:#b42318!important;color:#fff!important}
.erase-counts190{max-height:210px;overflow:auto;font-size:.85rem;border:1px solid #dbe1e9;border-radius:8px;padding:.6rem}
.notification-view .wrapper{max-width:920px;margin:auto;padding:24px 16px}
.notification-view .panel{margin-bottom:16px}
.notification-view #notification-access:has(#notification-opening[hidden]){margin:0}
@media(max-width:600px){.filter-followup190 .field{min-width:100%;}.erase-panel190 .btn{width:100%;}}

/* SOURCE: assets/release200.css */
.email-brand200>summary{cursor:pointer;font-size:1.1rem;padding:8px 0}.email-brand200 form{padding-top:18px}.email-event200[hidden]{display:none}.email-event200 summary small{display:block}.email-frame-box200{overflow:auto;background:#dce3eb;border:1px solid #cbd5e1;border-radius:8px;padding:8px}.email-frame200{display:block;width:100%;height:660px;border:0;margin:0 auto;background:#fff}.email-frame200.mobile200{width:390px;max-width:100%}.email-plain200{white-space:pre-wrap;overflow-wrap:anywhere;max-height:400px;overflow:auto;font-size:12px}#preferences200 .panel{margin-bottom:20px}.email-search200{max-width:500px}

/* SOURCE: assets/release201.css */
/* Targeted addition: preserve the 2.0 visual identity. */
.price-edit201 { margin-top:.45rem; display:inline-flex; min-height:36px; }
.manual-price201 { margin-top:.35rem; margin-right:.4rem; }
.price-summary201 { display:flex; flex-wrap:wrap; gap:1rem; margin:1rem 0; }
.price-summary201 > div { flex:1; min-width:120px; padding:1rem; border:1px solid var(--line,#dce2ec); border-radius:12px; }
.price-summary201 strong { display:block; font-size:1.4rem; margin-top:.3rem; }
#seat-price201 fieldset { border:1px solid var(--line,#dce2ec); border-radius:10px; padding:1rem; margin:.8rem 0; min-width:0; }
#seat-price201 [hidden] { display:none !important; }
.price-breakdown201 { border:1px solid var(--line,#dce2ec); border-radius:12px; padding:1rem; margin:.8rem 0; }
.price-breakdown201 > div { display:flex; justify-content:space-between; gap:1rem; margin:.5rem 0; }
.price-breakdown201 b, .price-breakdown201 strong { white-space:nowrap; }
.price-final201 { border-top:1px solid var(--line,#dce2ec); padding-top:.8rem; font-size:1.05rem; }
.price-history201 { margin-top:1rem; }
.price-history201 summary { cursor:pointer; font-weight:600; }
.player-price201 { display:flex; align-items:center; flex-wrap:wrap; gap:.3rem; margin-top:.3rem; }
@media(max-width:600px) { #seat-price201 .fields { grid-template-columns:1fr; } .price-summary201 { gap:.6rem; } .price-breakdown201 { padding:.7rem; } }

/* SOURCE: assets/release210.css */
/* Additive 2.1 layout, preserving the established AS-DF appearance. */
.growth-stats210{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin:18px 0}.growth-stat210{display:flex;flex-direction:column;gap:8px;text-decoration:none;color:inherit}.growth-stat210 strong{font-size:2rem;color:var(--blue,#2563eb)}.growth-sessions210{display:grid;gap:14px}.growth-session210{border:1px solid var(--line,#304357);border-radius:14px;padding:20px;display:grid;grid-template-columns:minmax(0,1fr) minmax(145px,.5fr);gap:16px;align-items:center}.growth-session210 h3{margin:12px 0 6px}.growth-session210 .actions{grid-column:1/-1}.growth-fill210{display:flex;flex-direction:column;gap:7px}.growth-fill210 strong{font-size:1.6rem}.growth-fill210 progress,.growth-funnel210 progress{width:100%;height:10px;accent-color:#2563eb}.growth-draft210,.growth-consent210{border:1px solid var(--line,#304357);border-radius:12px;padding:16px 20px;margin:18px 0;background:rgba(37,99,235,.045)}.growth-draft210{display:flex;align-items:center;justify-content:space-between;gap:16px}.growth-consent210 h2{font-size:1rem}.growth-actions210{margin:12px 0}.growth-feature210{display:flex;flex-wrap:wrap;gap:8px}.growth-panel210 fieldset{border:0;min-width:0;padding:0}.growth-mail210{width:100%;height:620px;border:1px solid #dbeafe;border-radius:12px;background:#fff;margin:16px 0}.growth-sms210{white-space:pre-wrap;overflow-wrap:anywhere;border:1px solid var(--line,#304357);border-radius:10px;padding:16px}.growth-segment210{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--line,#dce2e9)}.growth-funnel210{display:grid;gap:18px}.growth-funnel210>div{display:grid;grid-template-columns:1fr auto;gap:8px}.growth-funnel210 progress{grid-column:1/-1}.admin-mode .growth-session210{background:#f8fafc;border-color:#dbe4ef}.growth-panel210 th{cursor:pointer}.growth-panel210 .fields{align-items:end}#f-referral_link{font-size:14px}#campaign-launch210{padding:20px 0}.growth-consent210 .btn{min-width:110px}.growth-panel210 textarea{width:100%}@media(max-width:700px){.growth-draft210{display:block}.growth-draft210 .actions{margin-top:12px}.growth-session210{grid-template-columns:1fr;padding:16px}.growth-stats210{grid-template-columns:1fr 1fr}.growth-stat210{padding:14px}.growth-mail210{height:570px}.growth-panel210 .fields{grid-template-columns:1fr}.growth-segment210{flex-wrap:wrap}.growth-consent210,.growth-draft210{padding:14px}.growth-stats210 .panel{min-width:0}.growth-panel210 table{min-width:560px}}

/* SOURCE: assets/release212.css */
/* 2.1.2 - High-contrast logistics, separate from activity colours. */
.snack-badge212,.snack-seat212{display:inline-flex;align-items:center;gap:.4rem;max-width:100%;box-sizing:border-box;padding:.45rem .65rem;border:2px solid #b45309;border-radius:7px;background:#fff1bf;color:#713500;font-size:.82rem;font-weight:850;line-height:1.3;white-space:normal;text-align:left;overflow-wrap:anywhere;vertical-align:middle}
.snack-badge212{margin:.3rem .4rem .3rem 0}.snack-seat212{font-size:.75rem;padding:.2rem .4rem;border-width:1px;margin-top:.3rem}
.snack-none212{display:block;color:#64748b;font-size:.8rem;margin-top:.3rem}
.snack-unknown212{background:#fff7ed;border-style:dashed;color:#7c2d12}
.snack-cancelled212,.snack-completed212,.snack-absent212{background:#f1f5f9;color:#475569;border-color:#94a3b8}
.snack-panel212,.snack-totals212{box-sizing:border-box;border:2px solid #b45309;background:#fff7df;color:#713500;border-radius:12px;padding:1.1rem 1.3rem;margin:0 0 1.15rem;box-shadow:0 2px 8px #b4530910}
.snack-panel212 .eyebrow,.snack-totals212 .eyebrow{color:#92400e}.snack-panel212 h2{margin:.35rem 0;font-size:1.4rem;color:inherit}.snack-panel212 p{margin:.4rem 0 0;color:inherit;line-height:1.55}.snack-panel212.snack-none212{border-color:#cbd5e1;background:#f8fafc;color:#475569}
.snack-panel212.snack-cancelled212,.snack-panel212.snack-completed212,.snack-panel212.snack-absent212{background:#f1f5f9;color:#475569;border-color:#94a3b8}
.snack-totals212{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.snack-totals212>div:first-child{display:grid;gap:.35rem}.snack-totals212 strong{font-size:1.18rem;line-height:1.3}.snack-totals212 strong b{font-size:1.9rem;margin-right:.3rem}.snack-totals212 span:not(.eyebrow):not(.snack-badge212){font-size:.83rem}.snack-total-details212{display:flex;flex-direction:column;gap:.35rem;max-width:100%}
.snack-totals212:not(.has-snacks212){border-color:#cbd5e1;background:#f8fafc;color:#475569}.snack-totals212:not(.has-snacks212) .eyebrow{color:#475569}
.admin-event .snack-badge212{display:flex;padding:.2rem .35rem;font-size:.72rem;line-height:1.2;flex-shrink:0}.admin-event.compact .snack-badge212{font-size:.65rem;padding:.15rem .25rem;margin:.2rem 0}.snack-day212{border-radius:5px;background:#fff1bf;color:#713500;padding:2px 5px;font-size:.75rem;font-weight:850;border:1px solid #b45309}.month-day>header{flex-wrap:wrap;gap:.2rem}
.booking-table .snack-badge212{min-width:120px}.calendar-preview>.snack-badge212{display:flex;margin-bottom:.8rem}.calendar-panel>.snack-totals212{margin:.75rem 1rem 1rem}
.pos-tools180 .field{min-width:180px}#snack-filter212{min-height:44px}.reception-group180 .admin-heading>div:first-child{min-width:0}.notification-view .snack-panel212{margin-top:1rem}
@media(max-width:640px){.snack-panel212,.snack-totals212{padding:.9rem 1rem}.snack-totals212{align-items:stretch;gap:.65rem}.snack-totals212>div{width:100%}.snack-panel212 h2{font-size:1.2rem}.snack-total-details212 .snack-badge212{margin-right:0}.pos-tools180 .field{min-width:0;width:100%}.snack-badge212{font-size:.8rem}.calendar-panel>.snack-totals212{margin:.5rem}}
@media print{.snack-badge212,.snack-panel212,.snack-totals212{print-color-adjust:exact;-webkit-print-color-adjust:exact;box-shadow:none;break-inside:avoid}.snack-badge212{border-width:2px}}

/* SOURCE: assets/release220.css */
/* GDPR views use the established light admin theme and dark client panels. */
.privacy-notice220 p{line-height:1.65;max-width:100ch}.privacy-pre220{white-space:pre-wrap;overflow-wrap:anywhere}.privacy-request-card220{padding:18px 0;border-bottom:1px solid #8192a344}.privacy-footer220{margin-left:18px}.privacy-ip220{margin-top:8px;display:flex!important;align-items:center;gap:6px;flex-wrap:wrap}.privacy-ip220 code{overflow-wrap:anywhere;font-size:12px}.privacy-overdue220{font-weight:750;color:#b91c1c}.privacy-danger220{border:2px solid #b91c1c!important}.privacy-erasure-summary220{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}.privacy-erasure-summary220 b{padding:12px;background:#8192a31a;border-radius:8px}.privacy-short220{padding:14px 20px}.privacy-honeypot220{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}.privacy-notice220 a,.privacy-short220 a{color:inherit;text-decoration:underline}.admin-mode .privacy-notice220{color:#172f45}#privacy-erase-error220{color:#bd2222;white-space:pre-wrap}#privacy-erase220 .check{margin:14px 0}#privacy-erase220{max-width:780px}#privacy-receipt220{margin-top:16px}@media(max-width:640px){.privacy-erasure-summary220{grid-template-columns:1fr}.privacy-ip220 .btn{white-space:normal}.privacy-footer220{display:block;margin:10px 0}.privacy-notice220{padding:18px}}

/* SOURCE: assets/release221.css */
/* AS-DF 2.2.1 - administrative booking editing, tablet and mobile. */
.booking-form221{max-width:1100px;margin:0 auto}.booking-form221 fieldset{padding:0;margin:0;border:0;min-width:0}.booking-form221 fieldset:disabled{opacity:.65}.booking-form221 .panel{margin-bottom:18px}.booking-form221 input,.booking-form221 select{max-width:100%;min-width:0}.booking-edit-banner221{display:flex;align-items:center;justify-content:space-between;gap:16px}.booking-edit-banner221 h2{margin:0 0 6px}.booking-edit-banner221 p{margin:0}.customer-create221{margin-bottom:18px}.customer-results221{display:grid;gap:6px;max-height:290px;overflow:auto}.customer-hit221{border:1px solid var(--border,#d7dfec);border-radius:10px;background:var(--surface,#fff);color:inherit;text-align:left;padding:12px;cursor:pointer;display:flex;flex-direction:column;gap:4px}.customer-hit221:hover,.customer-hit221:focus-visible{border-color:#3578d4;background:#eff6ff}.customer-hit221 span,.selected-customer221 span{font-size:13px;overflow-wrap:anywhere}.selected-customer221{margin-top:12px;padding:16px;border-radius:12px;background:#edf5ff;border:2px solid #3679c7;display:flex;flex-direction:column;align-items:flex-start;gap:8px}.roster221,.edit-roster221{display:grid;gap:8px;margin:14px 0}.roster-seat221{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;background:var(--surface-soft,#f4f7fb);padding:12px;border-radius:10px}.roster-seat221 label:not(.check),.edit-seat221 label:not(.check),.snack-bulk221>label{display:grid;gap:6px;font-size:13px}.roster-seat221 input[type=text]{width:100%}.edit-seat221{display:grid;grid-template-columns:minmax(130px,1fr) auto auto minmax(105px,135px);align-items:center;gap:12px;padding:12px;border-radius:10px;border:1px solid var(--border,#d7dfec)}.edit-seat221 small{display:block;margin-top:4px}.snack-choice221{border:2px solid #bb861e;border-radius:12px;padding:12px;background:#fff5dd}.snack-choice221 .hint{display:block;margin-top:8px}.snack-bulk221{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.snack-bulk221 input{max-width:140px}.admin-preview221{margin-top:20px;padding:18px;background:#f5f9ff;border:2px solid #3477c2;border-radius:12px}.preview-prices221>div{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:7px 0}.preview-prices221 .total221{border-top:2px solid #b3c4df;font-size:20px}.edit-totals221{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0}.edit-totals221>div{padding:12px;background:#fff;border:1px solid #d7dfec;border-radius:10px}.edit-totals221 strong{display:block;margin-top:5px;font-size:19px}.admin-preview221 .check{margin:14px 0}.booking-form221 .hint{line-height:1.5}dialog:has(#edit-booking221){width:min(1100px,calc(100vw - 24px));max-width:none}.admin-preview221 table{font-size:13px;white-space:nowrap}
@media(max-width:700px){.booking-edit-banner221{align-items:stretch;flex-direction:column}.roster-seat221{grid-template-columns:1fr;gap:8px}.edit-seat221{grid-template-columns:1fr 1fr}.edit-seat221>div{grid-column:1/-1}.edit-seat221>label:last-child{grid-column:1/-1}.edit-totals221{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-form221 .fields{grid-template-columns:1fr!important}.snack-bulk221{align-items:stretch}.snack-bulk221 .actions{width:100%}.admin-preview221{padding:12px}.booking-form221 .btn{white-space:normal}.customer-hit221{max-width:100%}.booking-form221 .panel{padding:16px}}

/* SOURCE: assets/release222.css */
/* 2.2.2 - Operator controls; no public tunnel layout or activity colour changes. */
.presentation-heading222{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;flex-wrap:wrap}
.presentation-heading222 h2{margin:0 0 8px}
.presentation-heading222 p{margin:0 0 12px}
.presentation-savebar222{display:flex;gap:14px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin:20px 0;padding:14px 0;border-top:1px solid var(--line,#283b50);border-bottom:1px solid var(--line,#283b50)}
.presentation-savebar222 p{margin:0;font-size:13px;max-width:440px;color:#a8bdd0}
.presentation-savebar222 p.is-dirty222{color:#ffd394;font-weight:600}
.presentation-fieldset222{border:0;padding:0;margin:0;min-width:0}
.presentation-list222{list-style:none;padding:0!important;margin:0!important;display:flex;flex-direction:column;gap:12px}
.presentation-row222{display:grid;grid-template-columns:40px 110px minmax(120px,1fr) minmax(220px,auto);gap:16px;align-items:center;padding:16px;border:1px solid #2c4358;border-radius:12px;background:#0c1b2b;min-width:0}
.presentation-row222.is-inactive222{background:#131c27;border-style:dashed}
.presentation-rank222{display:flex;align-items:center;flex-direction:column;gap:8px;color:#c3d3e2}
.presentation-rank222>span{font-weight:700;font-size:17px;font-variant-numeric:tabular-nums}
.presentation-handle222{color:#bdd4e7;cursor:grab;border:1px solid #344e67;border-radius:7px;background:#162b40;min-width:36px;min-height:36px;font-size:23px;line-height:1}
.presentation-handle222:active{cursor:grabbing}
.presentation-thumb222{width:110px;height:90px;border-radius:8px;object-fit:cover;background:#152b40}
.presentation-name222{display:flex;flex-direction:column;gap:5px;min-width:0;overflow-wrap:anywhere}
.presentation-name222 strong{color:#f1f6fc;font-size:15px;line-height:1.4}
.presentation-name222 span,.presentation-name222 small{font-size:12px;line-height:1.5;color:#b8cbdc}
.presentation-name222 .presentation-photo-label222{color:#88bce5;font-size:11px}
.presentation-actions222{display:flex;flex-direction:column;align-items:flex-end;gap:10px}
.presentation-actions222 .actions{justify-content:flex-end;gap:7px;flex-wrap:wrap}
.presentation-actions222 .btn{white-space:normal;font-size:12px}
.presentation-moves222{display:flex;gap:6px;align-items:center}
.presentation-moves222 .btn{font-size:19px;min-width:36px;min-height:34px;padding:4px 10px}
.presentation-moves222 select{padding:7px;width:86px;min-height:36px;font-size:12px}
.presentation-row222.is-dragging222{opacity:.45}
.presentation-row222.is-drop-target222{outline:2px solid #46a7f4;outline-offset:2px;background:#132e47}
.presentation-preview222{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:14px}
.presentation-preview-card222{overflow:hidden;border:1px solid #294156;border-left:3px solid var(--party-color,#3d88ca);border-radius:10px;background:#0c1b2b;min-width:0}
.presentation-preview-card222>div{display:flex;flex-direction:column;gap:6px;padding:14px;overflow-wrap:anywhere}
.presentation-preview-photo222{width:100%;height:88px;object-fit:cover;display:block}
.presentation-preview-card222 strong{font-size:14px;color:#eff7ff}
.presentation-preview-card222 span{font-size:13px;color:#d3e3f2}
.presentation-preview-card222 small{font-size:12px;color:#abc0d3}
.photo-previews222{display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:16px;margin:22px 0 12px}
.photo-previews222>div{min-width:0}
.photo-previews222 .eyebrow{display:block;margin-bottom:8px;white-space:normal}
#photo-wide222{width:100%;height:110px;object-fit:cover;display:block;border-radius:8px;background:#15283d}
#photo-square222{width:110px;height:110px;object-fit:cover;display:block;border-radius:8px;background:#15283d}
#service-photo-form222 output{font-size:12px;font-weight:400;margin-left:8px}
#service-photo-form222 input[type=range]{width:100%;min-height:38px;padding:0;accent-color:#58adf0}
#service-photo-form222 input[type=file]{max-width:100%;font-size:13px;white-space:normal}
#service-photo-form222 .hint,#service-photo-form222 small{line-height:1.5}
#photo-feedback222{min-height:20px;font-size:13px;line-height:1.5;overflow-wrap:anywhere}
.presentation-fieldset222:disabled{opacity:.72}
@media(max-width:1120px){
 .presentation-row222{grid-template-columns:34px 90px minmax(0,1fr);gap:12px}
 .presentation-thumb222{width:90px;height:80px}
 .presentation-actions222{grid-column:2/4;flex-direction:row;justify-content:space-between;align-items:center;flex-wrap:wrap}
 .presentation-preview222{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:580px){
 .presentation-panel222{padding:14px!important}
 .presentation-row222{padding:12px 10px;grid-template-columns:28px 66px minmax(0,1fr);gap:10px}
 .presentation-thumb222{width:66px;height:76px}
 .presentation-name222 strong{font-size:13px}
 .presentation-rank222>span{font-size:14px}
 .presentation-handle222{min-width:28px;min-height:34px;font-size:21px}
 .presentation-actions222{grid-column:1/4;align-items:stretch;gap:10px}
 .presentation-actions222 .actions{justify-content:flex-start}
 .presentation-actions222 .btn{min-height:40px}
 .presentation-moves222{width:100%}
 .presentation-moves222 select{margin-left:auto}
 .presentation-savebar222 .actions{width:100%;align-items:stretch}
 .presentation-savebar222 .btn{flex:1;min-width:120px;font-size:12px}
 .presentation-savebar222 p{font-size:12px}
 .presentation-preview222{grid-template-columns:1fr}
 .presentation-preview-card222{display:grid;grid-template-columns:76px minmax(0,1fr);align-items:center}
 .presentation-preview-photo222{width:76px;height:84px}
 .presentation-preview-card222>div{padding:10px}
 .photo-previews222{grid-template-columns:minmax(0,1fr) 78px;gap:10px}
 #photo-square222{width:78px;height:92px}
 #photo-wide222{height:92px}
}

/* Administration uses the existing light palette. */
body.admin-mode .presentation-row222{background:#f8fbff;border-color:#d9e5f1}
body.admin-mode .presentation-row222.is-inactive222{background:#f2f4f7;border-color:#cad3de}
body.admin-mode .presentation-name222 strong{color:#173552}
body.admin-mode .presentation-name222 span,body.admin-mode .presentation-name222 small{color:#54708d}
body.admin-mode .presentation-name222 .presentation-photo-label222{color:#1766a6}
body.admin-mode .presentation-rank222{color:#355875}
body.admin-mode .presentation-handle222{background:#e9f2fb;color:#2c6595;border-color:#c7dcef}
body.admin-mode .presentation-savebar222{border-color:#dce7f1}
body.admin-mode .presentation-savebar222 p{color:#526e8a}
body.admin-mode .presentation-savebar222 p.is-dirty222{color:#8b5205;background:#fff5e4;padding:8px 12px;border-radius:7px}
body.admin-mode .presentation-row222.is-drop-target222{background:#e9f4ff}

/* SOURCE: assets/release230.css */
/* 2.3.0: legible offers and one vertical scroll for the mobile calendar. */
.celebration230,.marketing-choice230{border:1px solid var(--line,#cdd8e3);border-radius:16px;padding:20px;margin:18px 0;background:var(--panel,#fff);color:var(--text,#182337)}
.celebration230 legend{font-size:1.12rem;font-weight:800;padding:0 8px}.marketing-choice230{border-left:5px solid #2466cb;background:#eef5ff;color:#102d50}.marketing-choice230 h3{color:inherit;font-size:1.35rem}.marketing-choice230 .check{align-items:flex-start;padding:12px;background:#fff;border-radius:10px}.marketing-choice230 input[type=checkbox]{width:21px;height:21px;flex:0 0 21px}.marketing-choice230 small{display:block;margin-top:12px;line-height:1.5}.marketing-choice230 details{margin:14px 0}.marketing-choice230 summary{cursor:pointer}
.celebration-rules230{display:grid;gap:18px}.celebration-rules230>fieldset{border:1px solid var(--line,#d2dce8);border-radius:12px;padding:18px}.celebration-rules230 legend{font-weight:700;padding:0 8px}.celebration230 [hidden]{display:none!important}
.calendar-slots230 .admin-week-scroll{max-height:none;height:auto;overflow-x:auto;overflow-y:hidden}.calendar-slots230 .slot-card230{display:flex;flex-direction:column;gap:3px;overflow:hidden;text-align:left;font-size:.76rem;line-height:1.2}.calendar-slots230 .slot-card230 small{font-size:.7rem}.calendar-slots230 .slot-places230{font-size:.83rem}.slot-snack230{display:block;padding:3px 5px;border-radius:4px}.slot-snack230.has-snack230{background:#ffe49a;color:#432800;font-weight:800}.calendar-slots230 .admin-event.compact{height:auto;min-height:104px}.calendar-slots230 .month-day{overflow:visible}.slot-preview230{display:grid;gap:10px}.slot-booking230{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:14px 0;border-top:1px solid var(--line,#d4dfeb)}.slot-booking230 p{margin:6px 0}.customer-followup190 td small{display:block}
.calendar-agenda230{height:auto;max-height:none;overflow:visible;display:grid;gap:20px}.agenda-day230{border-top:1px solid var(--line,#d4dfeb);padding-top:12px}.agenda-day230 h3{font-size:1rem}.calendar-slots230 .agenda-slot230{position:static;width:100%;height:auto;min-height:110px;font-size:.9rem;padding:14px;margin:9px 0;overflow:visible}.calendar-slots230 .agenda-slot230 .slot-places230{font-size:1.08rem}.calendar-slots230 .agenda-slot230 small{font-size:.8rem}
@media(max-width:900px){.calendar-slots230{padding:14px;overflow:visible;max-height:none}.calendar-slots230 .admin-calendar-toolbar{display:flex;flex-direction:column;align-items:stretch}.calendar-slots230 .admin-calendar-toolbar h2{font-size:1.05rem}.calendar-slots230 .calendar-filters{display:grid;grid-template-columns:1fr 1fr;min-width:0}.calendar-slots230 .calendar-filters>*{min-width:0}.calendar-slots230 .calendar-filters select,.calendar-slots230 .calendar-filters input{width:100%;min-width:0}.calendar-slots230 .slot-card230 .event-top{flex-wrap:wrap}.slot-booking230{align-items:stretch;flex-direction:column}.marketing-choice230,.celebration230{padding:14px}.calendar-slots230 .segmented{flex-wrap:wrap}}

.calendar-filter-details230,.calendar-help230{margin:12px 20px;padding:10px 0}.calendar-filter-details230 summary,.calendar-help230 summary{cursor:pointer;font-size:.86rem;font-weight:650}.calendar-slots230 .calendar-legend{flex-wrap:wrap}.calendar-slots230 .week-column{background-size:auto 126px;background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 125px,#eaf0f6 125px,#eaf0f6 126px)}.calendar-slots230 .admin-week-scroll{overscroll-behavior:auto}.celebration-booking230{border-left:4px solid #bb811c}
@media(max-width:900px){.admin-mode .calendar-slots230{padding:0 10px 14px}.calendar-slots230 .admin-calendar-toolbar{padding:12px 4px;gap:10px}.calendar-slots230 .calendar-filters{padding:10px 0;gap:12px;align-items:start}.calendar-slots230 .calendar-filters .field{display:block!important;width:100%!important;min-width:0!important;max-width:none!important}.calendar-slots230 .calendar-filters label{display:block;width:100%;line-height:1.4;margin-bottom:6px}.calendar-slots230 .calendar-filters .check{grid-column:1/-1;display:flex;max-width:none;align-items:center}.calendar-slots230 .calendar-filters input[type=checkbox]{width:20px;min-width:20px;height:20px;margin:0;flex:none}.calendar-slots230 .calendar-filters button{grid-column:1/-1;width:100%}.calendar-slots230 .calendar-legend{padding:12px 2px;gap:10px}.calendar-help230,.calendar-filter-details230{margin:6px 2px}.calendar-slots230 .agenda-day230{padding-top:8px}.calendar-slots230 .agenda-day230 h3{margin:8px 0}.calendar-slots230 .agenda-day230 .hint{margin:4px 0}.calendar-slots230 .calendar-agenda230{gap:10px}.calendar-slots230 .slot-card230 .event-top b{font-size:.95rem!important}.calendar-slots230 .slot-card230 .event-top>span{font-size:.82rem}.calendar-slots230 .calendar-help230 .hint{line-height:1.5}}

/* SOURCE: assets/release240.css */
/* Selected-seat payments and a readable, freely chosen marketing opt-in. */
.marketing-choice230.marketing240{background:linear-gradient(125deg,#0d2645,#123d65);border:1px solid #3375a4;border-left:5px solid #ef4354;color:#f4f8ff;padding:24px;box-shadow:0 12px 30px #07132118}
.marketing240 h3,.marketing240 p,.marketing240 .eyebrow,.marketing240 summary{color:#f4f8ff!important}.marketing240 .eyebrow{font-size:.74rem;letter-spacing:.1em}.marketing240 h3{font-size:1.5rem;line-height:1.25;margin:6px 0}.marketing240 p{line-height:1.6}
.marketing-top240{display:flex;gap:14px;align-items:center}.marketing-icon240{display:grid;place-items:center;flex:0 0 48px;height:48px;border-radius:13px;background:#ffcd5a;color:#123053;font-size:28px}.marketing-benefits240{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.marketing-benefits240 span{color:#fff;background:#ffffff17;border:1px solid #ffffff35;border-radius:24px;padding:6px 10px;font-size:.8rem;font-weight:700}
.marketing240 .marketing-optin240{display:flex;align-items:flex-start;gap:13px;background:#fff;color:#102d50;border:2px solid transparent;border-radius:13px;padding:18px;cursor:pointer}.marketing240 .marketing-optin240:has(input:checked){border-color:#50b8ea;background:#e8f6ff}.marketing240 .marketing-optin240 input{margin-top:3px;width:24px;height:24px;flex:0 0 24px;accent-color:#156ab5}.marketing240 .marketing-optin240 strong{display:block;color:#102d50;font-size:1.05rem;line-height:1.4}.marketing240 .marketing-optin240 small{color:#384b61;font-size:.8rem;line-height:1.55;margin-top:8px}.marketing240 .check{color:#123053}.marketing240 .marketing-freedom240{font-size:.78rem;margin-bottom:0}.marketing240 summary{padding:8px 0;line-height:1.4}.marketing240 input:focus-visible{outline:3px solid #55a9eb;outline-offset:3px}
.payment-head240 h2{font-size:1.45rem;margin:8px 0}.payment-onsite240{padding:14px 16px;border:1px solid #c2ddce;background:#eef8f2;color:#175134;border-radius:12px;margin:16px 0;line-height:1.5}.pay-seats240{display:grid;gap:9px;margin:16px 0}.pay-seat240{display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:12px;border:1px solid #cfdbea;background:#f9fbfe;color:#18344f;border-radius:12px;padding:15px;cursor:pointer}.pay-seat240:has(input:checked){border-color:#1974bd;background:#e9f4ff;box-shadow:inset 4px 0 #1974bd}.pay-seat240.unavailable{background:#f1f3f6;color:#616f7b;cursor:default}.pay-seat240 input{width:21px!important;height:21px;min-width:21px;margin:0!important;accent-color:#1974bd}.pay-seat240 strong{display:block;word-break:break-word}.pay-seat240 small{display:block;margin-top:4px;line-height:1.45;font-size:.8rem}.pay-seat-amount240{text-align:right;font-weight:800;max-width:160px;line-height:1.35}.payment-total240{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:18px 0;padding:16px;border-radius:12px;background:#0e2d4d;color:#fff!important}.payment-total240 strong{font-size:1.6rem;white-space:nowrap;color:#fff!important}.paypal-buttons240{max-width:420px;margin:18px auto}.paypal-buttons240>div{margin-bottom:8px}.payment-result240{line-height:1.5;white-space:pre-line;font-weight:650}.payment-control240[hidden]{display:none}.payment-control240{display:flex;flex-wrap:wrap;gap:8px}.payment-resume240{border-top:1px solid #ccd7e3;padding-top:14px;margin-top:20px}.payment-resume240>div{padding:8px 0;display:flex;gap:9px;align-items:center;flex-wrap:wrap}.payment-callout240{border-left:5px solid #1974bd;display:flex;gap:20px;justify-content:space-between;align-items:center}.payment-callout240 h2{font-size:1.25rem;margin:6px 0}.share-payment240{border:2px solid #3478b4;background:#f1f7ff!important;color:#14314e!important}.share-payment240 h2,.share-payment240 p,.share-payment240 label,.share-payment240 summary{color:#14314e!important}.share-payment240 textarea{min-height:125px;color:#17314f!important;background:#fff!important}.share-payment240 .sms-preview{margin:16px 0}.payment-booking-actions240{display:flex;gap:16px;flex-wrap:wrap;margin:16px 0}.payment-booking-actions240 strong{color:#9a4423;align-self:center}.payment-row240{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px}.payment-row240 h2{font-size:1.5rem;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.payment-row240 p{margin:8px 0}.payment-row240 small{display:block;line-height:1.7;overflow-wrap:anywhere}.payment-row240>div:last-child{display:flex;flex-direction:column;gap:8px;min-width:190px}.payment-facts240{display:grid;grid-template-columns:minmax(130px,1fr) 2fr;gap:12px;overflow-wrap:anywhere}.payment-facts240 dt{font-weight:700}.payment-facts240 dd{margin:0}.refund-seat240{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:14px 0;border-bottom:1px solid #d4dde7}.refund-seat240>span{min-width:0}.refund-seat240 strong{overflow-wrap:anywhere}.refund-seat240 small{display:block;margin-top:5px;line-height:1.45}.refund-seat240 input{width:110px!important;min-width:110px;max-width:110px;flex:0 0 110px}.payment-mini240{padding:18px 0;border-top:1px solid #d0dbe5}.payment-mini240 p{line-height:1.55}.payment-mini240 small{overflow-wrap:anywhere}.player-payment240{margin-top:8px}.payment-form240 .fields>*{min-width:0}
@media(max-width:700px){.marketing-choice230.marketing240{padding:17px}.marketing240 h3{font-size:1.22rem}.marketing240 .marketing-optin240{padding:14px;gap:10px}.marketing240 .marketing-optin240 strong{font-size:1rem}.payment-callout240{display:block}.payment-callout240>.btn{width:100%;margin-top:10px}.payment-row240{grid-template-columns:1fr;gap:4px}.payment-row240>div:last-child{min-width:0}.payment-row240 .btn{width:100%}.pay-seat240{grid-template-columns:22px minmax(0,1fr) auto;gap:9px;padding:12px}.pay-seat-amount240{font-size:.85rem;max-width:98px}.payment-form240 .fields{grid-template-columns:1fr}.payment-form240 .actions{align-items:stretch}.payment-form240 .actions>.btn{white-space:normal;flex:1 1 220px}.payment-facts240{grid-template-columns:1fr;gap:4px}.payment-facts240 dd{margin-bottom:14px}.refund-seat240{gap:10px}.refund-seat240>.btn{max-width:125px;white-space:normal}.payment-total240 strong{font-size:1.38rem}.share-payment240 .actions>.btn{width:100%;white-space:normal}}
/* Explicit foregrounds: the client theme uses light text, while these cards are light. */
.pay-seat240{color-scheme:light}
.pay-seat240>span,.pay-seat240 strong,.pay-seat240 .pay-seat-amount240{color:#18344f!important;opacity:1!important}
.pay-seat240 small{color:#44617b!important}
.pay-seat240.unavailable>span,.pay-seat240.unavailable strong,.pay-seat240.unavailable small,.pay-seat240.unavailable .pay-seat-amount240{color:#546574!important}
.payment-onsite240,.payment-onsite240 strong{color:#175134!important}
.share-payment240 strong,.share-payment240 .hint{color:#14314e!important}
.share-payment240 .btn.ghost{color:#14314e!important;border-color:#9fb6cd;background:#fff}
.marketing240 .marketing-optin240{color-scheme:light}
.marketing240 details .check{color:#f4f8ff!important}

/* SOURCE: assets/release250.css */
/* 2.5.0: scoped, explicit foreground/background pairs in every payment and opt-in card. */
.checkout-page250{color:#142c43;max-width:1180px;margin:auto}
.checkout-status250{padding:24px;background:#f6f9fd;border:1px solid #c0cfdf;border-radius:18px;margin-bottom:20px;color:#142c43}
.checkout-status250 h1,.checkout-status250 p,.checkout-status250 span,.checkout-status250 strong{color:#142c43}
.checkout-status250 h1{font-size:clamp(1.7rem,4vw,2.5rem);line-height:1.18;margin:.5rem 0 1rem}
.checkout-page250 .eyebrow,.checkout-choices250 .eyebrow{color:#23547c}
.checkout-grid250{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(310px,.85fr);align-items:start;gap:20px}
.checkout-grid250>*{min-width:0;max-width:100%}
.checkout-grid250 .panel{margin:0}
.checkout-choices250{padding:20px;border:2px solid #22699e;background:#eef5fc;border-radius:14px;margin:0 0 24px;min-width:0;color:#142c43}
.checkout-choices250 legend{font-size:1.22rem;font-weight:800;color:#173b5b;padding:0 8px;float:none}
.checkout-choices250 p,.checkout-choices250 strong,.checkout-choices250 small{color:#142c43}
.checkout-methods250{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:14px 0}
.checkout-method250{display:flex!important;align-items:flex-start;gap:12px;padding:18px!important;background:#fff!important;border:2px solid #a9bdd0;border-radius:12px;cursor:pointer;color:#142c43!important;margin:0!important}
.checkout-method250:has(input:checked){border-color:#176291;box-shadow:0 0 0 2px #176291}
.checkout-method250 input,.marketing-channel250 input,.pay-player250 input{width:22px!important;height:22px!important;min-width:22px;flex:none;margin:2px 0 0!important;accent-color:#175b89;cursor:pointer}
.checkout-method250>span{display:block;color:#142c43!important;background:transparent!important}
.checkout-method250 strong{font-size:1.08rem;display:block;margin-bottom:8px;line-height:1.35}
.checkout-method250 small{display:block;font-size:.94rem;line-height:1.5;color:#30475b}
.checkout-note250{font-size:.96rem;line-height:1.5}
.checkout-choices250 .notice{margin-bottom:0;background:#fff7e7!important;color:#533300!important;border-color:#c39228!important}
.checkout-page250 .notice{color:#243d53;background:#eaf2fa;border:1px solid #b8cfe4}
.checkout-page250 .notice.warning{color:#533300;background:#fff7e7;border-color:#c39228}
.checkout-page250 .notice.warning strong{color:#533300}
.registration-counts250{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}
.registration-counts250>span{padding:9px 13px;border:1px solid #bbcddd;background:#fff;border-radius:8px;font-size:1rem}
.registration-counts250 strong{font-size:1.35rem;padding-right:4px}
.checkout-footer250{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0 34px;align-items:center;padding:18px;background:#f6f9fd;border:1px solid #c0cfdf;border-radius:14px}
/* Never inherit the site's dark hero typography into white payment controls. */
.checkout-pay250,.payment-form240{color:#142c43}
.checkout-pay250 h2,.checkout-pay250 h3,.checkout-pay250 p,.checkout-pay250 strong,.checkout-pay250 label,.checkout-pay250 small{color:#142c43}
.checkout-pay250 .hint{color:#354e65}
.checkout-pay250 .payment-onsite240{background:#edf5fc;color:#173b5b;border:1px solid #b7cfe3}
.pay-seat250{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(170px,.8fr);padding:16px!important;align-items:center;gap:14px;background:#fff!important;border:1px solid #b8cbdc;color:#142c43!important;opacity:1!important}
.pay-seat250.unavailable{background:#f0f3f6!important;color:#415367!important;opacity:1!important}
.pay-player250{display:flex!important;align-items:flex-start;gap:12px;margin:0!important;cursor:pointer;background:transparent!important;color:#142c43!important}
.pay-player250>span,.pay-seat-choice250{min-width:0;display:block;color:#142c43!important;background:transparent!important}
.pay-player250 strong{display:block;color:#142c43!important;overflow-wrap:anywhere;line-height:1.4}
.pay-player250 small{display:block;line-height:1.5;font-size:.87rem;color:#364d62!important}
.pay-player250 .seat-state250{margin-top:3px;font-weight:650;color:#185078!important}
.pay-seat-choice250>label{display:block;color:#364d62!important;font-size:.87rem;margin:0 0 5px}
.pay-seat-choice250 select{display:block;width:100%;max-width:100%;padding:9px 8px;background:#fff!important;color:#142c43!important;border:1px solid #7c98b2;border-radius:8px;font-size:.93rem;min-height:44px}
.pay-seat-choice250 option{color:#142c43;background:#fff}
.payment-total240{background:#eaf3fc!important;color:#142c43!important;border:1px solid #a4c4df!important;gap:10px;flex-wrap:wrap}
.payment-total240>span,.payment-total240>strong{color:#142c43!important;opacity:1!important}
.payment-form240 .fields label{color:#203e59!important}
.payment-form240 .fields input{background:#fff!important;color:#142c43!important;border:1px solid #8ba5bc}
.payment-result240{white-space:normal;overflow-wrap:anywhere;color:#173b5b!important;line-height:1.55}
.payment-control240[hidden]{display:none!important}
.checkout-page250 .btn,.checkout-choices250 .btn{white-space:normal;text-align:center;line-height:1.35;min-height:44px}
.checkout-page250 .btn.ghost,.checkout-page250 .btn.secondary{background:#fff!important;color:#173b5b!important;border:1px solid #6686a5}
.checkout-page250 .btn:not(.ghost):not(.secondary){color:#fff;background:#155b8f;border-color:#155b8f}
.checkout-page250 .btn:disabled,#confirm-booking button:disabled{opacity:1;color:#536171!important;background:#e0e6ed!important;border:1px solid #b1bfcc;cursor:not-allowed}
/* The message, not a collapsed details element, is the primary group sharing action. */
.share-card250,.share-panel250{background:#eff6ff!important;color:#142c43!important;border:2px solid #286393!important;border-radius:16px;padding:22px!important;max-width:100%}
.share-card250 h2,.share-card250 p,.share-card250 strong,.share-card250 label,.share-card250 .eyebrow,.share-panel250 h2,.share-panel250 p,.share-panel250 strong,.share-panel250 label,.share-panel250 summary,.share-panel250 .eyebrow{color:#142c43!important;opacity:1!important}
.share-top250{display:flex;gap:12px;align-items:flex-start;margin-bottom:14px}
.share-symbol250{font-size:2rem;line-height:1.25}
.share-top250 h2{font-size:1.38rem;line-height:1.2;margin:5px 0}
.share-card250 label{display:block;font-size:.94rem;font-weight:700;margin:14px 0 7px}
.share-card250 textarea,.share-card250 input,.share-panel250 textarea,.share-panel250 input{background:#fff!important;color:#182f45!important;border:1px solid #8da9c2!important;font-size:.95rem;line-height:1.55;width:100%;box-sizing:border-box;border-radius:8px;max-width:100%;padding:12px}
.share-card250 textarea{min-height:155px;resize:vertical}
.share-card250 .actions{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}
.share-card250 .share-hint250{font-size:.88rem;line-height:1.5;color:#304b64!important}
/* Email and SMS use equally legible, independently selectable cards. */
.marketing250{padding:24px!important;background:#eef5ff!important;border:2px solid #32628f!important;border-radius:16px;color:#142c43!important;margin:20px 0;max-width:100%;min-width:0}
.marketing250 header{display:flex;gap:12px;align-items:flex-start;background:none;padding:0;position:static;box-shadow:none}
.marketing250 .eyebrow{color:#224f78!important;font-weight:800;letter-spacing:.06em;line-height:1.5}
.marketing250 h3{color:#142c43!important;font-size:1.4rem!important;line-height:1.25!important;margin:6px 0 0!important}
.marketing250 p{color:#213f5b!important;font-size:.97rem;line-height:1.55;opacity:1!important}
.marketing250 .marketing-flash250{font-size:2rem;color:#253d57;background:#ffe7a4;border-radius:10px;padding:4px 8px;flex:none}
.marketing-benefits250{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}
.marketing-benefits250>span{color:#173e62!important;background:#dceaff!important;border:1px solid #adc6e0;padding:5px 9px;border-radius:20px;font-size:.8rem;font-weight:700}
.marketing-channels250{display:grid;gap:12px;grid-template-columns:1fr}
.marketing-channel250{display:flex!important;align-items:flex-start;gap:13px;min-width:0;background:#fff!important;border:2px solid #9ab4ce;border-radius:12px;padding:16px!important;margin:0!important;color:#142c43!important;cursor:pointer;text-align:left}
.marketing-channel250:has(input:checked){border-color:#155b8f;box-shadow:0 0 0 1px #155b8f}
.marketing-channel250>span{display:block;min-width:0;background:transparent!important;color:#142c43!important;padding:0!important}
.marketing-channel250 strong{display:block;color:#142c43!important;font-size:1.02rem!important;line-height:1.4;opacity:1!important;margin-bottom:6px}
.marketing-channel250 small{display:block;color:#304b64!important;background:transparent!important;font-size:.91rem!important;line-height:1.5;opacity:1!important;font-weight:400;text-transform:none;letter-spacing:normal}
.marketing-choice-note250{font-size:.87rem!important;margin-bottom:0!important}.marketing-choice-note250 strong{color:#213f5b!important}
.payment-deadline250{margin:20px 0;padding:18px;border:1px solid #a6bdd1;background:#f4f8fc;color:#173b5b;border-radius:10px}
.payment-deadline250 p,.payment-deadline250 label{color:#173b5b}
.checkout-page250 :focus-visible,.marketing250 :focus-visible,.checkout-choices250 :focus-visible{outline:3px solid #c44b00;outline-offset:4px}
@media(max-width:850px){.checkout-grid250{grid-template-columns:1fr}.checkout-share250{order:-1}.checkout-methods250{grid-template-columns:1fr}.checkout-status250{padding:18px}.share-card250{padding:18px!important}.checkout-page250 .panel{padding:18px}.checkout-pay250 h2{font-size:1.4rem}}
@media(max-width:480px){.pay-seat250{grid-template-columns:1fr;gap:10px}.pay-seat-choice250{padding-left:34px}.checkout-choices250{padding:14px}.checkout-method250{padding:14px!important}.marketing250{padding:16px!important}.marketing-channel250{padding:13px!important}.marketing250 h3{font-size:1.18rem!important}.share-card250 .actions>*{flex:1 1 140px}.checkout-footer250{padding:14px}.checkout-footer250>*{width:100%;box-sizing:border-box}.registration-counts250{gap:7px}.registration-counts250>span{padding:7px 9px;font-size:.9rem}.checkout-page250 .actions{flex-wrap:wrap}}
/* Final theme isolation: the historical dark theme uses #main .panel selectors.
   Set both sides of the contrast pair, including helper text and alert children. */
#main .checkout-pay250.panel{background:#fff!important;color:#142c43!important;border:1px solid #a8bfd4!important;box-shadow:none}
#main .checkout-pay250 h2,#main .checkout-pay250 h3,#main .checkout-pay250 p,#main .checkout-pay250 strong,#main .checkout-pay250 small,#main .checkout-pay250 label,#main .checkout-pay250 .eyebrow{color:#142c43!important;opacity:1!important}
#main .checkout-pay250 .hint{background:#edf4fb!important;color:#304b64!important;border-color:#8eafcc!important}
#main .checkout-status250 p,#main .checkout-status250 strong,#main .checkout-status250 span{color:#142c43!important;opacity:1!important}
#main .checkout-page250 .notice,#main .checkout-page250 .notice strong{color:#243d53!important;background:#eaf2fa!important;border-color:#b8cfe4!important}
#main .checkout-page250 .notice.warning,#main .checkout-page250 .notice.warning strong{color:#533300!important;background:#fff7e7!important;border-color:#b37c16!important}
#main .checkout-choices250 p,#main .checkout-choices250 strong,#main .checkout-choices250 small,#main .checkout-choices250 .checkout-note250{color:#142c43!important;opacity:1!important}
#main .checkout-choices250 legend{color:#173b5b!important;background:#eef5fc;padding:4px 8px;border-radius:6px}
#main .checkout-choices250 .notice.warning,#main .checkout-choices250 .notice.warning strong{color:#533300!important;background:#fff7e7!important}
#main .marketing-channel250 input,#main .checkout-method250 input,#main .pay-player250 input,#main .pay-seat-choice250 select{color-scheme:light}
#main .share-panel250 .hint,#main .share-card250 .share-hint250{background:transparent!important;color:#304b64!important;border:0!important}
#main .payment-deadline250 label,#main .payment-deadline250 p{color:#173b5b!important}
#main .payment-deadline250 .notice{background:#eaf3fc!important;color:#173b5b!important}

/* SOURCE: assets/release260.css */

/* Readable, scoped Google Calendar administration. No changes to booking styles. */
.gcal260 { --gcal-ink:#142a42; --gcal-muted:#3d5269; --gcal-line:#c7d4e1; color:var(--gcal-ink); display:grid; gap:20px; min-width:0; }
.gcal260 h2,.gcal260 h3,.gcal260 label,.gcal260 strong,.gcal260 summary { color:var(--gcal-ink); opacity:1; }
.gcal260 p,.gcal260 small,.gcal260 li { color:var(--gcal-muted); opacity:1; line-height:1.6; }
.gcal260 h2 { font-size:1.35rem; line-height:1.3; margin:0 0 14px; }
.gcal260 h3 { font-size:1.08rem; }
.gcal260 p { margin:10px 0; }
.gcal260 .eyebrow { color:#295178; letter-spacing:.08em; }
.gcal-hero260 { background:#edf5fc; border:1px solid #bdcee0; border-left:5px solid #215b91; border-radius:14px; padding:24px; display:flex; justify-content:space-between; align-items:center; gap:20px; }
.gcal-hero260 h2 { margin:10px 0; font-size:1.65rem; }
.gcal-state260 { border:1px solid #c3ced9; color:#34475b; background:#fff; padding:9px 12px; border-radius:22px; font-weight:700; flex-shrink:0; }
.gcal-state260.gcal-on260 { color:#145331; border-color:#a2cbb2; background:#e9f8ee; }
.gcal-metrics260 { display:grid; grid-template-columns:1fr 1fr 1.5fr; gap:12px; }
.gcal-metrics260>div { background:#fff; border:1px solid var(--gcal-line); border-radius:12px; padding:17px; display:grid; gap:7px; }
.gcal-metrics260 span { color:var(--gcal-muted); font-size:.85rem; }
.gcal-metrics260 strong { font-size:1.12rem; }
.gcal-grid260 { display:grid; grid-template-columns:1fr 1fr; gap:20px; align-items:start; }
.gcal-panel260 { background:#fff; padding:23px; border:1px solid var(--gcal-line); border-radius:14px; min-width:0; }
.gcal-step260 { display:inline-grid; width:30px; height:30px; place-items:center; background:#e7eff8; color:#1e4a78; border-radius:50%; margin-right:6px; font-size:1rem; }
.gcal260 .field,.gcal260 form { min-width:0; }
.gcal260 input:not([type=checkbox]),.gcal260 select { display:block; width:100%; max-width:100%; min-width:0; background:#fff; color:#142a42; border:1px solid #8fabc3; border-radius:8px; padding:11px; margin:7px 0 12px; font-size:1rem; }
.gcal260 input::placeholder { color:#536478; opacity:1; }
.gcal260 input[readonly] { background:#f2f6fa; font-size:.85rem; }
.gcal260 label { display:block; font-weight:600; margin-top:14px; }
.gcal260 input:focus-visible,.gcal260 select:focus-visible,.gcal260 button:focus-visible,.gcal260 summary:focus-visible { outline:3px solid #176eb4; outline-offset:3px; }
.gcal260 .btn { background:#174d7e; color:#fff; border:1px solid #174d7e; text-shadow:none; white-space:normal; min-height:42px; max-width:100%; }
.gcal260 .btn.secondary { color:#183f64; background:#e8f0f8; border-color:#aac1d7; }
.gcal260 .btn.ghost { color:#183f64; background:#fff; border-color:#aac1d7; }
.gcal260 .btn:disabled { opacity:1; color:#657382; background:#eef1f4; border-color:#c8d0d8; cursor:not-allowed; }
.gcal260 .actions { flex-wrap:wrap; gap:10px; margin:15px 0; }
.gcal260 details { margin:12px 0; }
.gcal260 summary { cursor:pointer; font-weight:700; line-height:1.5; padding:8px 0; }
.gcal260 details form { margin-top:10px; }
.gcal260 .gcal-fields260 { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.gcal260 label.gcal-toggle260 { display:flex; gap:12px; padding:16px; border:1px solid #b3cce1; border-radius:10px; background:#f0f6fc; align-items:flex-start; margin:18px 0; }
.gcal-toggle260 input { width:22px; height:22px; min-width:22px; margin-top:2px; accent-color:#174d7e; }
.gcal-toggle260 span { display:grid; gap:7px; min-width:0; }
.gcal-toggle260 small { font-weight:400; font-size:.9rem; }
.gcal-note260,.gcal-notice260,.gcal-error260 { border-radius:9px; padding:13px 16px; background:#eef5fb; border:1px solid #c6d6e4; }
.gcal260 .gcal-error260 { background:#fff2ef; border-color:#dca69d; color:#852923; }
.gcal260 .gcal-error260 strong { color:#852923; }
.gcal260 code { white-space:normal; overflow-wrap:anywhere; color:#173e65; background:#edf2f7; }
.gcal-privacy260 { background:#f6f9fc; }
.gcal-danger260 { border-color:#d2b5b0; }
.gcal-previews260 { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; }
.gcal-previews260 article { border:1px solid var(--gcal-line); border-left:4px solid #255f97; border-radius:8px; padding:16px; min-width:0; background:#f8fbff; }
.gcal260 pre { background:#edf3fa; color:#19324a; font:inherit; font-size:.87rem; line-height:1.6; white-space:pre-wrap; overflow-wrap:anywhere; padding:10px; max-width:100%; }
.gcal260 a { overflow-wrap:anywhere; }
.gcal-help260 ol { padding-left:23px; }
@media(max-width:850px) { .gcal-grid260 { grid-template-columns:1fr; } .gcal-hero260 { display:block; } .gcal-state260 { display:inline-block; margin-top:10px; } }
@media(max-width:540px) { .gcal260 { gap:14px; } .gcal-panel260,.gcal-hero260 { padding:17px; } .gcal-metrics260 { grid-template-columns:1fr 1fr; } .gcal-metrics260>div:last-child { grid-column:1/-1; } .gcal-previews260 { grid-template-columns:1fr; } .gcal260 .actions>.btn { width:100%; } .gcal260 .gcal-fields260 { gap:9px; } .gcal260 h2 { font-size:1.2rem; } .gcal-hero260 h2 { font-size:1.4rem; } }

/* SOURCE: assets/release270.css */
/* Systempay 2.7.0 - isolated checkout and administration styles. */
.systempay-box270 { background:#fff; color:#17283a; border:2px solid #2473ab; border-radius:16px; padding:24px; margin:20px 0; scroll-margin-top:90px; }
.systempay-box270[hidden] {display:none!important}
.systempay-title270 h3,.systempay-title270 p,.systempay-box270>.hint {color:#17283a!important}
.systempay-title270 .eyebrow {color:#144f79!important}
.systempay-box270 .kr-embedded {max-width:480px;width:100%;margin:18px auto;background:#fff}
.systempay-settings270,.systempay-settings270 p,.systempay-settings270 legend,.systempay-settings270 label,.systempay-settings270 h2,.systempay-settings270 h3 {color:#192b3d!important}
.systempay-settings270 {background:#fff!important;overflow-wrap:anywhere}
.systempay-settings270 .hint {color:#38516a!important}
.systempay-settings270 input,.systempay-settings270 select {background:#fff;color:#142a3e}
.systempay-settings270 fieldset {border:1px solid #bbcbd7;border-radius:12px;padding:18px;margin:14px 0;min-width:0}
.systempay-settings270 legend {font-weight:750;padding:0 8px}
.systempay-overview270 {display:flex;align-items:center;justify-content:space-between;gap:16px}
.systempay-keys270 {display:grid;grid-template-columns:1fr 1fr;gap:18px}
.systempay-url270 {display:block;white-space:normal;overflow-wrap:anywhere;background:#eaf2f8;color:#112c45;padding:14px;border-radius:8px}
.systempay-settings270 .actions {gap:10px;flex-wrap:wrap}
.systempay-settings270 input[type=checkbox] {accent-color:#165982}
@media(max-width:640px){.systempay-keys270{grid-template-columns:1fr;gap:0}.systempay-overview270{display:block}.systempay-box270{padding:16px 12px}.systempay-settings270 .actions>.btn{width:100%;white-space:normal}.systempay-settings270 fieldset{padding:12px}.systempay-settings270 .fields{grid-template-columns:1fr}}

/* SOURCE: assets/release280.css */
/* 2.8.0: restrained, readable preparation and fast reception controls. */
.join-flow280{max-width:900px;margin:auto;color:#182c42}.join-hero280{padding:24px 0}.join-hero280 h1{color:inherit}.join-steps280{display:flex;gap:12px;flex-wrap:wrap;list-style:none;padding:0;margin:20px 0}.join-steps280 li{background:#e6eef7;color:#243c53;border:1px solid #b7c9dd;border-radius:9px;padding:10px 16px;font-weight:700}.join-steps280 li[aria-current]{background:#153b60;color:#fff;border-color:#153b60}.join-flow280 .panel{background:#fff;color:#182c42}.join-flow280 .panel h2,.join-flow280 .panel h3,.join-flow280 .panel p,.join-flow280 .panel small{color:inherit}.join-flow280 .panel .hint{color:#40566d}.join-flow280 .panel .badge.green{color:#164928;background:#e4f6e8}.join-rental280{padding:18px;border:1px solid #aec5de;background:#f0f6fc;border-radius:12px;margin:20px 0}.option280{display:flex;gap:14px;align-items:flex-start;padding:12px 0;cursor:pointer}.option280 input{flex:0 0 auto;width:23px;height:23px;margin:2px 0}.option280 small,.option280 strong{display:block}.option280 small{margin-top:6px}.join-price280{margin:20px 0;padding:0}.join-price280>div{display:flex;justify-content:space-between;gap:24px;border-bottom:1px solid #d6e0eb;padding:10px 4px}.join-price280 dd{margin:0;font-weight:700;white-space:nowrap}.join-price280 dt{color:#304a65}.join-total280{font-size:1.1rem;background:#f0f6fc}.join-next280{padding:20px;border:2px solid #527b9f;border-radius:12px;margin-top:24px;background:#f3f7fc}.join-flow280 .join-seat.claimed{opacity:1;background:#edf0f4;color:#566271}.join-flow280 .join-seat input:checked+span{color:#102f50}.join-flow280 .join-seat:has(input:checked){background:#e2f0ff;border-color:#1e5c92}.join-flow280 details>summary{cursor:pointer;font-weight:700;color:#173b60}.join-flow280 .btn{min-height:44px}.optional-payment280{border:1px solid #659d70!important;background:#eff9f0!important;color:#1d4124!important}.optional-payment280 strong{color:inherit!important}.reception-guide280{color:#19374e!important;background:#eef5fc!important;border:1px solid #b7cddd!important}.complete-toggle280{display:flex;gap:12px;align-items:center;padding:12px 0;color:#19374e;font-weight:600}.complete-toggle280 input{width:21px;height:21px}.reception-group280 .player280{display:grid!important;grid-template-columns:minmax(220px,1fr) minmax(150px,auto) minmax(140px,auto);gap:10px 16px;padding:18px!important;border-bottom:1px solid #c7d6e6}.player280 .identity180{grid-column:1;min-width:0}.player280 .attendance180{grid-column:2}.player280 .paid180{grid-column:3}.player280 .player-quick280{grid-column:1 / -1;display:flex;gap:9px;align-items:center;flex-wrap:wrap}.player-quick280 .btn,.player280 .attendance180 .btn,.player280 .paid180 .btn{min-height:42px;white-space:normal}.unlinked280{font-size:.85rem;color:#465c70;background:#ecf1f5;border-radius:7px;padding:8px 12px}.player-more280{grid-column:1 / -1;border:1px solid #c1d0df;border-radius:10px;color:#19354e;background:#f6f9fc}.player-more280 summary{padding:10px 14px;cursor:pointer;font-weight:700}.player-advanced280{display:flex;gap:10px;flex-wrap:wrap;align-items:center;padding:12px 14px;border-top:1px solid #c1d0df}.player-advanced280 .cart180{display:flex;gap:8px;flex-wrap:wrap}.group-owner280{align-self:flex-start}.reception-group280 .admin-heading{flex-wrap:wrap}.reception-group280 .identity180 strong{overflow-wrap:anywhere}.reception-group280 .identity180 small{color:#42596f!important}.player-more280 button,.player-quick280 button{min-height:42px}.join-flow280 input[type=radio],.join-flow280 input[type=checkbox]{accent-color:#1f5a93}.join-flow280 :focus-visible,.reception-group280 :focus-visible{outline:3px solid #ae5a00;outline-offset:3px}
@media(max-width:720px){.join-flow280{width:100%;min-width:0}.join-steps280{gap:6px}.join-steps280 li{flex:1;padding:9px 5px;text-align:center;font-size:.82rem}.join-flow280 .panel{padding:18px}.join-flow280 .actions{display:flex;flex-direction:column;align-items:stretch}.join-flow280 .actions .btn{width:100%;justify-content:center;text-align:center}.join-flow280 .join-seat-grid{grid-template-columns:1fr}.join-rental280,.join-next280{padding:15px}.join-price280>div{gap:12px}.reception-group280 .player280{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;padding:14px!important}.player280 .identity180{grid-column:1 / -1}.player280 .attendance180{grid-column:1;display:flex;flex-direction:column}.player280 .paid180{grid-column:2;display:flex;flex-direction:column}.player280 .player-quick280{grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.player-quick280 .btn{width:100%;font-size:.85rem}.reception-group280 .player-more280{grid-column:1 / -1}.player-more280 .player-advanced280{display:flex;flex-direction:column;align-items:stretch}.player-advanced280 .cart180{max-width:100%;min-width:0}.reception-group280 .admin-heading{display:flex;flex-direction:column;align-items:stretch}.reception-group280 .pos-group-actions180{flex-wrap:wrap}.reception-group280 .players180{min-width:0}.complete-toggle280{font-size:.93rem}.group-owner280 .btn{min-height:42px}}
/* Explicit surfaces beat historical dark client-theme selectors. */
#main .join-flow280 .panel,#main .panel.join-flow280{background:#fff!important;color:#182c42!important;color-scheme:light;border-color:#b6cbdc!important}
#main .join-flow280 .panel h2,#main .join-flow280 .panel h3,#main .join-flow280 .panel p,#main .join-flow280 .panel label,#main .join-flow280 .panel small,#main .panel.join-flow280 p{color:#182c42!important}
#main .join-flow280 .hint{background:#edf4fb!important;color:#344e68!important;border-color:#789bbb!important}
#main .join-hero280,#main .join-hero280 h1{color:#f4f8fc!important}
#main .join-hero280 p{color:#b6cee2!important}
#main .join-flow280 .join-seat{background:#f0f5fb!important;color:#1d3852!important;border-color:#9fb9d1!important}
#main .join-flow280 .join-seat.claimed{background:#e8edf2!important;color:#536477!important}
#main .join-flow280 .join-seat:has(input:checked){background:#dfedff!important;border-color:#235c92!important;box-shadow:0 0 0 2px #235c92}
#main .join-flow280 .join-price280{color:#182c42!important}
#main .join-flow280 .join-price280 dt{color:#304a65!important}
#main .join-flow280 input:not([type=radio]):not([type=checkbox]),#main .join-flow280 select{background:#fff!important;color:#182c42!important;border-color:#9eb8d0!important}
#main .join-flow280 .notice:not(.success){background:#f5f1e6!important;color:#533f1d!important;border-color:#a99260!important}
#main .join-flow280 details>summary{color:#173b60!important}
.reception-help280{background:#f0f6fc;border:1px solid #b4cada;border-radius:10px;color:#213e56;margin:8px 0 12px}
.reception-help280>summary{font-weight:700;cursor:pointer;padding:12px 14px;min-height:44px}
.reception-help280>div{padding:0 12px 6px}

/* SOURCE: assets/release290.css */
/* 2.9.0 -- account navigation stays in document flow, never over the page actions. */
.release290 .client-frame160{display:block;max-width:1240px;padding:18px 20px 36px;margin:0 auto;}
.release290 .client-sidebar160{display:block;position:static;border:1px solid #2a4459;border-radius:16px;padding:16px 20px;background:#102638;}
.release290 .client-sidebar160 nav{position:static;top:auto;}
.release290 .client-frame160 .wrapper{padding:24px 0 0;min-width:0;}
.release290 .client-nav-title160{color:#c2d6e5;font-size:11px;letter-spacing:.12em;margin:0 0 10px;}
.release290 .client-primary290{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;}
.release290 .client-primary290 a{display:flex;align-items:center;justify-content:center;gap:9px;min-height:48px;margin:0;padding:12px 8px;border:1px solid #38556d;border-radius:10px;background:#1a354c;color:#f5f9fd;font-size:13px;font-weight:650;line-height:1.4;text-align:center;}
.release290 .client-primary290 a:hover{background:#294f70;}
.release290 .client-primary290 a.active{background:#e7f3ff;color:#163b5a;border-color:#a6d5ff;box-shadow:none;}
.release290 .client-primary290 svg{width:18px;height:18px;flex:0 0 auto;}
.release290 .client-more290{margin-top:12px;color:#d9e8f4;}
.release290 .client-more290 summary{cursor:pointer;font-size:13px;padding:7px 0;}
.release290 .client-more290 nav{display:flex;flex-wrap:wrap;gap:8px;padding-top:10px;}
.release290 .client-more290 nav a{color:#e6f3ff;display:flex;align-items:center;gap:8px;font-size:13px;padding:10px;background:#19364d;border:1px solid #3b5770;border-radius:8px;margin:0;}
.release290 .client-more290 svg{width:16px;height:16px;}
.release290 .client-mobile-menu290{display:none;position:static;}
.release290 .home290{display:flex;flex-direction:column;gap:22px;max-width:100%;}
.release290 .home290 h1{font-size:clamp(26px,3vw,38px);line-height:1.17;margin:8px 0 12px;color:inherit;}
.release290 .home290 h2{font-size:23px;line-height:1.3;margin:5px 0 15px;}
.release290 .home290 h3{font-size:19px;line-height:1.35;margin:10px 0;}
.release290 .home290 p{line-height:1.65;margin:8px 0 13px;}
.release290 .home290 .eyebrow,.release290 .eyebrow{display:block;font-size:10px;font-weight:750;letter-spacing:.13em;line-height:1.7;}
.release290 .welcome290{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px;background:linear-gradient(115deg,#173c59,#102637);color:#f6faff;border:1px solid #38607f;border-radius:16px;}
.release290 .welcome290 p{color:#d7e8f5;max-width:720px;}
.release290 .welcome290 .eyebrow{color:#add6f5;}
.release290 .welcome290 .actions{display:flex;flex-wrap:wrap;gap:10px;flex:0 0 auto;max-width:245px;}
.release290 .welcome290 .actions .btn{width:100%;justify-content:center;}
.release290 .home-benefits290{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.release290 .loyalty290,.release290 .member-short290{background:#f5f9fd;border:1px solid #d0dfeb;border-top:4px solid #236aa0;border-radius:14px;padding:22px;color:#172f43;min-width:0;}
.release290 .loyalty290.laser{border-top-color:#aa3150;}
.release290 .member-short290{border-top-color:#94672b;background:#fffaf0;}
.release290 .loyalty290 .eyebrow{color:#305979;}
.release290 .loyalty290.laser .eyebrow{color:#8a2e49;}
.release290 .loyalty290 p,.release290 .member-short290 p{color:#385267;font-size:14px;}
.release290 .loyalty290 small{color:#41596b;}
.release290 .loyalty290 progress{width:100%;height:10px;accent-color:#206795;border:0;display:block;margin:16px 0;}
.release290 .loyalty290.laser progress{accent-color:#a33150;}
.release290 .home290 .panel{background:#fff;color:#21384b;border:1px solid #d3e0e9;padding:24px;border-radius:14px;margin:0;min-width:0;}
.release290 .home290 .panel h2,.release290 .home290 .panel h3,.release290 .home290 .panel label,.release290 .home290 .panel p{color:#21384b;}
.release290 .home290 .panel small{color:#475f72;}
.release290 .home290 details.panel summary{font-size:17px;font-weight:650;cursor:pointer;}
.release290 .reservation-list290{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
.release290 .reservation-card290{border:1px solid #d8e2e9;border-radius:13px;overflow:hidden;background:#f8fbfd;color:#203b52;display:flex;flex-direction:column;min-width:0;text-decoration:none;}
.release290 .reservation-card290:hover{border-color:#5996c1;background:#edf5fc;}
.release290 .reservation-card290>div{padding:17px;}
.release290 img.reservation-photo290{width:100%;aspect-ratio:16/7;object-fit:cover;display:block;}
.release290 .reservation-card290 h3{color:#163e5c;margin:8px 0;}
.release290 .reservation-card290 p{font-size:14px;color:#344e61;}
.release290 .reservation-card290 small{color:#465d70;}
.release290 .reservation-card290 .eyebrow{color:#476179;}
.release290 .reservation-meta290{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:15px;font-size:12px;font-weight:650;}
.release290 .filter-pills290{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px;}
.release290 .club-invite290{display:flex;align-items:center;justify-content:space-between;gap:25px;background:#e9f4f1;color:#163c34;border:1px solid #b8d9cf;border-radius:14px;padding:26px;}
.release290 .club-invite290 p{max-width:690px;}
.release290 .row-card{display:flex;justify-content:space-between;gap:18px;align-items:center;border-bottom:1px solid #d8e2e9;padding:13px 0;}
.release290 .row-card>span{min-width:0;overflow-wrap:anywhere;}
.release290 .row-card small{display:block;font-size:12px;margin-top:3px;}
.release290 .member-sale290{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:20px;}
.release290 .member-price290{font-size:40px;font-weight:750;color:#17476b;margin:12px 0;}
.release290 .member-price290 small{font-size:15px;font-weight:500;}
.release290 .member-state290{padding:18px;background:#edf7f1;color:#235238;border:1px solid #b7d5bf;border-radius:10px;line-height:1.7;}
.release290 .member-sale290 input,.release290 .member-sale290 select{background:#fff;color:#172f43;border-color:#7b93a6;}
.release290 .member-sale290 .checkline,.release290 .member-sale290 .check{color:#1d3b53;}
.release290 .member-sale290 .notice,.release290 .home290 .notice{background:#eaf4fc;color:#254865;border:1px solid #accce4;}
.release290 .member-sale290 .btn{white-space:normal;height:auto;min-height:44px;}
.release290 .loyalty-use290{background:#eff8ee;color:#264525;border:1px solid #bcd7b9;border-radius:12px;padding:18px;margin:16px 0;}
.release290 .loyalty-use290 h3,.release290 .loyalty-use290 p,.release290 .loyalty-use290 small{color:#264525;}
.release290 .loyalty-use290 .btn{margin-top:8px;}
.release290 img.booking-cover290{display:block;width:100%;max-height:330px;object-fit:cover;aspect-ratio:16/5;border-radius:14px;margin:16px 0;}
.release290 .club-layout290{display:grid;grid-template-columns:minmax(0,2fr) minmax(245px,1fr);gap:20px;align-items:start;}
.release290 .club-games290{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
.release290 .club-game290{background:#fff;color:#233b50;border:1px solid #c8dbe8;border-radius:13px;overflow:hidden;min-width:0;}
.release290 .club-game290 img{width:100%;aspect-ratio:16/8;object-fit:cover;display:block;}
.release290 .club-game290>div{padding:18px;}
.release290 .club-game290 h3{color:#17476a;}
.release290 .club-game290 p,.release290 .club-game290 small{color:#405c71;}
.release290 .club-game290 .btn{margin-top:10px;}
.release290 .club-filters290{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:18px;}
.release290 .club-filters290 label{flex:1;min-width:140px;color:#213e54;}
.release290 .club-filters290 select{color:#14354f;background:#fff;border-color:#8299aa;}
.release290 .club-side290{display:flex;flex-direction:column;gap:16px;}
.release290 .home290 .ghost{color:#1a4d72;background:#eaf3fa;border-color:#b9d4e9;}
.release290 .welcome290 .ghost{color:#fff;background:#234861;border-color:#7696b0;}
.release290 .client-primary290 a:focus-visible,.release290 .client-more290 a:focus-visible,.release290 .reservation-card290:focus-visible{outline:3px solid #f2b84f;outline-offset:3px;}
@media(max-width:950px){
 .release290 .client-frame160{padding:14px 16px 30px;}
 .release290 .client-primary290{grid-template-columns:repeat(3,minmax(0,1fr));}
 .release290 .home-benefits290{grid-template-columns:repeat(2,minmax(0,1fr));}
 .release290 .member-short290{grid-column:1/-1;}
 .release290 .welcome290{align-items:flex-start;}
 .release290 .club-layout290{grid-template-columns:1fr;}
 .release290 .club-side290{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:700px){
 .release290 .client-sidebar160{display:none;}
 .release290 .client-mobile-menu290{display:block;background:#102638;border:1px solid #365369;border-radius:12px;padding:13px;margin:0 0 18px;clear:both;}
 .release290 .client-frame160 .wrapper{padding:0;}
 .release290 .client-primary290{gap:6px;}
 .release290 .client-primary290 a{flex-direction:column;gap:5px;padding:9px 4px;min-height:66px;font-size:12px;}
 .release290 .client-more290 summary{padding:7px 0 0;font-size:12px;}
 .release290 .client-more290 nav{display:grid;grid-template-columns:1fr 1fr;}
 .release290 .client-more290 nav a{font-size:12px;line-height:1.45;}
 .release290 .client-nav-title160{font-size:9px;margin-bottom:8px;}
 .release290 .welcome290{flex-direction:column;padding:21px;gap:12px;}
 .release290 .welcome290 .actions{max-width:none;width:100%;}
 .release290 .welcome290 .actions .btn{width:auto;flex:1 1 190px;}
 .release290 .home290{gap:17px;}
 .release290 .home290 .panel{padding:19px;}
 .release290 .home-benefits290{grid-template-columns:1fr;gap:12px;}
 .release290 .loyalty290,.release290 .member-short290{padding:18px;}
 .release290 .reservation-list290,.release290 .member-sale290,.release290 .club-games290,.release290 .club-side290{grid-template-columns:1fr;}
 .release290 .club-invite290{flex-direction:column;align-items:flex-start;padding:22px;gap:12px;}
 .release290 .home290 .section-title160{flex-wrap:wrap;gap:8px;}
 .release290 .home290 .row-card{align-items:flex-start;font-size:13px;}
 .release290 .reservation-meta290{flex-wrap:wrap;}
 .release290 img.booking-cover290{aspect-ratio:16/8;}
 .release290 .member-price290{font-size:34px;}
}
/* Explicit light-card contrasts override previous dark account skins. */
.release290 .client-frame160 #main .home290 .club-invite290 p{color:#28584a;}
.release290 .client-frame160 #main .home290 .club-invite290 .eyebrow{color:#315e51;}
.release290 .client-frame160 #main .home290 .member-short290 .eyebrow{color:#78511e;}
.release290 .client-frame160 #main .home290 .panel .btn.ghost{color:#184c72;background:#eaf4fc;border:1px solid #aac9df;}
.release290 .client-frame160 #main .home290 .loyalty290 progress{-webkit-appearance:none;appearance:none;border-radius:7px;overflow:hidden;background:#cddfea;}
.release290 .loyalty290 progress::-webkit-progress-bar{background:#cddfea;border-radius:7px;}
.release290 .loyalty290 progress::-webkit-progress-value{background:#226a9c;border-radius:7px;}
.release290 .loyalty290.laser progress::-webkit-progress-value{background:#ad3653;}
.release290 .loyalty290 progress::-moz-progress-bar{background:#226a9c;border-radius:7px;}
.release290 .loyalty290.laser progress::-moz-progress-bar{background:#ad3653;}
.release290 .club-toolbar290{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;}
.release290 .club-toolbar290 .filter-pills290{margin:0;}
.release290 .club-toolbar290 .actions{display:flex;gap:8px;flex-wrap:wrap;}
.release290 .client-frame160 #main .home290 .club-game290 h2{color:#21435e;font-size:21px;}
.release290 .client-frame160 #main .home290 .club-game290 p{color:#3d5b70;}

/* Annual checkout is a light, legible two-column card, including old .hint rules. */
.release290 .membership-grid290{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:20px;align-items:start;}
.release290 .member-offer290{background:#fffaf0;color:#21384b;border:1px solid #d9c59d;border-top:4px solid #94672b;border-radius:14px;padding:26px;min-width:0;}
.release290 .client-frame160 #main .home290 .member-offer290 h2,.release290 .client-frame160 #main .home290 .member-offer290 p,.release290 .client-frame160 #main .home290 .member-offer290 label{color:#263d50;}
.release290 .client-frame160 #main .home290 .member-price290{color:#17476b;display:flex;gap:10px;flex-wrap:wrap;align-items:baseline;}
.release290 .client-frame160 #main .home290 .member-price290 small{color:#425b6e;}
.release290 .client-frame160 #main .home290 .hint{background:#edf4f9;color:#294a64;border:1px solid #bcd2e2;padding:12px 14px;line-height:1.6;}
.release290 .member-offer290 input,.release290 .member-offer290 select{background:#fff;color:#172f43;border-color:#748ea2;}
.release290 .member-offer290 .btn{white-space:normal;min-height:44px;height:auto;}
.release290 .member-offer290 .check{display:flex;align-items:flex-start;gap:10px;margin:15px 0;line-height:1.5;}
.release290 .member-offer290 .check input{margin-top:3px;flex:0 0 auto;}
.release290 .member-rate290{display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:1px solid #d8e3eb;padding:12px 0;font-size:14px;color:#264761;}
.release290 .member-rate290>div{display:flex;gap:10px;align-items:baseline;flex:0 0 auto;}
.release290 .member-rate290 del{color:#637684;font-size:12px;}
.release290 .member-rate290 strong{color:#17476b;}
@media(max-width:700px){.release290 .membership-grid290{grid-template-columns:1fr;}.release290 .member-offer290{padding:20px;}.release290 .member-rate290{flex-wrap:wrap;gap:6px;}}

/* Readable activity labels on the light social cards. */
.club-game290 .eyebrow{color:#2d648b}

/* SOURCE: assets/release2100.css */
.flash2100 { color:#172738; min-width:0; line-height:1.55; }
.flash2100 .panel,.flash2100 fieldset,.flash-card2100,.flash-summary2100 { background:#fff; color:#172738; border:1px solid #c8d2df; border-radius:14px; padding:20px; margin:16px 0; min-width:0; }
.flash2100 h1,.flash2100 h2,.flash2100 h3,.flash2100 legend,.flash2100 label,.flash2100 p,.flash2100 small,.flash-summary2100 p,.flash-summary2100 label { color:#172738; opacity:1; }
.flash2100 .hint,.flash2100 .tiny { color:#44546a; }
.flash2100 input:not([type=checkbox]),.flash2100 select,.flash2100 textarea { background:#f7f9fc; color:#172738; border:1px solid #8394a8; width:100%; min-height:44px; }
.flash2100 input[type=checkbox] { accent-color:#174b82; width:20px; height:20px; flex:0 0 20px; }
.flash2100 .btn,.flash-link2100 .btn { color:#fff; background:#183f72; border:1px solid #183f72; white-space:normal; }
.flash2100 .btn.secondary,.flash2100 .btn.ghost,.flash-link2100 .btn.secondary { background:#edf4fd; color:#14395f; }
.flash2100 .btn.danger { background:#9d2634; color:#fff; }
.flash2100 .fields { display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:16px; }
.flash2100 .flash-rules2100,.flash-cards2100 { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr)); gap:16px; }
.flash2100 .flash-rules2100 fieldset { margin:0; }
.flash2100 legend { font-weight:800; font-size:1.1rem; }
.flash-badge2100 { display:inline-block; background:#ffeab1; color:#543400; font-weight:800; padding:5px 10px; border-radius:8px; }
.flash-price2100 { font-size:1.65rem; }
.flash-price2100 small { font-size:.85rem; font-weight:500; }
.flash-summary2100 { background:#fff5d9; color:#332400; font-size:.95rem; }
.flash2100 .flash-offers2100 article { border-top:1px solid #d0d9e5; padding:20px 0; }
.flash2100 code,.flash2100 pre { white-space:pre-wrap; overflow-wrap:anywhere; word-break:break-word; }
.flash-text2100 { background:#f4f7fb; color:#172738; padding:16px; }
.flash-email2100 { width:100%; height:550px; background:#fff; border:1px solid #bbc8d7; }
.flash-link2100 { margin:10px 0 18px; }
.slot .flash-badge2100 { display:block; white-space:normal; margin-top:4px; font-size:.8rem; }
@media(max-width:600px){.flash2100 .panel,.flash2100 fieldset,.flash-card2100,.flash-summary2100{padding:14px}.flash2100 .fields{grid-template-columns:1fr}.flash2100 .actions{display:flex;flex-wrap:wrap;gap:8px}.flash2100 .btn{min-height:44px}.flash2100 .flash-rules2100{grid-template-columns:1fr}.flash-summary2100 label{display:flex;gap:10px}}

/* Explicit scoping overrides inherited light text/dark hint styles from older releases. */
.flash2100 .panel p,.flash2100 .panel label,.flash2100 .panel small,.flash2100 .panel legend,
.flash2100 .flash-card2100 p,.flash2100 .flash-card2100 small,.flash-summary2100 p,.flash-summary2100 label,.flash-summary2100 small {color:#172738!important;opacity:1!important;}
.flash2100 .hint,.flash-summary2100 .hint {background:#edf3fa!important;color:#30445c!important;border-color:#33668f!important;}
.flash2100.flash-public2100 > p {color:#d2e2f1!important;}
.flash2100 .flash-card2100 .btn {color:#fff!important;background:#183f72!important;}

#dialog .flash2100 p,#dialog .flash2100 label {color:#172738!important;}

/* 2.10.1: selection stays in normal document flow on narrow screens. */
.flash-manager2101 .flash-filter2101{display:grid;grid-template-columns:1fr 2fr;gap:16px;margin:18px 0}
.flash-manager2101 label{color:#172738;font-weight:650}
.flash-filter2101 input,.flash-filter2101 select{display:block;width:100%;min-width:0;background:#fff;color:#172738;border:1px solid #8595a6;border-radius:8px;padding:12px;margin-top:6px}
.flash-selection2101{display:flex;flex-wrap:wrap;gap:14px;align-items:center;padding:16px;background:#edf3fa;border:1px solid #b4c8df;border-radius:12px;color:#172738}
.flash-selection2101 input,.flash-select2101 input{width:22px;height:22px;min-width:22px;accent-color:#14609b;cursor:pointer}
.flash-select-all2101{display:flex;align-items:center;gap:10px;min-height:44px;cursor:pointer}
.flash-offers2101>article{display:flex!important;align-items:flex-start;gap:18px;padding:18px;margin-top:12px;background:#fff;border:1px solid #b4c8df;border-radius:12px}
.flash-select2101{display:flex;align-items:center;gap:8px;min-height:44px;cursor:pointer}
.flash-offer-body2101{flex:1;min-width:0}
.flash-offer-body2101 h3{margin-top:0}
.flash-offer-body2101 code{overflow-wrap:anywhere}
.flash-no-price2101{display:inline-block;color:#6b3e05;background:#fff0d1;padding:5px 9px;border-radius:6px}
.flash-manager2101 .btn.danger,#flash-delete2101 .btn.danger{background:#b42318;color:#fff;border-color:#b42318}
.flash-manager2101 .btn:disabled{opacity:.6;cursor:not-allowed}
.flash-delete-list2101{max-height:230px;overflow-y:auto;border:1px solid #b4c8df;padding:12px;border-radius:8px}
.flash-manager2101 summary{cursor:pointer;min-height:36px;color:#174b76;font-weight:650}
.flash2100 input:focus-visible,.flash2100 button:focus-visible,.flash2100 select:focus-visible{outline:3px solid #1767b4;outline-offset:3px}
@media(max-width:640px){.flash-manager2101 .flash-filter2101{grid-template-columns:1fr}.flash-offers2101>article{flex-direction:column;gap:8px}.flash-offer-body2101{width:100%}.flash-manager2101 .actions{display:flex;flex-wrap:wrap}.flash-manager2101 .actions .btn{flex:1 1 135px;text-align:center}.flash-selection2101 .btn{width:100%}.flash-selection2101{padding:12px}.flash-selection2101 label{width:100%}}

.flash-selection2101 input,.flash-select2101 input{color-scheme:light}.flash-manager2101{scroll-margin-top:90px}.flash-offer-body2101>.actions{margin-top:12px}

.flash2100 input[type=checkbox]{color-scheme:light}

/* 2.10.4 - Reversible removal history, deliberate reauthorization. */
.flash2100 .flash-reopen-notice2104,.flash2100 .flash-reopen-result2104{background:#eaf3ff;color:#172738;border:1px solid #8caecf;border-left:5px solid #235b98;border-radius:10px;padding:16px;margin:14px 0;overflow-wrap:anywhere}
.flash2100 .flash-reopen-notice2104 p,.flash2100 .flash-reopen-notice2104 strong,.flash2100 .flash-reopen-notice2104 small,.flash2100 .flash-reopen-result2104{color:#172738}
.flash2100 .flash-history-price2104{display:block;color:#45566b;font-size:.93rem;margin-top:5px}
.flash2100 .flash-parent2104{border-left:3px solid #235b98;padding-left:10px;color:#172738}
.flash2100 .flash-archived2104{border-style:dashed}
.flash2100 .flash-offer-body2101 code{word-break:break-all}
#flash-reopen2104 .actions .btn,.flash-manager2101 .actions .btn{white-space:normal;max-width:100%}
@media(max-width:640px){.flash-reopen-notice2104 .actions{display:flex;flex-direction:column;align-items:stretch}.flash-reopen-notice2104 .btn{width:100%;white-space:normal}.flash-selection2101{flex-wrap:wrap}.flash-archived2104 .flash-offer-body2101{min-width:0}}

/* 2.11.0: planner kept in normal document flow, readable on mobile. */
.flash2100 .flash-schedule2110{border:2px solid #d89821;background:#fff9eb;color:#172738}
.flash2100 .flash-schedule2110 p,.flash2100 .flash-schedule2110 label,.flash2100 .flash-schedule2110 h2{color:#172738}
.flash2100 .flash-range2110{background:#eef7f0;padding:12px;border-radius:8px;color:#153923}
.flash2100 .flash-range2110.warning{background:#fff1d2;color:#533700}
.flash-days2110{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr));gap:10px;margin:12px 0}
.flash-days2110 article{display:flex;flex-direction:column;gap:6px;padding:12px;background:#f2f6fa;border:1px solid #cdd8e4;border-radius:10px;color:#172738;min-width:0;overflow-wrap:anywhere}
.flash2100 .flash-days2110 small,.flash2100 .flash-days2110 p{color:#283e55}
.flash-schedule2110 .fields>*{min-width:0}
@media(max-width:600px){.flash-schedule2110 .fields{grid-template-columns:1fr}.flash-schedule2110 .btn{white-space:normal;width:100%}.flash-schedule-report2110{max-width:100%}}
/* 2.11.1: bounded current list and deliberate cleanup, accessible on phones. */
.flash2100 .flash-cap2111{padding:14px 16px;border:1px solid #77a48a;border-left:5px solid #266843;border-radius:10px;background:#ecf7f0;color:#133c26;font-size:1rem;line-height:1.5;overflow-wrap:anywhere}
.flash2100 .flash-cap2111 strong{color:#133c26}
#flash-cleanup2111,#flash-rolling2111{white-space:normal;max-width:100%}
#flash-erase2111{color:#172738}
#flash-erase2111 .actions{display:flex;gap:10px;flex-wrap:wrap}
#flash-erase2111 details{max-height:220px;overflow:auto;padding:10px;background:#f5f7fa;border-radius:8px}
@media(max-width:600px){#flash-erase2111 .actions .btn{width:100%;white-space:normal}.flash-manager-heading2101 .actions{display:block}.flash-cap2111{font-size:.95rem}}

.flash-schedule2110 .field[hidden],#flash-settings2100 .field[hidden]{display:none!important}

/* SOURCE: assets/release2102.css */
/* 2.10.2 - Flash promotion visibility: layout-only; activity colours stay intact. */
.flash-calendar-note2102{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;margin:18px 0;background:#fff4d6;color:#302500;border:2px solid #aa7300;border-radius:14px;min-width:0}
.flash-calendar-note2102 strong{color:#302500!important;font-size:1.12rem;opacity:1!important}
.flash-calendar-note2102 p{color:#493c18!important;margin:7px 0 0;opacity:1!important;line-height:1.5}
.flash-calendar-note2102 .btn{flex-shrink:0;background:#273b50!important;color:#fff!important;border-color:#273b50!important;white-space:normal;min-height:44px}
.flash-calendar-note2102 .btn[aria-pressed=true]{background:#fff!important;color:#273b50!important;border-width:2px}
.flash-picker2102 .day-cell.has-flash2102{background:#fff1c5!important;color:#302500!important;border:2px solid #ac7400!important;box-shadow:none}
.flash-picker2102 .day-cell.has-flash2102 strong,.flash-picker2102 .day-cell.has-flash2102>span{color:#302500!important;opacity:1!important}
.flash-picker2102 .day-cell.has-flash2102.selected{background:#ffe39a!important;border:3px solid #263b50!important}
.flash-picker2102 .day-cell.has-flash2102:after{display:none!important}
.flash-picker2102 .day-cell .flash-day-label2102{display:block!important;background:#604400;color:#fff!important;font-size:11px;font-weight:800;line-height:1.5;padding:2px 4px;border-radius:5px;margin-top:3px;white-space:nowrap;opacity:1!important}
.flash-picker2102 .day-cell:focus-visible,.flash-picker2102 .slot:focus-visible,.flash-calendar-note2102 button:focus-visible,.public-flash-choice2102:focus-visible,.public-event-main2102:focus-visible{outline:3px solid #1867b5!important;outline-offset:3px}
.flash-picker2102 .slot.flash-slot2102{display:flex;flex-direction:column;align-items:flex-start;gap:7px;text-align:left;background:#fff8e8!important;color:#273b50!important;border:2px solid #aa7300!important;padding:16px;min-width:0;white-space:normal}
.flash-picker2102 .slot.flash-slot2102:hover{background:#ffedbe!important;transform:none}
.flash-picker2102 .slot.flash-slot2102>strong,.flash-picker2102 .slot.flash-slot2102>span,.flash-picker2102 .slot.flash-slot2102>small,.flash-picker2102 .slot.flash-slot2102 small{color:#273b50!important;opacity:1!important}
.flash-picker2102 .slot.flash-slot2102 .flash-badge2100,.public-flashes2102>.flash-badge2100{background:#604400!important;color:#fff!important;display:inline-block;padding:5px 8px;letter-spacing:.03em;font-size:12px;font-weight:850}
.flash-slot-price2102{font-size:1.75rem;line-height:1.2;color:#302500!important}
.flash-slot-price2102 small{font-size:.8rem;font-weight:600}
.flash-slot-quota2102{font-weight:750;font-size:.87rem!important}
.flash-slot-deadline2102{font-size:.76rem!important;line-height:1.5}
.flash-partial2102{border-top:1px solid #ba9030;padding-top:8px;font-size:.8rem!important}
.flash-picker2102 .flash-no-slots2102{background:#f3f6fa;color:#273b50;padding:15px;border-radius:9px}
.flash-picker2102 .slot-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));align-items:stretch}
.calendar-flash2102 .public-event{display:block;padding:0;min-width:0;overflow:visible}
.public-event-main2102{display:flex;flex-direction:column;gap:6px;width:100%;padding:10px;text-align:left;background:transparent;color:inherit;border:0;border-radius:6px;cursor:default;white-space:normal;overflow-wrap:anywhere}
.public-event-main2102[data-join]{cursor:pointer}
.public-event-main2102[data-join]:hover{box-shadow:inset 0 0 0 2px var(--party-color,#7498ba)}
.public-event-main2102 span,.public-event-main2102 strong,.public-event-main2102 small{color:inherit!important;opacity:1!important}
.calendar-flash2102 .public-event.flash-event2102{outline:2px solid #bd8519;outline-offset:0}
.public-flashes2102{display:flex;flex-direction:column;gap:8px;background:#fff5db;color:#302500;padding:10px;border-radius:0 0 9px 9px;min-width:0}
.public-flash-choice2102{display:flex;flex-direction:column;gap:5px;padding:10px 8px;background:#fff;color:#302500!important;border:1px solid #b58b25;border-radius:8px;text-decoration:none!important;min-height:44px;overflow-wrap:anywhere}
.public-flash-choice2102:hover{background:#ffeab3}
.public-flash-choice2102 b{font-size:1.55rem;line-height:1.15;color:#302500!important;opacity:1!important}
.public-flash-choice2102 small,.public-flash-choice2102 span,.public-flash-choice2102 strong{color:#423413!important;opacity:1!important;line-height:1.4}
.public-flash-choice2102 small{font-size:11px!important}
.public-flash-choice2102 span{font-size:12px}
.public-flash-choice2102 strong{font-size:12px;font-weight:800;border-top:1px solid #d1b875;padding-top:7px;margin-top:2px}
.flash-public-day-label2102{font-size:11px;color:#fff!important;background:#604400;padding:3px 5px;border-radius:5px;display:inline-block;line-height:1.4}
.calendar-flash2102 .has-public-flash2102>h3{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:4px}
.calendar-flash2102.flash-filtered2102{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}
@media(max-width:700px){.flash-calendar-note2102{flex-direction:column;align-items:stretch;padding:14px;gap:12px}.flash-calendar-note2102 .btn{width:100%}.flash-picker2102 .calendar-tools{gap:10px}.flash-picker2102 .calendar-tools>.actions{width:100%;justify-content:space-between;gap:6px}.calendar-flash2102.month{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-flash2102 .public-day{min-width:0}.public-flashes2102{padding:8px}.public-flash-choice2102{padding:9px 7px}.flash-picker2102 .day-cell.has-flash2102{padding:5px 1px;min-height:70px}.flash-picker2102 .day-cell .flash-day-label2102{font-size:10px;letter-spacing:-.2px;padding:2px 1px}}
@media(max-width:359px){.calendar-flash2102.month{grid-template-columns:1fr}.flash-picker2102 .day-cell .flash-day-label2102{font-size:9px}}

.flash-picker2102 .flash-sort-note2102{color:#cee2f4!important;font-size:.85rem;line-height:1.5;margin:8px 0 14px;opacity:1}

/* 2.10.3 - assisted flash analysis clarity */
.flash-review2103{display:inline-flex;align-items:center;padding:.22rem .55rem;border-radius:999px;font-weight:800;background:#fff1bf;color:#3f2a00;border:1px solid #e0b642;margin-left:.35rem}
.flash-human2103{margin:.65rem 0;padding:.7rem .8rem;border-left:4px solid #d8a400;background:#fff8df;color:#241a00}
.flash-analysis-stats2103{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem;margin:.75rem 0}
.flash-analysis-stats2103 span{display:block;padding:.65rem .7rem;border:1px solid rgba(255,255,255,.14);border-radius:.65rem;background:rgba(255,255,255,.06)}
.flash-analysis-stats2103 b{display:block;font-size:1.2rem}
@media(max-width:680px){.flash-analysis-stats2103{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* SOURCE: assets/release2112.css */
/* 2.11.2 - Focused admin, reset confirmation and readable folded controls. */
.flash-simple2112 .flash-dashboard2112 {border-top:4px solid #1765a8;padding:20px}
.flash-simple2112 .flash-kpis2112 {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px}
.flash-simple2112 .flash-kpis2112>div {display:flex;flex-direction:column;gap:6px;background:#f1f6fb;color:#142c45;border:1px solid #cbd9e7;border-radius:12px;padding:16px;min-width:0}
.flash-simple2112 .flash-kpis2112 small {color:#39536b;font-size:13px;font-weight:600}
.flash-simple2112 .flash-kpis2112 strong {font-size:24px;line-height:1.2;color:#102c48}
.flash-simple2112 .flash-kpis2112 span {font-size:13px;color:#36516b;overflow-wrap:anywhere}
.flash-simple2112 .flash-dashboard2112>.actions {display:flex;flex-wrap:wrap;gap:10px}
.flash-simple2112 .flash-reset-help2112 {font-size:14px;line-height:1.55;max-width:900px;margin:16px 0;color:#28435d}
.flash-simple2112 .flash-fold2112 {padding:0;border:1px solid #c7d4e2;background:#fff;color:#162f47;border-radius:12px;margin:12px 0;min-width:0}
.flash-simple2112 .flash-fold2112>summary {padding:17px 20px;color:#183955;font-size:16px;font-weight:700;cursor:pointer;line-height:1.45}
.flash-simple2112 .flash-fold2112[open]>summary {border-bottom:1px solid #d9e2eb;background:#f4f8fb;border-radius:12px 12px 0 0}
.flash-simple2112 .flash-fold2112>.panel {border:0;margin:0;box-shadow:none}
.flash-simple2112 #flash-config2112>form {padding:14px;min-width:0}
.flash-simple2112 .flash-fold2112>.flash-guidance2112,
.flash-simple2112 .flash-fold2112>.flash-maintenance2112 {padding:14px 18px}
.flash-simple2112 .flash-fold2112 .flash-reopen-notice2104 {margin:0;border:0}
.flash-simple2112 .flash-manager-heading2101 h2 {font-size:22px;margin:0 0 8px}
.flash-simple2112 .flash-offers2101 article {min-width:0}
.flash-simple2112 .flash-offer-body2101 h3 {line-height:1.35}
.flash-reset-dialog2112 {color:#1b354d;background:#fff;line-height:1.5}
.flash-reset-dialog2112 .flash-reset-counts2112 {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:14px 0}
.flash-reset-dialog2112 .flash-reset-counts2112>span {padding:12px;background:#eef4fa;border:1px solid #c4d5e4;border-radius:10px;color:#213b54;overflow-wrap:anywhere}
.flash-reset-dialog2112 .flash-reset-counts2112 b {font-size:21px;color:#123551}
.flash-reset-dialog2112 p,.flash-reset-dialog2112 label,.flash-reset-dialog2112 .hint {color:#1b354d}
.flash-reset-dialog2112 .notice.warning {background:#fff4df;color:#644109;border-color:#d5ac5a}
.flash-reset-dialog2112 .actions {display:flex;gap:10px;flex-wrap:wrap}
.flash-reset-dialog2112 .btn {white-space:normal;line-height:1.4;max-width:100%}
.flash-simple2112 details .field {min-width:0}
.flash-simple2112 input,.flash-simple2112 select,.flash-simple2112 textarea {max-width:100%}
@media(max-width:650px){
 .flash-simple2112 .flash-kpis2112 {grid-template-columns:1fr;gap:8px}
 .flash-simple2112 .flash-kpis2112>div {padding:12px}
 .flash-simple2112 .flash-kpis2112 strong {font-size:22px}
 .flash-simple2112 .flash-dashboard2112 {padding:14px}
 .flash-simple2112 .flash-dashboard2112>.actions>.btn {flex:1 1 100%;width:100%;white-space:normal}
 .flash-simple2112 #flash-config2112>form {padding:8px}
 .flash-simple2112 .flash-fold2112>summary {padding:14px 12px;font-size:15px}
 .flash-simple2112 .flash-schedule2110>.fields,.flash-simple2112 .flash-prices2112 .fields {grid-template-columns:minmax(0,1fr)}
 .flash-reset-dialog2112 .flash-reset-counts2112 {grid-template-columns:minmax(0,1fr)}
 .flash-reset-dialog2112 .actions>.btn {width:100%}
}

/* SOURCE: assets/release2120.css */
/* AS-DF 2.12.0 - scoped readable cards, restrained ideas and printable gifts. */
body.release2120 .login-art{background-image:linear-gradient(180deg,rgba(5,22,42,.12),rgba(5,22,42,.76)),url('brand160/hero-dual.webp')!important;background-position:center 50%!important;background-size:cover!important}
body.release2120 .login-art h2,body.release2120 .login-art p{color:#fff;text-shadow:0 2px 12px #071321}
body.release2120 .privacy-short220{font-size:.85rem;text-align:center;padding:.5rem;margin:1rem auto;color:#c9d8ed}
body.release2120 .privacy-short220 a{color:#d9e9fa;text-decoration:underline;text-underline-offset:3px}
.gifts2120 .panel,.gift-payment2120,.cancel-card2120,.player-links2120,.reward2120{background:#fff;color:#142a40;border:1px solid #d5e1ed;border-radius:18px}
.gifts2120 :is(.panel,.gift-payment2120) :is(h2,h3,p,label,legend,summary,small,.hint),.gift-payment2120 :is(h3,p,label,summary,small),.cancel-card2120 :is(h2,h3,p,small),.player-links2120 :is(h2,p),.reward2120 :is(h3,p){color:#213950}
.gifts2120 :is(input,select,textarea),#gift-confirm2120 :is(select,input),#gift-withdraw2120 textarea{background:#fff;color:#152a40;border:1px solid #9fb2c6}
.gifts2120 .check,.gift-payment2120 .check,#gift-confirm2120 .check,#gift-withdraw2120 .check{color:#162b42;background:#f5f8fc;padding:.8rem;border-radius:10px;border:1px solid #d5e1ed}
.gifts2120 .check input,.gift-payment2120 .check input,#gift-confirm2120 .check input{accent-color:#165fba;flex:0 0 20px;min-width:20px;min-height:20px}
.gifts2120 .eyebrow,.gift-payment2120 .eyebrow,.player-links2120 .eyebrow,.cancel-card2120 .eyebrow{color:#145ea8}
.gift-layout2120{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:24px;align-items:start;margin:26px 0}
.gift-layout2120>*{min-width:0}.gift-form-panel2120 h2{font-size:1.55rem;margin-top:0}
.gift-occasions2120{border:0;padding:0;margin:1.2rem 0;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.gift-occasions2120 legend{font-weight:700;margin-bottom:10px;grid-column:1/-1}
.gift-occasion2120{display:flex;align-items:center;gap:8px;padding:12px;background:#f2f6fc;color:#173554!important;border:1px solid #d6e2ef;border-radius:10px;cursor:pointer;font-size:.9rem;min-height:64px}
.gift-occasion2120:has(input:checked){border:2px solid #216ab6;background:#eaf3ff;padding:11px}.gift-occasion2120 input{width:18px;min-width:18px;height:18px;margin:0;accent-color:#1762b3}.gift-occasion2120>span:first-of-type{font-size:1.3rem}
.gift-total2120{display:flex;justify-content:space-between;gap:16px;align-items:center;border-top:1px solid #d5e1ed;padding-top:16px;margin:20px 0}.gift-total2120 strong{font-size:1.8rem;color:#123c69;white-space:nowrap}
.gift-art2120{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;min-height:465px;background:radial-gradient(ellipse at 100% 0%,#284980 0%,transparent 55%),linear-gradient(130deg,#081d38 15%,#16487d 65%,#803141 100%);padding:30px;border-radius:18px;box-shadow:0 18px 38px #081c3926;color:#fff!important}
.gift-art2120::before{content:'';position:absolute;width:240px;height:240px;border:1px solid #ffffff30;border-radius:50%;right:-65px;top:65px;z-index:-1;box-shadow:0 0 0 24px #ffffff06,0 0 0 65px #ffffff04}
.gift-art2120.occasion-christmas{background:radial-gradient(circle at 85% 25%,#3b829e 0%,transparent 40%),linear-gradient(130deg,#091e3b,#134154 70%,#324276)}
.gift-art2120.occasion-congratulations{background:radial-gradient(circle at 100% 0%,#ab7050 0%,transparent 45%),linear-gradient(130deg,#151c39,#3d335a 80%)}
.gift-art2120.occasion-pleasure{background:radial-gradient(circle at 95% 10%,#b94860 0%,transparent 42%),linear-gradient(130deg,#082140,#3c356e 78%)}
.gift-art-top2120{display:flex;justify-content:space-between;align-items:start;gap:16px;margin-bottom:30px;font-weight:700;font-size:13px;letter-spacing:.1em;line-height:1.5}.gift-art-top2120 strong{font-size:18px}.gift-emblem2120{font-size:52px;line-height:1;color:#ffe8ab}
.gift-art2120 .gift-kicker2120{font-size:10px;letter-spacing:.16em;font-weight:700;color:#cfddf4}
.gift-art2120 h2{color:#fff!important;font-size:clamp(1.65rem,2.25vw,2.5rem);font-weight:800;line-height:1.13;margin:9px 0 12px;max-width:95%;text-wrap:balance}
.gift-art2120 p,.gift-art2120 small{color:#f1f5ff!important}.gift-recipient2120{font-size:1.05rem;margin:0 0 12px}
.gift-admissions2120{display:flex;gap:15px;align-items:center;padding:16px 0;margin-top:10px}.gift-admissions2120>strong{font-size:56px;line-height:1;font-weight:800}.gift-admissions2120>span{font-size:1.2rem;font-weight:700}.gift-admissions2120 small{display:block;font-size:.9rem;line-height:1.5;font-weight:400;margin-top:5px}
.gift-message2120{white-space:pre-wrap;overflow-wrap:anywhere;font-style:italic;border-left:2px solid #c1d7ed;padding:0 0 0 12px;margin:10px 0 22px;font-size:.95rem}
.gift-card-foot2120{display:flex;flex-direction:column;gap:8px;margin-top:auto;padding-top:18px;border-top:1px solid #ffffff50;font-size:.85rem}.gift-card-foot2120 small{font-size:.75rem;line-height:1.5}.gift-code2120{font-family:ui-monospace,monospace;letter-spacing:.06em;font-size:1.05rem;overflow-wrap:anywhere;line-height:1.6;color:#fff}
.gift-claim2120{margin-top:20px}.gift-claim2120 h2{margin-top:8px;font-size:1.3rem}.gift-wallet2120{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:16px}
.gift-wallet-item2120{background:#f4f8fd;border:1px solid #d6e2ef;border-radius:14px;padding:18px;display:flex;flex-direction:column;justify-content:space-between;gap:14px}.gift-wallet-item2120 h3{font-size:1.15rem;margin:6px 0}.gift-wallet-item2120 p{font-size:.95rem;margin:8px 0}.gift-expiry2120{border-left:3px solid #cb9542;padding-left:9px}.gift-order-status2120{margin:24px 0;border-top:1px solid #cfdfed;padding-top:20px}
.gift-payment2120{padding:20px;margin-bottom:22px;border:2px solid #759bc6}.gift-payment2120 h3{margin:7px 0;font-size:1.4rem}.gift-pay-card2120{padding:14px;border:1px solid #ccdcec;border-radius:12px;margin-top:12px}.gift-pay-card2120 summary{font-weight:700;cursor:pointer}.gift-pay-card2120 form{margin-top:15px}.gift-seat2120 span{display:flex;flex-direction:column;gap:5px}.gift-seat2120 small{font-weight:400}
.gift-admin-order2120{display:flex;justify-content:space-between;gap:20px;padding:20px 0;border-bottom:1px solid #dce6ef;align-items:start}.gift-admin-order2120 h3{margin:0}.gift-admin-order2120 .actions{align-self:center}.bank-reference2120{display:block;overflow-wrap:anywhere}
.player-links2120{display:grid;grid-template-columns:1fr 1fr;margin-top:25px;padding:24px;gap:28px;background:#edf4fc}.player-links2120>div{min-width:0}.player-links2120 h2{font-size:1.2rem;margin:10px 0}.player-links2120 p{font-size:.95rem;line-height:1.6}.idea-icon2120{font-size:24px;color:#2466a8}.player-links2120 .btn.ghost{border:1px solid #aebfd4;color:#1c426b;background:#fff}
.reward-expiry2120{padding:10px;border-radius:8px;background:#fff4d7;color:#5a3c0d!important}.reward2120{padding:20px}.reward2120 h3{margin:10px 0}
.cancel-card2120{padding:24px;margin-bottom:20px}.cancel-card2120 header{display:flex;justify-content:space-between;align-items:start;gap:15px}.cancel-card2120 h2{font-size:1.35rem;margin:6px 0}.cancel-card2120 header p{margin:8px 0}.cancel-card2120 .text-button{color:#185790;background:transparent;padding:0;border:0}
.cancel-meta2120,.cancel-totals2120{display:flex;gap:12px;flex-wrap:wrap;margin:15px 0}.cancel-meta2120>span{border-radius:8px;background:#edf3fa;padding:10px 13px}.cancel-meta2120 .cancel-snack2120{background:#ffeec7;color:#6a4314}
.cancel-reason2120{border-left:4px solid #cf9948;background:#fff9ec;padding:15px 18px;border-radius:8px;margin:18px 0}.cancel-reason2120 p{margin:8px 0}.cancel-players2120{margin:15px 0}.cancel-players2120>div{display:flex;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid #dfE7f0}.cancel-players2120>div>span:last-child{text-align:right}.cancel-players2120 small{display:block;font-size:.8rem;margin-top:5px}.cancel-totals2120>span{flex:1;min-width:110px;background:#eef4fb;padding:12px;border-radius:10px;font-size:.9rem}.cancel-totals2120 strong{display:block;font-size:1.2rem;margin-top:5px}.cancel-list2120{margin-top:20px}
.gift-instructions2120{font-size:.9rem;line-height:1.6;color:#203a56}.gifts2120 :is(.panel,details) summary{cursor:pointer;font-weight:700}.gifts2120 :is(.btn.secondary,.btn.ghost),.gift-payment2120 .btn.secondary,.cancel-card2120 .btn.secondary{color:#184c80;background:#edf4fd;border:1px solid #b7cfe5}
@media(max-width:900px){.gift-layout2120{grid-template-columns:1fr}.gift-art2120{min-height:425px}.gift-form-panel2120{order:1}.gift-layout2120>aside{order:0;display:contents}#gift-preview2120{order:0}#gift-claim-box2120{order:2}.player-links2120{grid-template-columns:1fr}.gift-admin-order2120{flex-direction:column}.gift-admin-order2120 .actions{align-self:start}.gift-layout2120{gap:18px}}
@media(max-width:500px){.gift-art2120{padding:23px;min-height:420px}.gift-art2120 h2{font-size:1.85rem}.gift-art-top2120{margin-bottom:22px}.gift-occasions2120{grid-template-columns:1fr 1fr}.gift-occasion2120{font-size:.8rem;flex-wrap:wrap;gap:6px}.gift-occasion2120>span:last-child{flex:1 1 70%}.gifts2120 .welcome290 h1{font-size:1.85rem}.gift-code2120{font-size:.91rem}.cancel-card2120{padding:16px}.cancel-card2120 header{flex-wrap:wrap}.cancel-meta2120{gap:6px}.cancel-meta2120>span{font-size:.85rem;padding:8px}.cancel-players2120>div{flex-wrap:wrap}.cancel-players2120>div>span:last-child{text-align:left}.player-links2120{padding:20px}.gift-payment2120{padding:14px}.gift-pay-card2120{padding:11px}.gifts2120 .btn{white-space:normal;line-height:1.35;max-width:100%}}
@media print{body.printing-gift2120{background:#fff!important}body.printing-gift2120>*:not(#dialog){display:none!important}body.printing-gift2120 #dialog{position:static;display:block!important;max-height:none;width:100%;max-width:185mm;border:0;box-shadow:none;padding:0;margin:0 auto;background:#fff}body.printing-gift2120 #dialog::backdrop{display:none}body.printing-gift2120 .dialog-top,body.printing-gift2120 .gift-no-print2120{display:none!important}body.printing-gift2120 .gift-art2120{break-inside:avoid;-webkit-print-color-adjust:exact;print-color-adjust:exact;box-shadow:none;min-height:130mm}body.printing-gift2120 .gift-instructions2120{display:block;color:#142a40!important}}

/* Compact privacy link, not a tall information callout on authentication. */
body.release2120 #privacy-short220{grid-column:1/-1;width:auto;min-height:0;height:auto;align-self:start;background:transparent;border:0;border-radius:0;padding:.6rem 1rem;margin:0;text-align:center;box-shadow:none;line-height:1.5}
@media(max-width:760px){body.release2120 .login-layout{display:block}body.release2120 .login-art{display:flex!important;min-height:170px;height:170px;padding:1.25rem;background-position:center 44%!important}body.release2120 .login-art h1{font-size:1.65rem;line-height:1.15;margin:.4rem 0}body.release2120 .login-art p{font-size:.9rem;margin:0}body.release2120 .login-form{padding:1.7rem 1.5rem}body.release2120 .login-art .eyebrow{font-size:.67rem}}

/* SOURCE: assets/release2121.css */
/* Gift contents and editor: readable labels, independent balances, mobile-safe cards. */
.gift-composition2121{padding:18px;border:1px solid #bfd2df;border-radius:14px;margin:18px 0;background:#f3f8fc;color:#14263b}
.gift-composition2121 legend{padding:0 8px;font-weight:800}.gift-composition2121 small{display:block;color:#354c60;margin:-3px 0 15px}
.gift-composition2121 input{max-width:100%}.gift-content-summary2121{padding:12px 14px;border-radius:10px;background:#e8f2f8;color:#17334a;font-weight:750;margin:14px 0}
.gift-balances2121{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0;max-width:470px}
.gift-balances2121>div{padding:12px 8px;text-align:center;border:1px solid #c4d7e1;border-radius:12px;background:#eff6fa;color:#17334a}
.gift-balances2121 strong{display:block;font-size:1.6rem;line-height:1.25}.gift-balances2121 span{display:block;font-size:.85rem;overflow-wrap:anywhere}
.gift-art2121 h2,.gift-design-tile2121 h3{overflow-wrap:anywhere}
.gift-art2121{isolation:isolate;overflow:hidden;position:relative}
.gift-art2121 .gift-background2121{position:absolute!important;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.gift-art2121 .gift-shade2121{position:absolute;inset:0;z-index:-1;background:linear-gradient(125deg,rgba(4,15,32,.94),rgba(4,15,32,.75))}
.gift-art2121.has-photo2121:before,.gift-art2121.has-photo2121:after{display:none}
.gift-included2121{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0 16px}
.gift-included2121 span{background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.35);color:#fff;padding:7px 10px;border-radius:30px;font-size:.87rem;font-weight:650}
.gift-thumb2121{width:52px;height:38px;object-fit:cover;border-radius:6px;flex-shrink:0}
.gift-parts-seat2121{margin:16px 0;padding:10px 14px;border:1px solid #bed1df;border-radius:12px;background:#fff;color:#14283d}
.gift-parts-seat2121 legend{font-weight:800;padding:0 7px}.gift-parts-seat2121 .check{color:#17334a;background:#fff}.gift-parts-seat2121 .check small{display:block;font-weight:400;color:#3c5367}
.gift-use-summary2121{font-weight:700;color:#17334a;background:#edf5f8;padding:10px;border-radius:10px}
.gift-design-heading2121{display:flex;gap:16px;justify-content:space-between;align-items:center;margin-bottom:18px}.gift-design-heading2121 h2{margin-bottom:5px}
.gift-design-grid2121{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.gift-design-tile2121{border:1px solid #d6e1e7;border-radius:14px;overflow:hidden;background:#fff;color:#14263b}
.gift-design-tile2121>div{padding:14px}.gift-design-tile2121 .gift-art2121{border-radius:0;margin:0;padding:22px;min-height:0}
.gift-design-tile2121 .gift-art2121 h2{font-size:1.6rem}.gift-design-tile2121 .gift-message2120,.gift-design-tile2121 .gift-card-foot2120{display:none}
.gift-design-editor2121{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;color:#14263b}
.gift-design-editor2121 form{min-width:0}.gift-design-editor2121 aside{min-width:0;align-self:start;position:sticky;top:0}.gift-design-editor2121 input[type=file]{width:100%;box-sizing:border-box;padding:10px;background:#eef5fa;color:#14263b}
.gift-design-editor2121 .check{color:#14263b}.gift-design-editor2121 label{color:#14263b}.gift-crop2121{padding:12px;background:#eff6fa;border-radius:12px;margin:12px 0}.gift-crop2121 input{width:100%;min-width:0}
#dialog:has(.gift-design-editor2121){max-width:1080px;width:calc(100% - 24px)}
.gifts2121 .gift-wallet-item2120>div:first-child{min-width:0;flex:1}.gifts2121 .gift-layout2120>aside{min-width:0}
.gifts2121 [hidden],.gift-design-editor2121 [hidden],.gift-payment2120 [hidden]{display:none!important}
@media(max-width:760px){.gift-design-grid2121,.gift-design-editor2121{grid-template-columns:minmax(0,1fr)}.gift-design-heading2121{display:block}.gift-design-heading2121>.btn{margin-top:8px}.gift-design-editor2121 aside{position:static}.gift-composition2121{padding:12px}.gift-balances2121{gap:5px}.gift-balances2121>div{padding:10px 4px}.gift-balances2121 span{font-size:.79rem}.gift-included2121{gap:5px}.gift-art2121 h2{overflow-wrap:anywhere}.gift-parts-seat2121{padding:8px}.gift-parts-seat2121 .check{padding:10px 4px}.gift-thumb2121{width:42px}}
@media print{.gift-art2121 .gift-background2121{display:block!important}.gift-art2121{print-color-adjust:exact;-webkit-print-color-adjust:exact}.gift-shade2121{display:block!important}}

/* SOURCE: assets/release2122.css */
/* AS-DF 2.12.2 - gift-card compatibility in tunnel + refund controls */
.gift-preview2122{margin-top:18px;padding-top:18px;border-top:1px solid rgba(127,127,127,.24)}
.gift-preview-title2122{display:flex;gap:10px;align-items:center;margin-bottom:12px}.gift-preview-title2122>span{font-size:1.55rem}.gift-preview-title2122 strong,.gift-preview-title2122 small{display:block}.gift-preview-title2122 small{opacity:.75;margin-top:2px}
.gift-compatible-list2122{display:grid;gap:10px}.gift-compat-card2122{border:1px solid rgba(127,127,127,.28);border-radius:14px;padding:12px;display:block;background:rgba(255,255,255,.035)}
.gift-compat-card2122.compatible{cursor:pointer}.gift-compat-card2122.compatible:hover,.gift-compat-card2122.selected{border-color:currentColor;background:rgba(255,255,255,.08)}
.gift-compat-card2122>input{position:absolute;opacity:0;pointer-events:none}.gift-compat-main2122{display:flex;gap:8px;justify-content:space-between;align-items:flex-start}.gift-compat-main2122 strong,.gift-compat-main2122 small{display:block}.gift-compat-main2122 small{opacity:.72;margin-top:3px}
.gift-compat-state2122{display:inline-flex;align-items:center;white-space:nowrap;border:1px solid rgba(127,127,127,.3);border-radius:999px;padding:3px 8px;font-size:.76rem;font-weight:700}.gift-compat-card2122.compatible .gift-compat-state2122{border-color:currentColor}
.gift-compat-saving2122{display:block;margin-top:10px}.gift-compat-saving2122 small{display:block;margin-top:4px}.gift-compat-card2122.incompatible{opacity:.8}.gift-compat-card2122.incompatible>p{margin:8px 0 0;font-size:.9rem}
.gift-preview-note2122{font-size:.82rem;opacity:.76;margin:10px 0}.gift-final2122{display:grid;grid-template-columns:1fr auto;gap:3px 10px;align-items:baseline;padding:12px;margin-top:10px;border-radius:12px;background:rgba(255,255,255,.08)}.gift-final2122>strong{font-size:1.35rem}.gift-final2122>small{grid-column:1/-1;opacity:.75}
.gift-incompatible2122{margin-top:12px}.gift-incompatible2122 summary{cursor:pointer;font-weight:650;margin-bottom:8px}.gift-incompatible2122 .gift-compat-card2122{margin-top:8px}
.gift-auto-notice2122{margin-top:12px}.gift-refund-balances2122{font-weight:650}.gift-refund-state2122{margin:10px 0 0}.gift-admin-order2120 .btn.danger{white-space:nowrap}
@media(max-width:620px){.gift-compat-main2122{display:grid}.gift-compat-state2122{justify-self:start}.gift-final2122{grid-template-columns:1fr}.gift-final2122>strong{font-size:1.25rem}.gift-final2122>small{grid-column:auto}}
.gift-claim-inline2122{margin-top:12px}.gift-claim-inline2122 summary{cursor:pointer;font-weight:700}.gift-claim-inline2122 form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end;margin-top:10px}.gift-claim-inline2122 label{display:grid;gap:5px;font-size:.82rem}.gift-claim-inline2122 input{width:100%}.gift-claim-inline2122>small{display:block;margin-top:7px;opacity:.72}
@media(max-width:620px){.gift-claim-inline2122 form{grid-template-columns:1fr}.gift-claim-inline2122 .btn{width:100%}}

/* SOURCE: assets/release2123.css */
/* AS-DF 2.12.3 - administrative gift-card issuance */
.gift-admin-create2123{border:1px solid rgba(17,85,140,.2);background:linear-gradient(135deg,rgba(17,85,140,.06),rgba(255,255,255,.98))}
.gift-admin-create2123 .actions{align-items:center}.gift-admin-customer2123{margin-top:1rem}.gift-admin-customer-results2123{display:grid;gap:.5rem;margin-top:.5rem}
.gift-admin-customer-hit2123{width:100%;text-align:left;border:1px solid #d6dde6;background:#fff;border-radius:12px;padding:.7rem .8rem;cursor:pointer}.gift-admin-customer-hit2123 strong,.gift-admin-customer-hit2123 span{display:block}.gift-admin-customer-hit2123 span{font-size:.85rem;opacity:.75}
.gift-admin-selected2123{padding:.7rem .8rem;border-radius:12px;background:#eef7ff;margin-top:.5rem}.gift-admin-result2123 .gift-art2120{margin-inline:auto}.gift-admin-manual-badge2123{display:inline-flex;padding:.2rem .55rem;border-radius:999px;background:#eef7ff;font-size:.78rem;font-weight:700}
@media(max-width:640px){.gift-admin-create2123 .actions .btn{width:100%}.gift-admin-customer-hit2123{padding:.8rem}.gift-admin-result2123 .actions{display:grid;grid-template-columns:1fr}}

/* SOURCE: assets/release3000.css */
/* AS-DF Reservation 3.0 - Back-office redesign */
body.admin-mode{--bo-bg:#f3f5f7;--bo-panel:#ffffff;--bo-panel-2:#f8fafc;--bo-text:#17212b;--bo-muted:#5b6673;--bo-border:#d8dee6;--bo-link:#075da8;--bo-focus:#0a6fc2;--bo-accent:#d85f24;--bo-good:#176b42;--bo-warn:#8a5400;--bo-danger:#a92c2c;background:var(--bo-bg);color:var(--bo-text)}
body.admin-mode.theme-dark3000{--bo-bg:#0d141c;--bo-panel:#17212c;--bo-panel-2:#111b25;--bo-text:#f5f7fa;--bo-muted:#c1cad4;--bo-border:#394858;--bo-link:#92cfff;--bo-focus:#83c9ff;--bo-accent:#ff995e;--bo-good:#78d9a8;--bo-warn:#ffd27b;--bo-danger:#ff9a9a;color-scheme:dark;background:var(--bo-bg);color:var(--bo-text)}
body.admin-mode .admin-workspace,body.admin-mode .admin-main,body.admin-mode .admin-footer{background:var(--bo-bg);color:var(--bo-text)}
body.admin-mode .admin-topbar,body.admin-mode .panel,body.admin-mode .row-card,body.admin-mode .stat,body.admin-mode .metric150,body.admin-mode .op-card,body.admin-mode dialog{background:var(--bo-panel);color:var(--bo-text);border-color:var(--bo-border)}
body.admin-mode .admin-sidebar{background:#101d2a;color:#fff;border-color:#2c3d4f}
body.admin-mode.theme-dark3000 .admin-sidebar{background:#0a1118}
body.admin-mode .admin-nav-link,body.admin-mode .admin-nav-section summary,body.admin-mode .admin-nav-label,body.admin-mode .admin-brand,body.admin-mode .sidebar-foot{color:#eef5fb}
body.admin-mode .admin-nav-link:hover,body.admin-mode .admin-nav-link.active{background:#243b50;color:#fff}
body.admin-mode .admin-nav-link.active{box-shadow:inset 3px 0 0 #ff995e}
body.admin-mode .admin-nav-section{border-color:#314457}
body.admin-mode h1,body.admin-mode h2,body.admin-mode h3,body.admin-mode h4,body.admin-mode strong,body.admin-mode th,body.admin-mode label,body.admin-mode legend{color:var(--bo-text)}
body.admin-mode p,body.admin-mode small,body.admin-mode .hint,body.admin-mode .sub,body.admin-mode .tiny,body.admin-mode .admin-heading p{color:var(--bo-muted)}
body.admin-mode a:not(.btn):not(.admin-nav-link):not(.admin-brand){color:var(--bo-link)}
body.admin-mode input,body.admin-mode select,body.admin-mode textarea{background:var(--bo-panel-2);color:var(--bo-text);border-color:var(--bo-border)}
body.admin-mode input::placeholder,body.admin-mode textarea::placeholder{color:var(--bo-muted);opacity:1}
body.admin-mode input:focus,body.admin-mode select:focus,body.admin-mode textarea:focus,body.admin-mode button:focus-visible,body.admin-mode a:focus-visible{outline:3px solid var(--bo-focus);outline-offset:2px}
body.admin-mode table{color:var(--bo-text)}body.admin-mode th{background:var(--bo-panel-2)}body.admin-mode td,body.admin-mode th{border-color:var(--bo-border)}
body.admin-mode .notice{background:var(--bo-panel-2);color:var(--bo-text);border-color:var(--bo-border)}
body.admin-mode.theme-dark3000 .notice.warning{background:#382b12;color:#ffe6ae;border-color:#765b1d}
body.admin-mode.theme-dark3000 .notice.success{background:#123324;color:#b9f4d2;border-color:#2a7450}
body.admin-mode.theme-dark3000 .notice.danger{background:#3a191b;color:#ffc5c5;border-color:#7a3035}
body.admin-mode.theme-dark3000 .btn.secondary,body.admin-mode.theme-dark3000 .btn.ghost,body.admin-mode.theme-dark3000 .command-button,body.admin-mode.theme-dark3000 .user-menu,body.admin-mode.theme-dark3000 .icon-button{background:#202c38;color:#f5f7fa;border-color:#455769}
body.admin-mode.theme-dark3000 .btn{color:#fff}body.admin-mode.theme-dark3000 .btn:not(.secondary):not(.ghost):not(.danger){background:#b84c1a;border-color:#d76833}
.bo-theme3000{display:inline-flex;align-items:center;gap:.45rem;white-space:nowrap}
.bo-dashboard3000{display:grid;gap:1rem}.bo-kpis3000{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem}.bo-kpi3000{padding:1rem;border:1px solid var(--bo-border);border-radius:14px;background:var(--bo-panel)}.bo-kpi3000 span{display:block;color:var(--bo-muted);font-size:.82rem}.bo-kpi3000 strong{display:block;font-size:1.65rem;line-height:1.2;margin-top:.25rem}.bo-kpi3000 small{display:block;margin-top:.3rem}
.bo-grid3000{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr);gap:1rem}.bo-chart3000{display:flex;align-items:flex-end;gap:3px;min-height:190px;padding:1rem .5rem .4rem;border-bottom:1px solid var(--bo-border)}.bo-chart3000 span{flex:1;min-width:3px;background:linear-gradient(180deg,#e97a3d,#bd4c17);border-radius:4px 4px 0 0;position:relative}.bo-chart3000 span:hover:after{content:attr(data-tip);position:absolute;left:50%;bottom:100%;transform:translate(-50%,-6px);background:#0b1722;color:#fff;padding:.3rem .45rem;border-radius:5px;white-space:nowrap;font-size:.72rem;z-index:5}.bo-chart-legend3000{display:flex;justify-content:space-between;gap:.5rem;color:var(--bo-muted);font-size:.75rem;margin-top:.45rem}.bo-actions3000{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.bo-actions3000 a{display:flex;align-items:center;gap:.55rem;min-height:52px;padding:.75rem;border:1px solid var(--bo-border);border-radius:12px;background:var(--bo-panel-2);text-decoration:none;font-weight:700}.bo-actions3000 .ui-icon{width:20px;height:20px}.bo-section-head3000{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.75rem}.bo-section-head3000 h2{margin:.1rem 0}.bo-help3000{padding:.8rem 1rem;border-radius:12px;background:var(--bo-panel-2);border:1px solid var(--bo-border)}
.google-review-admin3000 iframe{width:100%;min-height:480px;border:1px solid var(--bo-border);border-radius:12px;background:#fff}.google-test3000{margin-top:.75rem}.google-test3000 .stars{font-size:1.1rem;letter-spacing:.08em}
.catalog-hub3000{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem;margin-bottom:1rem}.catalog-hub3000 a{padding:.8rem;border-radius:12px;border:1px solid var(--bo-border);background:var(--bo-panel);text-decoration:none;font-weight:700}.catalog-hub3000 a small{display:block;font-weight:400;margin-top:.25rem}
.retired3000{max-width:760px;margin:2rem auto}.retired3000 .actions{margin-top:1rem}
.gift-simplified3000{border-left:4px solid var(--bo-accent)}
@media(max-width:1050px){.bo-kpis3000{grid-template-columns:repeat(2,minmax(0,1fr))}.bo-grid3000{grid-template-columns:1fr}.catalog-hub3000{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.bo-kpis3000{grid-template-columns:1fr 1fr}.bo-kpi3000 strong{font-size:1.25rem}.bo-actions3000,.catalog-hub3000{grid-template-columns:1fr}.bo-theme3000 span{display:none}.bo-chart3000{min-height:150px}.admin-tools .bo-theme3000{padding:.45rem}.google-review-admin3000 iframe{min-height:560px}}
/* Strong dark-mode overrides: keep all admin text readable even when older release CSS has explicit colors. */
body.admin-mode.theme-dark3000 .admin-topbar{background:var(--bo-panel)!important;color:var(--bo-text)!important;border-color:var(--bo-border)!important}
body.admin-mode.theme-dark3000 .admin-breadcrumb,body.admin-mode.theme-dark3000 .admin-breadcrumb strong,body.admin-mode.theme-dark3000 .admin-main h1,body.admin-mode.theme-dark3000 .admin-main h2,body.admin-mode.theme-dark3000 .admin-main h3,body.admin-mode.theme-dark3000 .admin-main h4,body.admin-mode.theme-dark3000 .admin-main h5,body.admin-mode.theme-dark3000 .admin-main legend{color:var(--bo-text)!important}
body.admin-mode.theme-dark3000 .admin-main p,body.admin-mode.theme-dark3000 .admin-main small,body.admin-mode.theme-dark3000 .admin-main .hint,body.admin-mode.theme-dark3000 .admin-main .sub{color:var(--bo-muted)!important}
body.admin-mode.theme-dark3000 .admin-main .eyebrow{color:#67b8ff!important}
body.admin-mode.theme-dark3000 .empty,body.admin-mode.theme-dark3000 .empty-state{background:var(--bo-panel-2)!important;color:var(--bo-text)!important;border-color:var(--bo-border)!important}
body.admin-mode.theme-dark3000 .empty *,body.admin-mode.theme-dark3000 .empty-state *{color:var(--bo-muted)!important}
body.admin-mode.theme-dark3000 .bo-kpi3000,body.admin-mode.theme-dark3000 .bo-actions3000 a,body.admin-mode.theme-dark3000 .catalog-hub3000 a{background:var(--bo-panel)!important;color:var(--bo-text)!important;border-color:var(--bo-border)!important}
body.admin-mode.theme-dark3000 .bo-actions3000 a,body.admin-mode.theme-dark3000 .catalog-hub3000 a{color:var(--bo-link)!important}
body.admin-mode.theme-dark3000 .user-menu span,body.admin-mode.theme-dark3000 .user-menu small{color:var(--bo-text)!important}
@media(max-width:760px){body.admin-mode .admin-tools .bo-theme3000{display:inline-flex!important;min-width:42px!important;width:42px!important;height:42px!important;padding:.5rem!important;justify-content:center!important}body.admin-mode .admin-tools .bo-theme3000 .ui-icon{display:block!important}body.admin-mode .admin-tools .bo-theme3000 span{display:none!important}}
body.admin-mode.theme-dark3000 .admin-main .check span,body.admin-mode.theme-dark3000 .admin-main .field>label,body.admin-mode.theme-dark3000 .admin-main .field label,body.admin-mode.theme-dark3000 .admin-main form label{color:var(--bo-text)!important}
body.admin-mode.theme-dark3000 .admin-main .notice,body.admin-mode.theme-dark3000 .admin-main .bo-help3000{background:var(--bo-panel-2)!important;color:var(--bo-text)!important;border-color:var(--bo-border)!important}
body.admin-mode.theme-dark3000 .admin-main .notice *,body.admin-mode.theme-dark3000 .admin-main .bo-help3000 *{color:var(--bo-text)!important}
body.admin-mode.theme-dark3000 .admin-main pre,body.admin-mode.theme-dark3000 .admin-main code{background:#0b131b!important;color:#e7f1fa!important;border-color:var(--bo-border)!important}
body.admin-mode.theme-dark3000 .admin-main summary{color:var(--bo-text)!important}
/* Old releases sometimes render helper text on a pale box. In dark mode use the
   current panel background so muted text keeps WCAG-level contrast. */
body.admin-mode.theme-dark3000 .admin-main .hint{background:transparent!important;color:var(--bo-muted)!important}
body.admin-mode.theme-dark3000 .admin-main p.hint{border-color:var(--bo-border)!important}

/* SOURCE: assets/release3001.css */
/* AS-DF Reservation 3.0.1 - exhaustive back-office readability/contrast hardening. */
body.admin-mode{
  --bo-muted:#465462;
  --bo-eyebrow:#3c5f7f;
  --bo-soft:#617181;
  --bo-sidebar-text:#eef5fb;
  --bo-sidebar-muted:#cbd9e6;
}
body.admin-mode.theme-dark3000{
  --bo-muted:#c7d1dc;
  --bo-eyebrow:#92cfff;
  --bo-soft:#b5c2cf;
  --bo-sidebar-muted:#cbd9e6;
}

/* Global admin chrome. */
body.admin-mode .skip{background:#075da8!important;color:#fff!important}
body.admin-mode .skip:focus{background:#075da8!important;color:#fff!important}
body.admin-mode .admin-sidebar :is(small,.tiny,.sidebar-foot){color:var(--bo-sidebar-muted)!important}
body.admin-mode .admin-sidebar .admin-brand :is(span,b,strong){color:var(--bo-sidebar-text)!important}
body.admin-mode .admin-sidebar .admin-nav-link,body.admin-mode .admin-sidebar summary,body.admin-mode .admin-sidebar .admin-nav-label{color:var(--bo-sidebar-text)!important}
body.admin-mode .admin-breadcrumb>span:first-of-type{color:var(--bo-muted)!important}
body.admin-mode .crumb-separator{color:var(--bo-soft)!important}
body.admin-mode .command-button{color:#405266!important;background:#f4f7fb!important;border-color:#cfd9e3!important}
body.admin-mode .command-button span{color:#405266!important}
body.admin-mode .command-button kbd{color:#35485a!important;background:#fff!important;border-color:#c7d2dd!important}
body.admin-mode .user-menu{color:var(--bo-text)!important}
body.admin-mode .user-menu small{color:var(--bo-muted)!important}
body.admin-mode .user-avatar{background:#dce9f5!important;color:#18476e!important;border:1px solid #bfd1e1!important}
body.admin-mode .admin-footer,body.admin-mode .admin-footer span{color:var(--bo-muted)!important}

/* Normalize legacy typography in light mode: old releases used very pale helper text. */
body.admin-mode:not(.theme-dark3000) .admin-main :is(h1,h2,h3,h4,h5,h6,strong,b,label,legend,summary){color:var(--bo-text)!important}
body.admin-mode:not(.theme-dark3000) .admin-main span:not(.badge):not(.gift-emblem2120):not(.gift-kicker2120){color:var(--bo-text)!important}
body.admin-mode:not(.theme-dark3000) .admin-main :is(p,small,.hint,.sub,.tiny,.muted,.table-caption,.time-zone-label,.source-label){color:var(--bo-muted)!important}
body.admin-mode:not(.theme-dark3000) .admin-main .eyebrow{color:var(--bo-eyebrow)!important}
body.admin-mode:not(.theme-dark3000) .admin-main :is(.calendar-legend,.calendar-legend span,.week-date,.week-date span,.time-axis span,.month-weekday,.month-day header small){color:#465d72!important}
body.admin-mode:not(.theme-dark3000) .admin-main .segmented :is(button,a){color:#405a70!important}
body.admin-mode:not(.theme-dark3000) .admin-main .segmented .selected{color:#075da8!important}
body.admin-mode:not(.theme-dark3000) .admin-main .empty{color:#52677a!important}
body.admin-mode:not(.theme-dark3000) .admin-main .empty strong{color:#2e485f!important}
body.admin-mode:not(.theme-dark3000) .admin-main .balance-due{color:#87500b!important}
body.admin-mode:not(.theme-dark3000) .admin-main .step-dot{color:#285f9a!important;background:#e4eef8!important}
body.admin-mode:not(.theme-dark3000) .admin-main .initials{color:#285f9a!important;background:#e4eef8!important}

/* Semantic badges: AA contrast in both themes. */
body.admin-mode:not(.theme-dark3000) .badge.green{background:#e8f5ee!important;color:#176b42!important}
body.admin-mode:not(.theme-dark3000) .badge.amber{background:#fff4df!important;color:#7a4c00!important}
body.admin-mode:not(.theme-dark3000) .badge.blue{background:#eaf2fd!important;color:#285f9a!important}
body.admin-mode:not(.theme-dark3000) .badge.neutral{background:#edf1f6!important;color:#48596a!important}
body.admin-mode:not(.theme-dark3000) .badge.red{background:#feeeee!important;color:#8c3434!important}

/* Preserve the intentionally dark gift artwork in light mode. */
body.admin-mode .gift-art2120,body.admin-mode .gift-art2120 :is(span,strong,b,h2,h3,p,small){color:#fff!important}
body.admin-mode .gift-art2120 .gift-emblem2120{color:#ffe8ab!important}
body.admin-mode .gift-art2120 .gift-kicker2120{color:#dbe8f8!important}

/* Dark mode: remove hard-coded pale backgrounds from historical releases.
   Background images/gradients are preserved; only their background-color layer is normalized. */
body.admin-mode.theme-dark3000 .admin-main :where(
  div,section,article,form,fieldset,details,summary,table,thead,tbody,tfoot,tr,td,th,
  ul,ol,li,p,span,small,strong,b,label,legend,h1,h2,h3,h4,h5,h6
){
  background-color:transparent!important;
  border-color:var(--bo-border)!important;
}
body.admin-mode.theme-dark3000 .admin-main :where(h1,h2,h3,h4,h5,h6,strong,b,label,legend,summary,span){color:var(--bo-text)!important}
body.admin-mode.theme-dark3000 .admin-main :where(p,small,.hint,.sub,.tiny,.muted,.table-caption,.source-label){color:var(--bo-muted)!important}
body.admin-mode.theme-dark3000 .admin-main .eyebrow{color:var(--bo-eyebrow)!important}
body.admin-mode.theme-dark3000 .admin-main a:not(.btn):not(.text-button){color:var(--bo-link)!important}

/* Restore deliberate dark surfaces after the neutralization above. */
body.admin-mode.theme-dark3000 :is(.admin-topbar,.panel,.row-card,.feature-card,.stat,.metric150,.op-card,dialog){background:var(--bo-panel)!important;color:var(--bo-text)!important;border-color:var(--bo-border)!important}
body.admin-mode.theme-dark3000 .admin-main :is(.bo-kpi3000,.bo-actions3000 a,.catalog-hub3000 a,.empty,.empty-state,.bo-help3000){background:var(--bo-panel-2)!important;color:var(--bo-text)!important;border-color:var(--bo-border)!important}
body.admin-mode.theme-dark3000 .admin-main :is(input,select,textarea){background:#0f1a24!important;color:#f5f7fa!important;border-color:#536577!important;opacity:1!important}
body.admin-mode.theme-dark3000 .admin-main :is(input,textarea)::placeholder{color:#aebdca!important;opacity:1!important}
body.admin-mode.theme-dark3000 .admin-main :is(button,.btn,.text-button){color:#f5f7fa!important;border-color:#536577!important;opacity:1}
body.admin-mode.theme-dark3000 .admin-main button:not(.danger):not(.primary),body.admin-mode.theme-dark3000 .admin-main .btn.secondary,body.admin-mode.theme-dark3000 .admin-main .btn.ghost{background:#202c38!important;color:#f5f7fa!important}
body.admin-mode.theme-dark3000 .admin-main .btn:not(.secondary):not(.ghost):not(.danger){background:#a94318!important;color:#fff!important;border-color:#d76833!important}
body.admin-mode.theme-dark3000 .admin-main button:disabled,body.admin-mode.theme-dark3000 .admin-main .btn:disabled{background:#29343f!important;color:#c9d3dc!important;border-color:#4a5b6b!important;opacity:1!important}
body.admin-mode.theme-dark3000 .admin-main :is(pre,code){background:#0b131b!important;color:#e7f1fa!important;border-color:var(--bo-border)!important}
body.admin-mode.theme-dark3000 .admin-main table{background:var(--bo-panel)!important;color:var(--bo-text)!important}
body.admin-mode.theme-dark3000 .admin-main th{background:#202c38!important;color:#e7eef5!important}
body.admin-mode.theme-dark3000 .admin-main td{background:transparent!important;color:var(--bo-text)!important}
body.admin-mode.theme-dark3000 .admin-main tr:hover td{background:#1c2935!important}

/* Dark semantic states. */
body.admin-mode.theme-dark3000 .admin-main .badge.green{background:#123324!important;color:#b9f4d2!important;border-color:#2a7450!important}
body.admin-mode.theme-dark3000 .admin-main .badge.amber{background:#3b2c12!important;color:#ffe1a6!important;border-color:#765b1d!important}
body.admin-mode.theme-dark3000 .admin-main .badge.blue{background:#142d46!important;color:#b9dcff!important;border-color:#315f89!important}
body.admin-mode.theme-dark3000 .admin-main .badge.neutral{background:#202b36!important;color:#e3ebf3!important;border-color:#455769!important}
body.admin-mode.theme-dark3000 .admin-main .badge.red{background:#3a191b!important;color:#ffc5c5!important;border-color:#7a3035!important}
body.admin-mode.theme-dark3000 .admin-main .notice{background:#172738!important;color:#e7eef5!important;border-color:#46617a!important}
body.admin-mode.theme-dark3000 .admin-main .notice.warning,
body.admin-mode.theme-dark3000 .admin-main .flash-range2110.warning,
body.admin-mode.theme-dark3000 .admin-main .reward-expiry2120{background:#3b2c12!important;color:#ffe1a6!important;border-color:#765b1d!important}
body.admin-mode.theme-dark3000 .admin-main .notice.success,
body.admin-mode.theme-dark3000 .admin-main .flash-cap2111{background:#123324!important;color:#b9f4d2!important;border-color:#2a7450!important}
body.admin-mode.theme-dark3000 .admin-main :is(.notice.danger,.notice.error,.gcal-error260){background:#3a191b!important;color:#ffc5c5!important;border-color:#7a3035!important}
body.admin-mode.theme-dark3000 .admin-main .step-dot{background:#17324a!important;color:#b9dcff!important;border-color:#315f89!important}
body.admin-mode.theme-dark3000 .admin-main .initials{background:#17324a!important;color:#b9dcff!important}

/* Dark topbar controls. */
body.admin-mode.theme-dark3000 .command-button{background:#202c38!important;color:#f5f7fa!important;border-color:#536577!important}
body.admin-mode.theme-dark3000 .command-button span{color:#f5f7fa!important}
body.admin-mode.theme-dark3000 .command-button kbd{background:#0f1a24!important;color:#e7eef5!important;border-color:#536577!important}
body.admin-mode.theme-dark3000 .user-avatar{background:#20435e!important;color:#fff!important;border-color:#4f7795!important}
body.admin-mode.theme-dark3000 .user-menu,body.admin-mode.theme-dark3000 .user-menu span{color:#f5f7fa!important}
body.admin-mode.theme-dark3000 .user-menu small{color:#c7d1dc!important}

/* Calendar remains visually differentiated in dark mode, without pale cells. */
body.admin-mode.theme-dark3000 .admin-main .segmented{background:#111b25!important;border-color:#455769!important}
body.admin-mode.theme-dark3000 .admin-main .segmented :is(button,a){background:transparent!important;color:#c7d1dc!important}
body.admin-mode.theme-dark3000 .admin-main .segmented .selected{background:#27435b!important;color:#fff!important}
body.admin-mode.theme-dark3000 .admin-main :is(.month-weekday,.month-pad,.month-day,.week-header,.time-axis,.week-column){background-color:#111b25!important;color:#e7eef5!important;border-color:#394858!important}
body.admin-mode.theme-dark3000 .admin-main .month-day.today,body.admin-mode.theme-dark3000 .admin-main .week-column.today{background-color:#17283a!important}
body.admin-mode.theme-dark3000 .admin-main .admin-event{background:#173a38!important;color:#d9fff6!important;border-left-color:#63ada7!important}
body.admin-mode.theme-dark3000 .admin-main .admin-event.laser{background:#19334f!important;color:#dbeaff!important;border-left-color:#83a8d6!important}
body.admin-mode.theme-dark3000 .admin-main .admin-event.status-cancelled,
body.admin-mode.theme-dark3000 .admin-main .admin-event.status-expired,
body.admin-mode.theme-dark3000 .admin-main .admin-event.status-no_show{background:#30272a!important;color:#f0d7d7!important;border-left-color:#b98585!important;opacity:1!important}
body.admin-mode.theme-dark3000 .admin-main .closed-pill{background:#29343f!important;color:#d7e0e8!important}
body.admin-mode.theme-dark3000 .admin-main .closure-block{background:repeating-linear-gradient(135deg,#1e2934 0,#1e2934 6px,#273440 6px,#273440 12px)!important;border-color:#455769!important}
body.admin-mode.theme-dark3000 .admin-main .closure-block span{color:#d0dae4!important}
body.admin-mode.theme-dark3000 .admin-main .calendar-legend,
body.admin-mode.theme-dark3000 .admin-main .calendar-legend span,
body.admin-mode.theme-dark3000 .admin-main .week-date,
body.admin-mode.theme-dark3000 .admin-main .week-date span,
body.admin-mode.theme-dark3000 .admin-main .time-axis span,
body.admin-mode.theme-dark3000 .admin-main .time-zone-label{color:#c7d1dc!important}

/* Release-specific light panels that used white backgrounds. */
body.admin-mode.theme-dark3000 .admin-main :is(
  .systempay-settings270,.gcal260,.gcal-hero260,.gcal-card260,.gcal-box260,.gcal-note260,
  .flash-schedule2110,.flash-config2110,.flash-offer2110,.flash-summary2111,.gift-wallet-item2120,
  .gift-payment2120,.gift-pay-card2120,.gift-admin-order2120,.gift-admin-create2123,
  .gift-design-card2121,.gift-content-summary2121,.player-links2120,.cancel-card2120,.cancel-reason2120,
  .cancel-meta2120>span,.cancel-totals2120>span,.op-notice,.preview-amount
){background:var(--bo-panel-2)!important;color:var(--bo-text)!important;border-color:var(--bo-border)!important}
body.admin-mode.theme-dark3000 .admin-main :is(.gift-content-summary2121,.gcal-note260,.op-notice) *{color:inherit!important}

/* Keep visual gift templates on their designed gradient artwork in dark mode. */
body.admin-mode.theme-dark3000 .gift-art2120{background-color:#13233b!important}
body.admin-mode.theme-dark3000 .gift-art2120 :is(span,strong,b,h2,h3,p,small){color:#fff!important}
body.admin-mode.theme-dark3000 .gift-art2120 .gift-emblem2120{color:#ffe8ab!important}
body.admin-mode.theme-dark3000 .gift-art2120 .gift-kicker2120{color:#dbe8f8!important}

/* Form helpers and filter controls, both themes. */
body.admin-mode .admin-main .field>label,body.admin-mode .admin-main .field label{color:var(--bo-text)!important}
body.admin-mode .admin-main :is(.pagination,.pagination span,.filter-bar label,.calendar-filters label){color:var(--bo-muted)!important}
body.admin-mode .admin-main .source-label{color:var(--bo-muted)!important}
body.admin-mode .admin-main :is(input,select,textarea):disabled{opacity:1!important}
body.admin-mode:not(.theme-dark3000) .admin-main :is(input,select,textarea):disabled{background:#edf1f5!important;color:#536171!important;border-color:#cbd5df!important}

/* Focus is visible on both themes. */
body.admin-mode :is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid var(--bo-focus)!important;outline-offset:2px!important}

/* 3.0.1 follow-up: components found by the full 49-route contrast scan. */
body.admin-mode:not(.theme-dark3000) .presentation-preview-card222{background:#f8fbff!important;border-color:#cbd9e6!important}
body.admin-mode:not(.theme-dark3000) .presentation-preview-card222 strong{color:#173552!important}
body.admin-mode:not(.theme-dark3000) .presentation-preview-card222 span{color:#334f69!important}
body.admin-mode:not(.theme-dark3000) .presentation-preview-card222 small{color:#465f77!important}
body.admin-mode.theme-dark3000 .presentation-preview-card222{background:#111f2d!important;border-color:#394858!important}
body.admin-mode.theme-dark3000 .presentation-preview-card222 strong{color:#f5f7fa!important}
body.admin-mode.theme-dark3000 .presentation-preview-card222 span{color:#e2eaf2!important}
body.admin-mode.theme-dark3000 .presentation-preview-card222 small{color:#c7d1dc!important}

body.admin-mode:not(.theme-dark3000) .admin-main .badge:not(.green):not(.amber):not(.blue):not(.red):not(.neutral){background:#edf1f6!important;color:#48596a!important}
body.admin-mode.theme-dark3000 .admin-main .badge:not(.green):not(.amber):not(.blue):not(.red):not(.neutral){background:#202b36!important;color:#e3ebf3!important;border-color:#455769!important}

body.admin-mode:not(.theme-dark3000) .gcal260 .btn:disabled{color:#4c5b69!important;background:#eef1f4!important;border-color:#b9c4cf!important}
body.admin-mode.theme-dark3000 .payment-deadline250,body.admin-mode.theme-dark3000 #main .payment-deadline250{background:#172738!important;color:#e7eef5!important;border-color:#46617a!important}
body.admin-mode.theme-dark3000 #main .payment-deadline250 :is(label,p){color:#e7eef5!important}
body.admin-mode.theme-dark3000 #main .payment-deadline250 .notice{background:#1d3144!important;color:#e7eef5!important;border-color:#46617a!important}
body.admin-mode.theme-dark3000 .gcal260 li{color:#c7d1dc!important}

/* 3.0.1 - final mobile/admin modal contrast hardening */
body.admin-mode:not(.theme-dark3000) .icon-button.mobile-toggle {
  color: #405266 !important;
  background: #ffffff !important;
  border-color: #c8d3de !important;
}

body.admin-mode dialog,
body.admin-mode dialog #dialog-content {
  background: var(--bo-panel) !important;
  color: var(--bo-text) !important;
  border-color: var(--bo-line) !important;
}

body.admin-mode:not(.theme-dark3000) dialog :where(p,span,small,label,legend,summary,li,dt,dd,th,td,strong,b,em) {
  color: var(--bo-text) !important;
}
body.admin-mode:not(.theme-dark3000) dialog :where(.muted,.helper,.hint,.subtle,.small,.meta) {
  color: var(--bo-muted) !important;
}

body.admin-mode.theme-dark3000 dialog :where(div,section,article,header,footer,aside,main,nav,form,fieldset,ul,ol,li,dl,dt,dd,p,span,small,label,legend,summary,table,thead,tbody,tfoot,tr,th,td,strong,b,em) {
  background-color: transparent !important;
  border-color: var(--bo-line) !important;
  color: var(--bo-text) !important;
}
body.admin-mode.theme-dark3000 dialog :where(.muted,.helper,.hint,.subtle,.small,.meta) {
  color: var(--bo-muted) !important;
}
body.admin-mode.theme-dark3000 dialog :where(input,select,textarea) {
  background: var(--bo-input) !important;
  color: var(--bo-text) !important;
  border-color: var(--bo-line-strong) !important;
}
body.admin-mode.theme-dark3000 dialog :where(button,.btn) {
  border-color: var(--bo-line-strong) !important;
}

/* Client comfort: scoped changes, existing palette and navigation retained. */
.form-feedback3100:empty{display:none}input[aria-invalid=true],select[aria-invalid=true]{outline:2px solid #fb7185;outline-offset:2px}.form-feedback3100{scroll-margin-top:100px}
.booking-state3100{border:1px solid var(--line,#365270);border-left:4px solid #38bdf8;background:#10273b;padding:20px;border-radius:14px;margin:0 0 20px}.booking-state3100 h2{margin:0 0 8px;font-size:clamp(20px,4vw,28px)}.booking-state3100 p{margin:0;line-height:1.6}.booking-state3100.warning{border-left-color:#fbbf24}.booking-state3100.success{border-left-color:#34d399}
.seat-prices3100{margin-top:20px;border-top:1px solid var(--line,#365270);padding-top:15px}.seat-prices3100 summary{cursor:pointer;font-weight:700;min-height:44px;display:flex;align-items:center}.seat-prices3100 article{padding:12px 0;border-top:1px solid var(--line,#365270)}.seat-prices3100 h3{display:flex;justify-content:space-between;gap:12px;font-size:15px;margin:0 0 5px;overflow-wrap:anywhere}.seat-prices3100 p{font-size:12px;margin:4px 0 10px}.seat-prices3100 dl{margin:0}.seat-prices3100 dl div{display:flex;justify-content:space-between;gap:12px;font-size:13px;line-height:1.8}.seat-prices3100 dd{margin:0;white-space:nowrap}
#journey-dock3100{display:none}.reception-filters3100{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0}.reception-filters3100 [aria-pressed=true]{outline:2px solid #258ccf;outline-offset:2px}#simulation-result3100{margin-top:24px}
@media(max-width:760px){
 body.journey3100 #reserve-sticky160{display:none!important}
 body.journey3100{padding-bottom:calc(110px + env(safe-area-inset-bottom,0px))}
 #journey-dock3100{position:fixed;display:flex;align-items:center;justify-content:space-between;gap:12px;left:0;right:0;bottom:0;z-index:55;background:#0c2032;color:#f5faff;border-top:1px solid #3a5973;padding:10px max(14px,env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(14px,env(safe-area-inset-left,0px));box-shadow:0 -6px 24px #0004}
 .dock-summary3100{display:flex;flex-direction:column;align-items:flex-start;gap:2px;border:0;background:none;color:inherit;text-align:left;padding:0;min-width:0}.dock-summary3100 span{font-size:12px}.dock-summary3100 strong{font-size:22px}.dock-summary3100 small{font-size:11px;text-decoration:underline;color:#c9e6fa}.dock-next3100{min-height:48px;max-width:45%;white-space:normal}
 body.journey3100 .steps{position:relative;top:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}body.journey3100 .steps span{font-size:11px;padding:9px 3px;text-align:center;min-width:0;white-space:normal;overflow-wrap:anywhere}
 body.journey3100 input:not([type=checkbox]):not([type=radio]),body.journey3100 select,body.journey3100 textarea{font-size:16px;min-height:46px}body.journey3100 .layout{min-width:0}body.journey3100 .layout>.panel{min-width:0}body.journey3100 .summary{scroll-margin-top:85px}
}
@media(prefers-reduced-motion:reduce){body.journey3100 *{scroll-behavior:auto!important}}

/* 3.1.1: client-only compact forms and group cards. */
.client-fold3110{display:block;margin:14px 0;border:1px solid var(--line);border-radius:12px;background:var(--surface);padding:0 16px;min-width:0}
.client-fold3110>summary{cursor:pointer;padding:14px 0;min-height:48px;font-weight:700;color:var(--text);overflow-wrap:anywhere}
.client-fold3110[open]>summary{border-bottom:1px solid var(--line);margin-bottom:14px}
.client-fold3110>section,.client-fold3110>.growth-draft210,.client-fold3110>.offer-panel132{border:0;box-shadow:none;background:transparent;margin:0;padding:0 0 12px}
.client-fold3110>.field{padding-bottom:12px}.client-fold3110 .sms-preview{margin-top:12px}
.client-compact3110 .reservation-hero3110{min-height:0;padding:14px 0 20px;margin:0;background:none;border:0}
.client-compact3110 .reservation-hero3110 h1{font-size:clamp(24px,4vw,34px);margin:6px 0}
.client-compact3110 .reservation-hero3110 .eyebrow{display:none}
.client-compact3110 .gift-preview2122:has(>.gift-claim-inline2122:only-child){padding:10px 0;background:none;border:0}
.client-compact3110 .gift-claim-inline2122>summary{min-height:44px;display:flex;align-items:center}
.group-counts3110{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.group-counts3110>span{background:var(--surface2);border:1px solid var(--line);padding:8px 12px;border-radius:10px;font-size:13px}
.group-players3110{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:14px;margin:16px 0}
.group-player3110{min-width:0;padding:18px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.group-player-heading3110{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:8px}.group-player3110 h3{margin:3px 0;overflow-wrap:anywhere}.group-player3110 p{margin:10px 0}.group-player3110 .badge{white-space:normal}.group-payment3110{display:block;margin:12px 0}
.group-player3110 dl{margin:12px 0}.group-player3110 dl>div{display:flex;justify-content:space-between;gap:12px;margin:6px 0}.group-player3110 dd{margin:0;white-space:nowrap;font-weight:700}.group-player3110 dt{color:var(--muted)}
.group-share3110 .section-title .eyebrow{display:none}.group-share3110 .client-fold3110{margin-bottom:0}.group-share3110 .actions{gap:10px}.group-share3110 .share-link-field>div{flex-wrap:wrap}.group-share3110 input{min-width:0;max-width:100%}
@media(max-width:760px){
 .client-compact3110 .reservation-hero3110{display:block;padding:8px 0 12px}.client-compact3110 .reservation-hero3110>a{font-size:12px;padding:8px 0;min-height:36px;background:none;border:0}
 .client-compact3110 .layout>.panel{padding:18px}.client-compact3110 .steps{margin:0 0 16px}.client-compact3110 .steps span{letter-spacing:normal;word-break:normal;font-size:11px;line-height:1.3}
 .client-compact3110 .steps span strong,.client-compact3110 .steps span b{font-size:inherit}
 .group-player3110{padding:14px}.group-share3110{padding:18px}.group-share3110 .section-title{display:block}.group-share3110 .section-title h2{margin-bottom:10px}.group-counts3110{gap:6px}.group-counts3110>span{padding:7px 9px}
}

/* Keep the invitation card in the same client palette as its folded controls. */
.group-share.group-share3110{background:var(--surface)!important;color:var(--text)!important;border:1px solid var(--line)!important}
.group-share.group-share3110 h2,.group-share.group-share3110 summary,.group-share.group-share3110 label{color:var(--text)!important}
.group-share.group-share3110 p,.group-share.group-share3110 small{color:var(--muted)!important}
.client-fold3110>.op-notice{background:none;border:0;margin:0;padding:0 0 14px}
.skip:not(:focus){clip-path:inset(50%);width:1px;height:1px;overflow:hidden;padding:0}
.client-language3200{display:inline-flex;align-items:center;gap:.35rem;margin:.4rem}.client-language3200 select{width:auto;max-width:175px;padding:.45rem;border:1px solid #586f84;border-radius:8px;background:#10273b;color:#fff;font-size:14px}.change-player3200{margin:1rem 0;border:1px solid #6f8295;border-radius:12px;padding:1rem}.client-actions3200 .actions{flex-wrap:wrap}.birthday-canvas3200{display:block;max-width:100%;height:auto;width:440px;margin:1rem auto}.birthday-print3200{max-width:100%}#change-preview3200 dt{font-weight:700}#change-preview3200 dd{margin:0 0 .7rem}#change-rows3200 small{display:block;margin:.6rem 0}
@media print{body.birthday-printing3200>*{display:none!important}body.birthday-printing3200 #dialog{display:block!important;position:static!important;max-width:none!important;width:100%!important;max-height:none!important;border:0!important;overflow:visible!important;padding:0!important}body.birthday-printing3200 #dialog-content>*{display:none!important}body.birthday-printing3200 #birthday-preview3200{display:block!important}body.birthday-printing3200 #birthday-preview3200>*{display:none!important}body.birthday-printing3200 #birthday-preview3200 .birthday-print3200{display:block!important}body.birthday-printing3200 canvas{width:170mm!important;height:auto!important;max-height:260mm;object-fit:contain;margin:auto!important}body.birthday-printing3200 #dialog::backdrop{display:none!important}}
@media(max-width:760px){body.client160 .topbar{flex-wrap:wrap}body.client160 .topbar .client-language3200{flex:0 0 100%;width:100%;justify-content:flex-end;margin:0}body.client160 .topbar .client-language3200 select{max-width:170px}.client-actions3200 .btn{white-space:normal;max-width:100%}}
.newsletter-layout3300{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.85fr);gap:22px;align-items:start}.newsletter-layout3300>*{min-width:0}.newsletter-block3300{padding:16px;border:1px solid var(--border,#74849a);border-radius:12px;margin:18px 0}.newsletter-block-top3300{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:12px;flex-wrap:wrap}.newsletter-block3300 label{display:grid;gap:7px;margin:12px 0}.newsletter-block3300 input{width:100%;max-width:100%;box-sizing:border-box}.newsletter-toolbar3300{display:flex;flex-wrap:wrap;gap:4px;padding:8px;background:#e8eef4;border-radius:8px 8px 0 0}.newsletter-toolbar3300 .btn{background:#fff!important;color:#152c43!important;border-color:#9fb1c3!important}.newsletter-rich3300{background:#fff!important;color:#263447!important;min-height:130px;border:1px solid #8b9db0;padding:16px;border-radius:0 0 8px 8px;font:16px/1.65 Arial,sans-serif;overflow-wrap:anywhere}.newsletter-rich3300 a{color:#075985;text-decoration:underline}.newsletter-rich3300:focus{outline:3px solid #38bdf8;outline-offset:2px}.newsletter-rich3300 p{color:inherit}.newsletter-rich3300 ul,.newsletter-rich3300 ol{padding-left:25px}.newsletter-add3300{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.newsletter-footer3300{margin-top:24px;padding:18px;border-radius:10px;background:#dcebf6;color:#20394d}.newsletter-footer3300 p{color:#20394d}.newsletter-preview-panel3300{position:sticky;top:85px}.newsletter-preview3300{display:block;width:100%;height:720px;max-width:100%;border:1px solid #8fa1b6;border-radius:10px;background:#eaf0f6;margin:12px auto}.newsletter-preview3300.newsletter-mobile3300{width:375px}.newsletter-exclusions3300{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}.newsletter-exclusions3300 span{padding:8px 10px;border:1px solid #899eb4;border-radius:8px}.newsletter-compose3300 input[type=color]{height:44px;min-width:70px;padding:4px}#newsletter-save-state3300{font-weight:bold}#newsletter-form3300 .actions{flex-wrap:wrap}
@media(max-width:1100px){.newsletter-layout3300{grid-template-columns:minmax(0,1fr)}.newsletter-preview-panel3300{position:static}.newsletter-preview3300{height:620px}}@media(max-width:600px){.newsletter-block3300{padding:10px}.newsletter-toolbar3300 .btn{font-size:12px;padding:8px}.newsletter-preview3300{height:550px}.newsletter-layout3300{gap:12px}#newsletter-form3300 .btn{max-width:100%;white-space:normal}}
