.prb-button,.prb-dialog button,.prb-dialog input,.prb-dialog select,#prb-admin button,#prb-admin input,#prb-admin select,#prb-admin textarea{box-sizing:border-box;font:inherit}
.prb-button{border:0;border-radius:30px;background:#0f4885;color:#fff;padding:14px 24px;font-weight:600;cursor:pointer}
.prb-dialog{font-family:Jost,system-ui,sans-serif;color:#0f4885;background:#fff;width:min(510px,calc(100% - 24px));max-height:90dvh;overflow:auto;padding:24px;border:0;border-radius:22px;box-shadow:0 24px 80px #001d3c55;box-sizing:border-box}
.prb-dialog::backdrop{background:#09243ab3}.prb-dialog h2{font-size:28px;line-height:1.2;color:#0f4885;margin:12px 0 20px}.prb-dialog header,.prb-dialog footer{display:flex;justify-content:space-between;align-items:center;gap:12px}.prb-logo{width:132px;height:auto}.prb-dialog .prb-close{margin-left:auto;font-size:28px;border:0;background:transparent;padding:6px 14px}.prb-dialog p{line-height:1.5}.prb-dialog label{display:grid;gap:7px;margin:14px 0}.prb-dialog input:not([type=checkbox]),.prb-dialog select{width:100%;min-width:0;padding:12px;border:1px solid #b9c8d7;border-radius:10px;background:#fff;color:#123d63;font-size:16px}.prb-dialog input[type=checkbox]{width:20px;height:20px;accent-color:#0f4885}.prb-dialog .prb-check{display:flex;align-items:flex-start;gap:10px}.prb-check small,.prb-table small{display:block;font-size:12px;line-height:1.4;margin-top:4px}.prb-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.prb-dialog button:not(.prb-button){color:#0f4885;border:1px solid #c1d1e0;background:#fff;border-radius:12px;padding:10px;cursor:pointer}.prb-dialog button[aria-pressed=true]{background:#eaf0f8;border:2px solid #0f4885}.prb-dialog button:disabled{opacity:.6;cursor:wait}.prb-progress{font-size:13px;text-transform:uppercase;letter-spacing:.08em}.prb-summary,.prb-notice{background:#eaf0f8;border-radius:12px;padding:14px;line-height:1.6}.prb-error{color:#a50705;margin:10px 0;line-height:1.4}.prb-map{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:18px 0}.prb-map .prb-table{min-height:70px;padding:6px;font-size:13px}.prb-service{font-size:14px}.prb-honey{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
#prb-admin{max-width:1200px;color:#17354c}#prb-admin nav{display:flex;gap:8px;margin:18px 0;flex-wrap:wrap}#prb-admin nav button,#prb-admin button{padding:8px 14px;border:1px solid #b9c8d7;border-radius:8px;background:white;cursor:pointer}#prb-admin nav button[aria-pressed=true]{background:#0f4885;color:white}#prb-admin .prb-panel{padding:20px;background:#fff;border:1px solid #d3dce4;border-radius:12px;margin:14px 0}#prb-admin label{display:block;margin:12px 0}#prb-admin input:not([type=checkbox]),#prb-admin select,#prb-admin textarea{max-width:100%;min-height:36px}#prb-admin textarea{display:block;width:100%;min-height:80px}#prb-admin table{border-collapse:collapse;width:100%;text-align:left}#prb-admin th,#prb-admin td{border-bottom:1px solid #d8e0e7;padding:10px 6px;vertical-align:top}#prb-admin td small{display:block}#prb-admin td button{margin:4px}#prb-admin .prb-scroll{overflow-x:auto}#prb-admin .prb-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}#prb-admin .prb-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}#prb-admin .prb-row input{width:130px}#prb-admin .prb-row input[type=checkbox]{width:auto}#prb-admin .prb-ok{color:#147043}#prb-admin .prb-field{display:flex;gap:10px;align-items:center;flex-wrap:wrap}#prb-admin .prb-map{max-width:460px}#prb-admin .prb-table{border:1px solid #9aafc1;border-radius:12px;background:#eaf0f8;min-height:60px;padding:8px;text-align:center}
@media(max-width:480px){.prb-dialog{padding:18px}.prb-dialog h2{font-size:25px}.prb-dialog footer{align-items:stretch}.prb-dialog footer .prb-button{flex:1}.prb-dialog .prb-map{gap:5px}}
.prb-portal{margin:0;background:#f2f5f8;color:#17354c;font:16px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.prb-portal *{box-sizing:border-box}.prb-portal-shell{max-width:1280px;margin:auto;padding:24px}.prb-portal-header{display:flex;align-items:center;gap:24px;padding:20px 0;border-bottom:1px solid #cbd7e1;margin-bottom:24px}.prb-portal-header img{width:140px;height:auto}.prb-portal-header h1{font-size:26px;line-height:1.2;margin:0;color:#0f4885}.prb-portal-header p{margin:6px 0}.prb-portal-header>a{margin-left:auto}.prb-portal a{color:#0f4885}.prb-login{max-width:440px;margin:32px auto;background:white;padding:28px;border-radius:16px;border:1px solid #d3dce4}.prb-login label{display:block;margin-bottom:8px}.prb-login input:not([type=checkbox]){width:100%;min-height:46px;padding:10px;font:inherit;border:1px solid #a9bccd;border-radius:8px}.prb-login input[type=submit]{background:#0f4885;color:white;cursor:pointer}.prb-login input[type=checkbox]{width:20px;height:20px;vertical-align:middle}.prb-portal #prb-admin input,.prb-portal #prb-admin select,.prb-portal #prb-admin button{min-height:44px;padding:8px}.prb-portal #prb-admin input[type=checkbox]{min-height:0;width:20px;height:20px}.prb-portal #prb-admin input,.prb-portal #prb-admin select,.prb-portal #prb-admin textarea{border:1px solid #a9bccd;border-radius:6px;background:white;color:#17354c}.prb-portal #prb-admin th{white-space:nowrap}.prb-portal #prb-admin table{min-width:720px}@media(max-width:600px){.prb-portal-shell{padding:14px}.prb-portal-header{gap:12px;flex-wrap:wrap}.prb-portal-header img{width:95px}.prb-portal-header h1{font-size:21px}.prb-login{padding:20px}.prb-portal #prb-admin .prb-panel{padding:12px}}
body.prb-portal{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important}.prb-portal h1,.prb-portal h2,.prb-portal h3{font-family:inherit!important;text-transform:none!important;letter-spacing:normal!important}.prb-portal #prb-admin h2{font-size:24px!important;line-height:1.3!important;margin:0 0 18px}.prb-portal #prb-admin h3{font-size:20px!important;line-height:1.3!important}.prb-portal-header img{background:#0f4885;padding:12px;border-radius:12px}.prb-portal #prb-admin label{color:#17354c!important}
/* Reservation workspace: independent, accessible typography. */
body.prb-portal{font:16px/1.55 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;background:#f3f6fa!important;color:#17354c!important}
.prb-portal .prb-portal-shell{max-width:1320px;padding:32px 28px;margin:auto}.prb-portal .prb-portal-header{padding:0 0 24px;margin:0 0 24px}.prb-portal .prb-portal-header h1{font-size:28px!important;font-weight:700!important;line-height:1.25!important}.prb-portal .prb-portal-header p{font-size:15px;color:#455d73}.prb-portal .prb-portal-header img{width:124px;background:#0f4885;border-radius:14px;padding:14px}.prb-portal #prb-admin{max-width:none;font:16px/1.55 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important}.prb-portal #prb-admin p,.prb-portal #prb-admin label,.prb-portal #prb-admin td,.prb-portal #prb-admin th,.prb-portal #prb-admin span,.prb-portal #prb-admin small,.prb-portal #prb-admin button,.prb-portal #prb-admin input,.prb-portal #prb-admin select,.prb-portal #prb-admin textarea,.prb-login input,.prb-login label{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;letter-spacing:normal!important;text-transform:none!important}
.prb-portal #prb-admin h2{font-size:23px!important;font-weight:700!important;margin:0 0 20px!important;line-height:1.3!important}.prb-portal #prb-admin h3{font-size:17px!important;font-weight:700!important;margin:0!important}.prb-portal #prb-admin p{font-size:16px!important;line-height:1.6!important;margin:12px 0 20px}.prb-portal #prb-admin .prb-panel{padding:28px;border:1px solid #d5dfe9;box-shadow:0 3px 12px #163a6010;border-radius:16px;margin:20px 0}.prb-portal #prb-admin nav{gap:10px;margin:24px 0}.prb-portal #prb-admin nav button{padding:12px 20px;font-weight:650;font-size:16px}.prb-portal #prb-admin button{font-size:15px;line-height:1.4;min-height:44px;color:#0f4885;border:1px solid #afc1d3;background:white;border-radius:9px}.prb-portal #prb-admin button:hover{background:#eaf1f8}.prb-portal #prb-admin button[aria-pressed=true],.prb-portal #prb-admin button[type=submit],.prb-portal #prb-admin [data-status=confirmed]{background:#0f4885!important;color:white!important;border-color:#0f4885}.prb-portal #prb-admin button:focus-visible,.prb-portal input:focus-visible,.prb-portal select:focus-visible,.prb-portal a:focus-visible{outline:3px solid #4384c5;outline-offset:3px}.prb-portal #prb-admin input:not([type=checkbox]),.prb-portal #prb-admin select,.prb-portal #prb-admin textarea{font-size:16px!important;line-height:1.5;min-height:46px;padding:10px 12px;background:white;border:1px solid #9bb0c4;color:#17354c;width:100%}.prb-portal #prb-admin label{font-size:15px!important;font-weight:600;line-height:1.5;color:#17354c!important}.prb-portal #prb-admin label input,.prb-portal #prb-admin label select{margin-top:7px}.prb-portal #prb-admin .prb-row input:not([type=checkbox]){width:160px}.prb-portal #prb-admin input[type=checkbox]{accent-color:#0f4885;vertical-align:middle}.prb-portal #prb-admin th{font-size:13px;font-weight:700;color:#405b74;background:#eff4f9;padding:16px}.prb-portal #prb-admin td{font-size:16px;line-height:1.55;padding:18px 16px}.prb-portal #prb-admin td small{font-size:14px;line-height:1.5;color:#4c6277;margin-top:5px}.prb-portal #prb-admin tbody tr:hover{background:#f7faff}.prb-portal #prb-admin .prb-scroll{border:1px solid #d5dfe9;border-radius:12px}.prb-portal #prb-admin .prb-notice{border-left:4px solid #0f4885;background:#e8f0f9;padding:18px 20px;font-size:15px!important}.prb-portal #prb-admin .prb-ok{padding:12px;background:#edf7f0;border-radius:8px}.prb-portal #prb-admin .prb-ok:empty{display:none}.prb-portal #prb-admin .prb-error{padding:12px;background:#fff1ef;border-radius:8px}.prb-portal .prb-muted{color:#526980}
#prb-admin .prb-day{display:grid;grid-template-columns:120px minmax(0,1fr) minmax(0,1fr);align-items:center;gap:20px;padding:16px 0;border-bottom:1px solid #dce5ee}#prb-admin .prb-day:last-child{border-bottom:0}#prb-admin .prb-day label{margin:0}#prb-admin .prb-special{display:grid;grid-template-columns:180px minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:14px;padding:18px 0;border-bottom:1px solid #dce5ee}#prb-admin .prb-special label{margin:0}#prb-admin .prb-special button{margin-bottom:0}#prb-admin [data-add-special]{margin-top:20px}
@media(max-width:800px){.prb-portal .prb-portal-shell{padding:20px 16px}.prb-portal #prb-admin .prb-panel{padding:20px}#prb-admin .prb-special{grid-template-columns:1fr 1fr}#prb-admin .prb-day{grid-template-columns:90px minmax(0,1fr) minmax(0,1fr);gap:12px}}
@media(max-width:540px){.prb-portal .prb-portal-header{gap:16px}.prb-portal .prb-portal-header h1{font-size:23px!important}.prb-portal #prb-admin nav{display:grid;grid-template-columns:1fr 1fr}.prb-portal #prb-admin nav button:last-child{grid-column:1/-1}.prb-portal #prb-admin .prb-panel{padding:16px}.prb-portal #prb-admin h2{font-size:21px!important}#prb-admin .prb-day{grid-template-columns:1fr;gap:10px;padding:20px 0}#prb-admin .prb-special{grid-template-columns:1fr}.prb-portal #prb-admin .prb-row{align-items:stretch}}
#prb-admin .prb-day{grid-template-columns:165px minmax(0,1fr) minmax(0,1fr)}#prb-admin .prb-day-closed{display:flex;align-items:center;gap:7px;font-weight:400!important;margin-top:8px!important;font-size:14px!important}#prb-admin .prb-day-closed input{margin:0!important}#prb-admin .prb-day input:disabled{background:#edf1f5!important;color:#66798c!important;cursor:not-allowed;opacity:.8}@media(max-width:540px){#prb-admin .prb-day{grid-template-columns:1fr}}

/* Shared floor plan: identical coordinates in the editor and customer popup. */
.prb-floor-scroll{width:100%;overflow-x:auto;margin:16px 0;border:1px solid #c9d7e4;border-radius:12px;background:#f6f9fc}
.prb-floor{position:relative;width:100%;min-width:640px;aspect-ratio:1/1;background-image:linear-gradient(#dbe5ef55 1px,transparent 1px),linear-gradient(90deg,#dbe5ef55 1px,transparent 1px);background-size:5% 5%}
#prb-admin .prb-floor-table,.prb-dialog button.prb-floor-table{position:absolute;width:var(--table-w,12%);height:var(--table-h,9%);min-height:44px;padding:4px;border:2px solid #7d9bb7;border-radius:10px;background:#eaf0f8;color:#17354c;transform:translate(-50%,-50%) rotate(var(--angle));display:flex;align-items:center;justify-content:center;font:600 13px/1.2 system-ui,sans-serif;cursor:pointer}
.prb-floor-table span{display:block;transform:rotate(calc(-1 * var(--angle)));pointer-events:none}.prb-floor-table small{display:block;font-size:11px;margin-top:3px}.prb-floor-table:focus-visible{outline:3px solid #e2544b;outline-offset:3px}#prb-admin .prb-floor-table{touch-action:none;cursor:grab}#prb-admin .prb-floor-table:active{cursor:grabbing}.prb-dialog button.prb-floor-table[aria-pressed=true]{background:#0f4885;color:white;border-color:#0f4885}.prb-map-hint{font-size:13px}

#prb-admin .prb-day-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}#prb-admin .prb-day-metrics>div,#prb-admin .prb-day-metrics>button{display:flex;flex-direction:column;align-items:flex-start;gap:6px;background:#fff;color:#0f4885;border:1px solid #d8e3ed;border-radius:14px;padding:18px;text-align:left;margin:0}#prb-admin .prb-day-metrics strong{font-size:28px;line-height:1.2}#prb-admin .prb-day-metrics span{font-size:14px;line-height:1.4}#prb-admin .prb-day-metrics>button{color:#536578}@media(max-width:480px){#prb-admin .prb-day-metrics{gap:6px}#prb-admin .prb-day-metrics>div,#prb-admin .prb-day-metrics>button{padding:12px 8px}}
