.rsb,.rsb-admin{--ink:#243c35;--paper:#faf8f1;--line:#d4dacf;--orange:#b9502d;color:var(--ink);font-family:system-ui,-apple-system,sans-serif;line-height:1.6}.rsb{max-width:720px;margin:24px auto;background:var(--paper);padding:clamp(22px,5vw,50px);border:1px solid var(--line);border-radius:20px;box-sizing:border-box}.rsb h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(30px,5vw,46px);line-height:1.12;margin:12px 0 20px;color:var(--ink)}.rsb-eyebrow{font-size:12px!important;font-weight:700;letter-spacing:.16em}.rsb form label{display:block;font-size:14px;font-weight:600;margin:14px 0}.rsb input:not([type=checkbox]),.rsb select{display:block!important;width:100%;box-sizing:border-box;min-height:48px;margin-top:7px;padding:10px 12px!important;border:1px solid #87998b!important;border-radius:7px;background:#fff!important;color:#243c35!important;font:inherit!important}.rsb-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:14px}.rsb-two{grid-template-columns:1fr 1fr}.rsb .rsb-check{display:flex;gap:10px;align-items:flex-start;font-weight:400}.rsb-check input{margin:5px 0;min-width:18px;min-height:18px}.rsb button{background:#243c35!important;color:white!important;border:0!important;border-radius:7px!important;padding:15px 24px!important;font:600 16px system-ui!important;cursor:pointer;width:100%}.rsb button:disabled{opacity:.5;cursor:wait}.rsb a{color:#86402a;text-decoration:underline}.rsb-result{font-size:14px;min-height:24px}.rsb-success,.rsb-notice{background:#e5eddf;padding:16px;border-radius:8px}.rsb-foot{border-top:1px solid var(--line);padding-top:20px;font-size:13px}.rsb-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.rsb input:focus-visible,.rsb select:focus-visible,.rsb button:focus-visible{outline:3px solid #b9502d!important;outline-offset:3px}.rsb-admin{max-width:1200px}.rsb-admin h1{font-size:32px}.rsb-admin h2{margin-top:32px}.rsb-table{overflow-x:auto;margin-top:16px}.rsb-table th,.rsb-table td{padding:16px!important;vertical-align:top!important}.rsb-action{display:inline-block;margin:3px!important}.rsb-status{display:inline-block;border-radius:30px;padding:3px 10px;background:#ece7d4}.rsb-status.confirmed{background:#dcebd9}.rsb-status.cancelled,.rsb-status.declined{background:#f1dfda}.rsb-settings{background:#fff;border:1px solid #d4dacf;padding:20px;margin:24px 0}.rsb-settings summary{font-size:18px;font-weight:600;cursor:pointer}@media(max-width:600px){.rsb-grid,.rsb-two{grid-template-columns:1fr}.rsb form label{margin:8px 0}.rsb{margin:12px auto}}

/* Phone layout: each reservation becomes a card with full-width actions. */
@media(max-width:782px){
.rsb-admin{max-width:100%;overflow-wrap:anywhere}
.rsb-admin .rsb-table{overflow:visible}
.rsb-admin .rsb-booking-list,.rsb-booking-list tbody,.rsb-booking-list tr,.rsb-booking-list td{display:block;width:100%;box-sizing:border-box}
.rsb-booking-list thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.rsb-admin .rsb-booking-list{border:0;background:transparent}
.rsb-booking-list tr{margin:0 0 18px;background:white!important;border:1px solid #d4dacf;border-radius:12px;overflow:hidden}
.rsb-admin .rsb-booking-list td{padding:12px 16px!important;border:0!important;background:transparent!important}
.rsb-booking-list td:nth-child(1)::before{content:'Tid och sällskap'}
.rsb-booking-list td:nth-child(2)::before{content:'Gäst'}
.rsb-booking-list td:nth-child(3)::before{content:'Status'}
.rsb-booking-list td:nth-child(4)::before{content:'Åtgärd'}
.rsb-booking-list td[colspan]::before{content:none}
.rsb-booking-list td::before{display:block;font-size:12px;font-weight:700;letter-spacing:.04em;color:#596b62;margin-bottom:5px}
.rsb-booking-list td:empty{display:none}
.rsb-admin .rsb-action{display:block;margin:7px 0!important}
.rsb-admin .rsb-action .button{display:block;width:100%;min-height:48px;white-space:normal;font-size:16px;line-height:1.4;padding:12px}
.rsb-admin input,.rsb-admin select{max-width:100%;box-sizing:border-box;min-height:44px}
.rsb-admin .rsb-settings{padding:14px}
.rsb-admin table:not(.rsb-booking-list){table-layout:fixed;width:100%;font-size:12px}
.rsb-admin table:not(.rsb-booking-list) th,.rsb-admin table:not(.rsb-booking-list) td{padding:5px!important;overflow-wrap:anywhere}
}
.rsb-app-toolbar{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}
.rsb-app-toolbar .button{min-height:44px;padding:6px 14px;display:inline-flex;align-items:center}
.rsb-app-install{background:#fff;border:1px solid #d4dacf;border-radius:12px;padding:16px;margin:16px 0}
.rsb-app-install summary{font-size:16px;font-weight:600;cursor:pointer}
.rsb-network{background:#fff0d1;border:2px solid #b9502d;padding:16px;border-radius:8px;font-weight:600}
.rsb-admin [hidden]{display:none!important}
.rsb-standalone #adminmenumain,.rsb-standalone #wpadminbar,.rsb-standalone #wpfooter{display:none!important}
.rsb-standalone #wpcontent,.rsb-standalone #wpfooter{margin-left:0!important}
.rsb-standalone #wpcontent{padding:env(safe-area-inset-top) 16px env(safe-area-inset-bottom)!important}
.rsb-standalone #wpbody{padding-top:0!important}
@media(display-mode:standalone){html:has(body.rsb-staff-screen){margin-top:0!important}}
