/* 0.9.3 merchant workbench. Loaded after the existing feature styles; no guest/admin selectors. */
.svp-portal,.svp-portal *,.svp-portal *::before,.svp-portal *::after,
body.svp-standalone-body .svp-app-frame,body.svp-standalone-body .svp-app-topbar { box-sizing:border-box; }
.svp-portal {
 --svp-accent:#285da9; --svp-accent-dark:#204c8a; --svp-border:#dfe6ee;
 --svp-muted:#66758a; --svp-text:#25344b; --svp-surface:#fff; --svp-soft:#f2f5f9;
 color:#25344b; font-size:14px; line-height:1.6;
}
body.svp-standalone-body { background:#f2f5f9!important; color:#25344b; }
body.svp-standalone-body .svp-app-frame { width:100%; min-width:0; margin:0; }
body.svp-standalone-body .svp-app-topbar { background:#fff; color:#25344b; border-bottom:1px solid #dfe6ee; min-height:76px; padding:12px max(24px,calc((100% - 1392px)/2)); gap:20px; }
body.svp-standalone-body .svp-app-brand { color:#25344b!important; min-width:0; }
body.svp-standalone-body .svp-app-brand__mark { width:40px; height:40px; flex:0 0 40px; border-radius:8px; background:#285da9; color:#fff; }
body.svp-standalone-body .svp-app-brand strong { font-size:18px; font-weight:700; line-height:1.35; overflow-wrap:anywhere; }
body.svp-standalone-body .svp-app-brand small { font-size:12px; letter-spacing:0; text-transform:none; color:#66758a; margin-top:3px; }
body.svp-standalone-body .svp-app-topbar__actions { flex-wrap:wrap; flex-shrink:1; justify-content:flex-end; gap:8px; font-size:14px; }
body.svp-standalone-body .svp-app-topbar__actions a,
body.svp-standalone-body .svp-language-switcher select,
body.svp-standalone-body .svp-language-switcher button { display:inline-flex; align-items:center; justify-content:center; gap:7px; min-height:44px; border:1px solid #dfe6ee; border-radius:7px; background:#fff; padding:9px 12px; color:#25344b!important; font:inherit; box-sizing:border-box; text-decoration:none; }
body.svp-standalone-body .svp-language-switcher select { min-width:96px; padding-right:28px; }
body.svp-standalone-body .svp-app-topbar__actions a:hover,
body.svp-standalone-body .svp-language-switcher button:hover { border-color:#94b2dc; background:#f2f6fc; }
body.svp-standalone-body .svp-app-main > .svp-portal { --svp-accent:#285da9; --svp-accent-dark:#204c8a; --svp-border:#dfe6ee; max-width:1440px; width:100%; margin:0 auto!important; padding:24px 24px 36px; }
body.svp-standalone-body .svp-portal__header { align-items:center; flex-direction:row; flex-wrap:wrap; gap:14px; padding:0; border:0; margin-bottom:22px; }
body.svp-standalone-body .svp-merchant-identity { min-width:0; flex:1 1 360px; gap:12px; }
body.svp-standalone-body .svp-merchant-identity__text { min-width:0; }
body.svp-standalone-body .svp-merchant-avatar { width:46px; height:46px; flex:0 0 46px; font-size:20px; background:#e5edf9; color:#285da9; }
body.svp-standalone-body .svp-merchant-identity h2 { font-size:21px; line-height:1.4; margin:0; overflow-wrap:anywhere; }
body.svp-standalone-body .svp-merchant-identity p { color:#66758a; font-size:12px; margin:4px 0 0; overflow-wrap:anywhere; }
body.svp-standalone-body .svp-portal__header > .svp-button { min-height:44px; font-size:14px; padding:9px 14px; border-radius:7px; }
body.svp-standalone-body .svp-dashboard-shell { display:grid; grid-template-columns:220px minmax(0,1fr); gap:24px; align-items:start; }
body.svp-standalone-body .svp-dashboard-content { min-width:0; }
body.svp-standalone-body .svp-dashboard-nav { position:sticky; top:20px; background:#1c2c43; color:#fff; border:0; border-radius:9px; overflow:hidden; padding:10px 0 0; }
body.svp-standalone-body .svp-dashboard-nav__group + .svp-dashboard-nav__group { border-top:1px solid #36465c; margin-top:8px; padding-top:8px; }
body.svp-standalone-body .svp-dashboard-nav__group-title { color:#fff!important; font-size:12px; font-weight:700; letter-spacing:.035em; margin:0; padding:10px 18px 6px; line-height:1.5; }
body.svp-standalone-body .svp-dashboard-nav nav { display:grid; gap:3px; padding:0 8px 8px; }
body.svp-standalone-body .svp-dashboard-nav nav a { display:flex; align-items:center; gap:11px; min-height:44px; padding:10px; color:#eaf0f8!important; font-size:14px; font-weight:500; line-height:1.45; border-radius:6px; text-decoration:none; }
body.svp-standalone-body .svp-dashboard-nav nav a span { width:auto; flex:1 1 auto; min-width:0; font-size:14px; text-align:left; overflow-wrap:anywhere; }
body.svp-standalone-body .svp-dashboard-nav nav a:hover,
body.svp-standalone-body .svp-dashboard-nav nav a:focus-visible { background:#304562; color:#fff!important; }
body.svp-standalone-body .svp-dashboard-nav nav a.is-active { background:#285da9; color:#fff!important; font-weight:700; }
body.svp-standalone-body .svp-dashboard-nav__logout { display:flex; align-items:center; gap:11px; border-top:1px solid #36465c; color:#d9e3f1!important; min-height:48px; font-size:14px; padding:12px 18px; margin:0; text-decoration:none; }
.svp-portal .svp-workbench-icon,
body.svp-standalone-body .svp-workbench-icon { width:22px; height:22px; flex:0 0 22px; vertical-align:middle; }
/* Header identity badge only; existing merchant name flex-wrap handles narrow screens. */
.svp-portal .svp-merchant-name .svp-header-verification { display:inline-flex; align-items:center; flex:0 1 auto; max-width:100%; min-height:32px; padding:4px 10px; border:1px solid #d8e2ed; border-radius:999px; background:#edf2f8; color:#485c73; font-size:12px; font-weight:600; line-height:1.4; white-space:normal; overflow-wrap:anywhere; text-decoration:none; }
.svp-portal .svp-merchant-name .svp-header-verification--pending,
.svp-portal .svp-merchant-name .svp-header-verification--supplement { border-color:#edd19a; background:#fff4df; color:#8a4b0f; }
.svp-portal .svp-merchant-name .svp-header-verification--verified { border-color:#b9d9c3; background:#e8f4eb; color:#28633d; }
.svp-portal .svp-merchant-name .svp-header-verification:hover { text-decoration:underline; }
.svp-portal .svp-merchant-name .svp-header-verification:focus-visible { outline:2px solid #285da9; outline-offset:3px; }
.svp-portal .svp-mobile-nav { display:none; }
.svp-portal .svp-console-heading { align-items:center; margin-bottom:18px; }
.svp-portal .svp-console-heading h3 { font-size:26px; line-height:1.3; margin-bottom:6px; }
.svp-portal .svp-console-heading p { color:#66758a; font-size:14px; margin:0; }
.svp-portal .svp-card { border-radius:9px; box-shadow:none; padding:20px; margin-bottom:18px; }
.svp-portal .svp-card-heading { margin-bottom:16px; }
.svp-portal .svp-stat-grid { gap:16px; margin-bottom:18px; }
.svp-portal .svp-stat { padding:17px 20px; border-radius:9px; box-shadow:none; }
.svp-portal .svp-stat strong { color:#25344b; font-size:28px; line-height:1.3; }
.svp-portal .svp-stat span { color:#66758a; font-size:13px; }
.svp-portal .svp-dashboard-quota { border-radius:9px; padding:20px 24px; margin-bottom:18px; }
.svp-portal .svp-dashboard-quota__heading h4 { font-size:18px; }
.svp-portal .svp-dashboard-quota__figures { margin:18px 0; gap:20px; }
.svp-portal .svp-dashboard-quota__figures dt { font-size:14px; }
.svp-portal .svp-dashboard-quota__figures dd { margin-top:8px; }
.svp-portal .svp-dashboard-quota__number { font-size:32px; color:#25344b; }
.svp-portal .svp-dashboard-quota__footer { padding-top:16px; }
.svp-portal .svp-dashboard-quota__link { background:#285da9; border-color:#285da9; border-radius:7px; min-height:44px; font-size:14px; padding:10px 16px; }
.svp-portal .svp-dashboard-quota__link:hover { background:#204c8a; border-color:#204c8a; }
.svp-portal .svp-profile-complete { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px 18px; padding:12px 18px; margin-bottom:18px; background:#fff; border:1px solid #dfe6ee; border-radius:8px; font-size:13px; }
.svp-portal .svp-profile-complete strong { color:#42644e; font-weight:600; }
.svp-portal .svp-profile-complete a { display:inline-flex; align-items:center; min-height:32px; color:#285da9; }
.svp-portal .svp-progress span { background:#285da9; }
.svp-portal .svp-settings-form { max-width:800px; }
.svp-portal .svp-field-grid { gap:14px 18px; }
.svp-portal label { font-size:14px; gap:6px; margin-bottom:14px; }
.svp-portal input[type=text],.svp-portal input[type=email],.svp-portal input[type=password],
.svp-portal input[type=number],.svp-portal input[type=date],.svp-portal input[type=file],
.svp-portal select,.svp-portal textarea { color:#25344b; border-color:#cbd5e1; border-radius:7px; font-size:14px; min-height:44px; padding:10px 12px; }
.svp-portal input:focus,.svp-portal select:focus,.svp-portal textarea:focus { border-color:#285da9; box-shadow:0 0 0 3px #285da919; }
.svp-portal :is(a,button,input,select,textarea,summary):focus-visible { outline:2px solid #285da9; outline-offset:3px; }
.svp-portal .svp-button { min-height:44px; border-radius:7px; padding:10px 16px; font-size:14px; }
.svp-portal .svp-notice { padding:12px 16px; margin-bottom:18px; font-size:14px; }
.svp-portal .svp-property-list { --svp-accent:#285da9; --svp-border:#dfe6ee; --svp-text:#25344b; }
.svp-portal .svp-property-card { border-radius:9px; padding:20px; }
.svp-portal .svp-property-list .svp-property-card-heading h4 { font-size:18px; line-height:1.5; }
.svp-portal .svp-property-list .svp-property-card-meta { margin:14px 0; gap:12px 30px; }
.svp-portal .svp-property-list .svp-property-card-actions { padding-top:14px; gap:8px; }
.svp-portal .svp-property-list .svp-list-action { border-radius:7px; min-height:44px; height:auto; padding:10px 14px; white-space:normal; }
.svp-portal .svp-property-list .svp-listing-confirm { background:#f3f6fb; border-color:#c9d7e9; }
.svp-portal .svp-workbench-property-links { display:flex; flex-wrap:wrap; gap:8px; }
.svp-portal .svp-plan-current-card,.svp-portal .svp-plan-benefits,.svp-portal .svp-quota-help { padding:20px; border-radius:9px; margin-bottom:18px; }
.svp-portal .svp-plan-current-card h3,.svp-portal .svp-plan-benefits h3,.svp-portal .svp-quota-help h3 { font-size:18px; }
.svp-portal .svp-tier-current { color:#285da9; }
.svp-portal .svp-more-menu { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.svp-portal .svp-more-menu a { display:flex; align-items:center; gap:14px; min-height:64px; padding:18px; color:#25344b; font-size:15px; font-weight:600; border:1px solid #dfe6ee; border-radius:8px; background:#fff; text-decoration:none; }
.svp-portal .svp-more-menu a:hover { background:#edf3fb; border-color:#94b2dc; }
/* Keep all nine steps and existing validation/media handlers in their focus layout. */
body.svp-standalone-body.svp-wizard-page .svp-app-main > .svp-portal { max-width:1120px; padding:22px 24px 30px; }
.svp-portal .svp-property-wizard,.svp-portal .svp-property-detail { --svp-w-red:#285da9; --svp-w-text:#25344b; --svp-w-muted:#66758a; --svp-w-border:#dfe6ee; color:#25344b; font-size:14px; }
.svp-portal .svp-property-wizard { border:1px solid #dfe6ee; border-radius:9px; overflow:clip; background:#fff; }
.svp-portal .svp-w-stages { padding:24px 30px 0; gap:18px; font-size:13px; }
.svp-portal .svp-property-wizard .svp-w-stages .is-complete:not(.is-active) .svp-w-stage-line { background:#a9c1e1; }
.svp-portal .svp-w-main { max-width:848px; padding:26px 24px 28px; }
.svp-portal .svp-property-wizard h1 { font-size:27px; line-height:1.35; }
.svp-portal .svp-property-wizard h2 { font-size:19px; margin:22px 0 12px; }
.svp-portal .svp-w-intro { font-size:14px; margin:10px 0 22px; }
.svp-portal .svp-w-meta { margin-bottom:16px; }
.svp-portal .svp-w-grid { gap:14px 18px; margin-bottom:16px; }
.svp-portal .svp-property-wizard .svp-w-field { margin-bottom:16px; }
.svp-portal .svp-property-wizard .svp-w-field input,.svp-portal .svp-property-wizard .svp-w-field select,.svp-portal .svp-property-wizard .svp-w-field textarea,.svp-portal .svp-property-wizard .svp-w-step-picker select { border-color:#cbd5e1; border-radius:7px; }
.svp-portal .svp-property-wizard :is(button,summary,select,input,textarea):focus-visible { outline-color:#285da9; }
body.svp-standalone-body .svp-wizard-exit { border-color:#dfe6ee; border-radius:7px; color:#25344b!important; }
body.svp-standalone-body .svp-wizard-exit:hover { border-color:#285da9; }
.svp-portal .svp-w-choice-body { border-radius:8px; padding:17px; min-height:88px; }
.svp-portal .svp-w-choice-body strong { font-size:16px; }
.svp-portal .svp-w-choice input:checked + .svp-w-choice-body { background:#edf3fb; }
.svp-portal .svp-w-amenities { gap:10px; margin:12px 0 22px; }
.svp-portal .svp-property-wizard .svp-w-button { border-radius:7px; min-height:44px; font-size:14px; padding:10px 16px; }
.svp-portal .svp-property-wizard .svp-w-button:hover:not(:disabled) { background:#204c8a; }
.svp-portal .svp-property-wizard .svp-w-button--outline:hover:not(:disabled) { background:#f2f5f9; }
.svp-portal .svp-property-wizard .svp-w-button--text:hover:not(:disabled) { background:transparent; }
.svp-portal .svp-w-footer { padding:16px 24px calc(20px + env(safe-area-inset-bottom)); }
/* Native state colors remain meaningful: blue changes selection borders, never occupancy fills. */
.svp-portal .svp-calendar { --cal-wine:#285da9; --cal-ink:#25344b; --cal-muted:#66758a; --cal-line:#dfe6ee; --cal-soft:#f2f5f9; }
.svp-portal .svp-calendar h2 { font-size:26px; }
.svp-portal .svp-calendar-workspace { padding:18px; border-radius:9px; }
.svp-portal .svp-calendar-room.is-current { background:#edf3fb; }
.svp-portal .svp-calendar-operation-workspace { background:#f8fafd; border-color:#cad8ea; border-radius:8px; }
.svp-portal .svp-calendar-tabs { flex-wrap:wrap; margin:0 0 16px; gap:6px; }
.svp-portal .svp-calendar-tabs a { display:inline-flex; align-items:center; min-height:44px; padding:9px 16px; border-color:#dfe6ee; color:#52637a; }
.svp-portal .svp-calendar-tabs a[aria-current=page] { color:#285da9; background:#e8effb; border-color:#afc4e3; }
.svp-portal .svp-orders { --orders-text:#25344b; --orders-muted:#66758a; --orders-border:#dfe6ee; --orders-accent:#285da9; --orders-soft:#f8fafd; }
.svp-portal .svp-orders h1 { font-size:26px; }
.svp-portal .svp-orders__eyebrow { color:#66758a; }
.svp-portal .svp-orders__scope { border-left-color:#aec5e6; }
.svp-portal .svp-orders__filters,.svp-portal .svp-orders__table,.svp-portal .svp-orders__card,.svp-portal .svp-orders__row { border-radius:8px; }
.svp-portal .svp-orders__table-head { background:#f7f9fc; color:#66758a; }
.svp-portal .svp-orders__row:hover { background:#f8fafd; }
.svp-portal .svp-orders__order-link { color:#25344b; }
.svp-portal .svp-orders__button--primary:hover { background:#204c8a; border-color:#204c8a; }
.svp-portal .svp-orders__count { background:#eaf0f8; color:#52637a; }
.svp-portal .svp-orders__room-disclosure summary { color:#285da9; }
.svp-portal .svp-order-button { background:#285da9; border-color:#285da9; }
.svp-portal .svp-orders__card { background:#fff; }
body.svp-standalone-body .svp-app-footer { padding:16px 24px; background:#f2f5f9; border-color:#dfe6ee; color:#66758a; font-size:12px; }
@media(min-width:801px) and (max-width:1100px) {
 body.svp-standalone-body .svp-dashboard-shell { grid-template-columns:190px minmax(0,1fr); gap:18px; }
 body.svp-standalone-body .svp-dashboard-nav nav { display:grid; }
 body.svp-standalone-body .svp-dashboard-nav__logout { display:flex; }
 body.svp-standalone-body .svp-app-topbar { padding:12px 20px; }
 .svp-portal .svp-property-card,.svp-portal .svp-card { padding:18px; }
 .svp-portal .svp-orders__table-head,.svp-portal .svp-orders__row { gap:8px; padding-left:12px; padding-right:12px; }
}
@media(max-width:800px) {
 body.svp-standalone-body .svp-app-topbar { padding:12px 16px; gap:10px 16px; flex-wrap:wrap; min-height:72px; }
 body.svp-standalone-body .svp-app-brand { flex:1 1 auto; }
 body.svp-standalone-body .svp-app-brand strong { font-size:16px; }
 body.svp-standalone-body .svp-app-topbar__actions { gap:6px; }
 body.svp-standalone-body .svp-app-topbar__actions .svp-workbench-public { display:none; }
 body.svp-standalone-body .svp-app-main > .svp-portal { padding:18px 16px 24px; }
 body.svp-standalone-body .svp-dashboard-shell { grid-template-columns:minmax(0,1fr); gap:0; }
 body.svp-standalone-body .svp-dashboard-nav { display:none; }
 body.svp-standalone-body .svp-portal__header { margin-bottom:18px; gap:12px; }
 body.svp-standalone-body .svp-merchant-identity { flex-basis:240px; }
 body.svp-standalone-body .svp-merchant-identity h2 { font-size:18px; }
 body.svp-standalone-body .svp-merchant-avatar { width:40px; height:40px; flex-basis:40px; font-size:18px; }
 body.svp-standalone-body:has(.svp-mobile-nav) .svp-app-frame { padding-bottom:calc(72px + env(safe-area-inset-bottom)); }
 .svp-portal .svp-mobile-nav { position:fixed; left:0; right:0; bottom:0; z-index:1000; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); background:#fff; border-top:1px solid #dfe6ee; box-shadow:0 -2px 10px #1c2c4308; padding:5px 8px calc(5px + env(safe-area-inset-bottom)); }
 .svp-portal .svp-mobile-nav a { min-width:0; min-height:56px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:3px; padding:5px 2px; border-radius:7px; color:#66758a; font-size:11px; line-height:1.3; text-decoration:none; text-align:center; }
 .svp-portal .svp-mobile-nav a[aria-current=page] { background:#edf3fb; color:#285da9; font-weight:700; }
 body.svp-workbench-keyboard .svp-mobile-nav { display:none; }
 .svp-portal .svp-console-heading h3,.svp-portal .svp-orders h1 { font-size:24px; }
 .svp-portal .svp-stat-grid { gap:10px; }
 .svp-portal .svp-stat { padding:14px; }
 .svp-portal .svp-stat strong { font-size:25px; }
 .svp-portal .svp-dashboard-quota { padding:18px; }
 .svp-portal .svp-dashboard-quota__figures { gap:12px; margin:18px 0; }
 .svp-portal .svp-dashboard-quota__figures dt { font-size:12px; }
 .svp-portal .svp-dashboard-quota__number { font-size:28px; }
 .svp-portal .svp-card,.svp-portal .svp-property-card { padding:16px; }
 .svp-portal .svp-more-menu { grid-template-columns:1fr; gap:10px; }
 .svp-portal .svp-more-menu a { min-height:60px; padding:14px 16px; }
 .svp-portal .svp-property-list .svp-property-card-actions { gap:8px; }
 .svp-portal .svp-property-list .svp-list-action { padding:10px 12px; font-size:14px; }
 .svp-portal .svp-calendar-workspace { padding:14px; }
 .svp-portal .svp-ical-message { bottom:calc(80px + env(safe-area-inset-bottom)); }
 body.svp-standalone-body.svp-wizard-page .svp-app-main > .svp-portal { padding:14px 12px 20px; }
 .svp-portal .svp-w-stages { padding:18px 16px 0; gap:10px; font-size:12px; }
 .svp-portal .svp-w-main { padding:20px 16px; }
 .svp-portal .svp-property-wizard h1 { font-size:24px; }
 .svp-portal .svp-w-footer { padding:14px 16px calc(20px + env(safe-area-inset-bottom)); }
 body.svp-standalone-body .svp-app-footer { padding:14px 16px; gap:8px; flex-wrap:wrap; }
}
@media(max-width:520px) {
 body.svp-standalone-body .svp-app-brand { flex:1 1 100%; }
 body.svp-standalone-body .svp-app-topbar__actions { width:100%; justify-content:flex-start; flex-direction:row; }
 body.svp-standalone-body .svp-language-switcher { flex:1 1 180px; width:auto; min-width:0; }
 body.svp-standalone-body .svp-language-switcher select { width:auto; min-width:80px; }
 body.svp-standalone-body .svp-app-brand__mark { width:36px; height:36px; flex-basis:36px; }
 body.svp-standalone-body .svp-app-topbar__actions a { width:auto; font-size:13px; padding:9px 11px; }
 body.svp-standalone-body .svp-portal__header > .svp-button { display:none; }
 .svp-portal .svp-dashboard-quota__heading h4 { font-size:16px; }
 .svp-portal .svp-console-heading { flex-direction:row; align-items:flex-start; gap:12px; }
 .svp-portal .svp-console-heading > div { min-width:0; }
 .svp-portal .svp-console-heading > .svp-button { flex:0 0 auto; }
 .svp-portal .svp-dashboard-quota__figures { grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
 .svp-portal .svp-dashboard-quota__figures > div { display:block; }
 .svp-portal .svp-dashboard-quota__figures dd { justify-content:flex-start; }
 .svp-portal .svp-dashboard-quota__figures dt { min-height:36px; }
 .svp-portal .svp-dashboard-quota__figures dd { margin-top:5px; }
 .svp-portal .svp-dashboard-quota__footer { gap:12px; }
 .svp-portal .svp-dashboard-quota__link { width:100%; }
 .svp-portal .svp-stat-grid--summary { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .svp-portal .svp-stat { padding:12px 10px; }
 .svp-portal .svp-stat strong { font-size:23px; }
 .svp-portal .svp-stat span { font-size:12px; }
 .svp-portal .svp-field-grid { grid-template-columns:1fr; }
 .svp-portal .svp-profile-complete { padding:10px 14px; }
 .svp-portal input[type=text],.svp-portal input[type=email],.svp-portal input[type=password],.svp-portal input[type=number],.svp-portal input[type=date],.svp-portal select,.svp-portal textarea { font-size:16px; }
}
