/* Cyber Clinic 0.9.160 — scoped, compact panel navigation.
 * Only the sidebar's repeated branding is hidden; site headers, reports and
 * consent documents retain their own logos. No external assets are required.
 */
.cnb-app{container-name:cnb-panel}
.cnb-app .cnb-mobile-panel-toggle,.cnb-app .cnb-mobile-booking-header{display:none}

/* Viewport fallback for compact phones and older container-query engines. */
@media screen and (max-width:700px){
 .cnb-app .cnb-shell{display:block;min-height:0;border-radius:18px}
 .cnb-app .cnb-shell>.cnb-sidebar{padding:12px;border-inline-end:0;border-bottom:1px solid var(--cnb-line);border-radius:18px 18px 0 0;min-width:0}
 .cnb-app .cnb-shell>.cnb-sidebar>.cnb-logo,
 .cnb-app .cnb-shell>.cnb-sidebar>.cnb-sidebar-foot{display:none!important}
 .cnb-app .cnb-mobile-panel-toggle{display:flex;align-items:center;gap:10px;width:100%;min-height:48px;margin:0;padding:9px 12px;direction:rtl;text-align:right;line-height:1.8;border:1px solid var(--cnb-line);border-radius:12px;background:var(--cnb-card);color:var(--cnb-ink);scroll-margin-block-start:120px}
 .cnb-app .cnb-mobile-panel-toggle:hover{background:var(--cnb-bg);color:var(--cnb-ink);border-color:var(--cnb-teal)}
 .cnb-app .cnb-mobile-menu-label{font-size:11px;color:var(--cnb-muted);flex-shrink:0}
 .cnb-app .cnb-mobile-panel-toggle>strong{flex:1;min-width:0;font-size:14px;color:var(--cnb-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 .cnb-app .cnb-mobile-chevron{display:block;width:8px;height:8px;border:solid var(--cnb-teal);border-width:0 2px 2px 0;transform:rotate(45deg);margin:0 3px 4px;flex-shrink:0}
 .cnb-app .cnb-mobile-panel-toggle[aria-expanded=true]>.cnb-mobile-chevron{transform:rotate(225deg);margin-bottom:0}
 .cnb-app .cnb-shell>.cnb-sidebar>.cnb-panel-navigation{display:none;position:static;margin:0;padding:0;min-width:0;overflow:visible}
 .cnb-app .cnb-shell>.cnb-sidebar>.cnb-panel-navigation.cnb-panel-menu-open{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:10px 0 0;padding:4px;max-height:380px;max-height:min(56dvh,420px);overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;scrollbar-width:thin}
 .cnb-app .cnb-sidebar nav.cnb-panel-menu-open>button{min-width:0;min-height:46px;margin:0;padding:8px 10px;white-space:normal;overflow-wrap:anywhere;align-items:center;justify-content:center;text-align:center;line-height:1.8;font-size:13px;border-color:var(--cnb-line)}
 .cnb-app .cnb-sidebar nav.cnb-panel-menu-open>button>span:last-child{display:none}
 .cnb-app .cnb-main>.cnb-top{min-height:58px;height:auto;flex-wrap:wrap;gap:8px;padding:10px 12px}
 .cnb-app .cnb-top>.cnb-top-navigation{flex:0 0 auto;gap:0}
 .cnb-app .cnb-top>.cnb-top-navigation>span{display:none}
 .cnb-app .cnb-top>.cnb-top-account{flex:1 1 160px;min-width:0;gap:8px;justify-content:flex-end;flex-wrap:wrap}
 .cnb-app .cnb-top .cnb-account-name{flex:1 1 70px;min-width:0;max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.8;text-align:end}
 .cnb-app .cnb-top .cnb-btn{min-height:42px;padding:7px 11px;font-size:12px;flex-shrink:0}
 .cnb-app .cnb-top .cnb-work-panel-switch{max-width:100%;white-space:normal}
 .cnb-app .cnb-content{padding:18px 12px}
 .cnb-app .cnb-heading{gap:10px;margin-bottom:16px}
 .cnb-app .cnb-heading h2{font-size:20px;overflow-wrap:anywhere}
 .cnb-app .cnb-panel,.cnb-app .cnb-booking{padding:16px}
 .cnb-app.cnb-staff-entry .cnb-content{padding:0}
 .cnb-app.cnb-staff-entry .cnb-shell>.cnb-sidebar{display:none}
 .cnb-app.cnb-reserving .cnb-shell>.cnb-sidebar>.cnb-mobile-panel-toggle{display:none}
 .cnb-app.cnb-reserving .cnb-shell>.cnb-sidebar>nav.cnb-booking-navigation{display:block;position:static;overflow:visible;margin:0;padding:0;max-height:none}
 .cnb-app .cnb-mobile-booking-header{display:block;color:var(--cnb-nav-text,var(--cnb-ink))}
 .cnb-app .cnb-mobile-step-row{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}
 .cnb-app .cnb-mobile-step-title{display:flex;flex-direction:column;gap:1px;flex:1;min-width:0;line-height:1.7;scroll-margin-block-start:120px}
 .cnb-app .cnb-mobile-step-title>span{font-size:11px;color:var(--cnb-nav-text,var(--cnb-ink))}
 .cnb-app .cnb-mobile-step-title>strong{font-size:16px;line-height:1.8;overflow-wrap:anywhere;color:var(--cnb-nav-text,var(--cnb-ink))}
 .cnb-app .cnb-mobile-step-title:focus{outline:none}
 .cnb-app .cnb-mobile-step-title:focus-visible{outline:2px solid var(--cnb-gold);outline-offset:3px;border-radius:4px}
 .cnb-app .cnb-mobile-step-row .cnb-steps-toggle{min-height:44px;flex:0 0 auto;padding:7px 12px;font-size:12px;line-height:1.7;white-space:nowrap;background:var(--cnb-card);color:var(--cnb-teal);border-color:var(--cnb-line);border-radius:10px;box-shadow:none}
 .cnb-app.cnb-reserving .cnb-sidebar nav .cnb-steps-toggle:is(:hover,:focus,:focus-visible){background:var(--cnb-active);color:var(--cnb-active-text,#fff)!important;border-color:var(--cnb-active)}
 .cnb-app .cnb-mobile-progress{height:5px;background:var(--cnb-line);border-radius:8px;overflow:hidden;margin-top:12px;direction:rtl}
 .cnb-app .cnb-mobile-progress>span{display:block;height:100%;background:var(--cnb-teal);border-radius:8px;max-width:100%}
 .cnb-app .cnb-mobile-step-hint{margin:2px 0 0;color:var(--cnb-nav-text,var(--cnb-ink));font-size:11px;line-height:1.8}
 .cnb-app.cnb-reserving .cnb-booking-navigation>.cnb-booking-progress,
 .cnb-app.cnb-reserving .cnb-booking-navigation>.cnb-booking-return{display:none}
 .cnb-app.cnb-reserving .cnb-booking-navigation.cnb-steps-open>.cnb-booking-progress{display:grid;width:100%;gap:3px;margin:12px 0 0;padding:10px 0 0;border-top:1px solid var(--cnb-line)}
 .cnb-app.cnb-reserving .cnb-booking-navigation.cnb-steps-open>.cnb-booking-progress>li{min-width:0;min-height:44px;font-size:13px;padding:4px 8px;border-radius:8px;line-height:1.8;gap:9px}
 .cnb-app.cnb-reserving .cnb-booking-navigation.cnb-steps-open>.cnb-booking-progress>li.current{background:var(--cnb-card);color:var(--cnb-ink);box-shadow:inset -3px 0 var(--cnb-gold)}
 .cnb-app.cnb-reserving .cnb-booking-navigation.cnb-steps-open>.cnb-booking-progress>li>span{width:26px;height:26px;font-size:12px}
 .cnb-app.cnb-reserving .cnb-booking-navigation.cnb-steps-open .cnb-booking-progress .cnb-btn{min-height:44px;flex:1;min-width:0;text-align:right;justify-content:flex-start;font-size:13px;padding:6px 8px;white-space:normal}
 .cnb-app.cnb-reserving .cnb-booking-navigation.cnb-steps-open>.cnb-booking-return{display:flex;min-height:44px;width:100%;justify-content:center;margin-top:8px;font-size:12px;white-space:normal}
 .cnb-app.cnb-reserving .cnb-wizard-actions{gap:10px;flex-wrap:wrap;padding:10px;padding-bottom:max(10px,env(safe-area-inset-bottom));margin-top:20px}
 .cnb-app.cnb-reserving .cnb-wizard-actions>.cnb-btn{min-height:46px;padding:9px 16px}
 .cnb-app.cnb-reserving .cnb-selection-summary{padding:10px 12px;gap:6px 10px;font-size:12px;margin-bottom:14px;overflow-wrap:anywhere}
}

/* Embedded shortcodes follow their own width, not a surrounding page builder. */
@container cnb-panel (max-width:700px){
 .cnb-app .cnb-shell{display:block;min-height:0;border-radius:18px}
 .cnb-app .cnb-shell>.cnb-sidebar{padding:12px;border-inline-end:0;border-bottom:1px solid var(--cnb-line);border-radius:18px 18px 0 0;min-width:0}
 .cnb-app .cnb-shell>.cnb-sidebar>.cnb-logo,
 .cnb-app .cnb-shell>.cnb-sidebar>.cnb-sidebar-foot{display:none!important}
 .cnb-app .cnb-mobile-panel-toggle{display:flex;align-items:center;gap:10px;width:100%;min-height:48px;margin:0;padding:9px 12px;direction:rtl;text-align:right;line-height:1.8;border:1px solid var(--cnb-line);border-radius:12px;background:var(--cnb-card);color:var(--cnb-ink);scroll-margin-block-start:120px}
 .cnb-app .cnb-mobile-panel-toggle:hover{background:var(--cnb-bg);color:var(--cnb-ink);border-color:var(--cnb-teal)}
 .cnb-app .cnb-mobile-menu-label{font-size:11px;color:var(--cnb-muted);flex-shrink:0}
 .cnb-app .cnb-mobile-panel-toggle>strong{flex:1;min-width:0;font-size:14px;color:var(--cnb-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 .cnb-app .cnb-mobile-chevron{display:block;width:8px;height:8px;border:solid var(--cnb-teal);border-width:0 2px 2px 0;transform:rotate(45deg);margin:0 3px 4px;flex-shrink:0}
 .cnb-app .cnb-mobile-panel-toggle[aria-expanded=true]>.cnb-mobile-chevron{transform:rotate(225deg);margin-bottom:0}
 .cnb-app .cnb-shell>.cnb-sidebar>.cnb-panel-navigation{display:none;position:static;margin:0;padding:0;min-width:0;overflow:visible}
 .cnb-app .cnb-shell>.cnb-sidebar>.cnb-panel-navigation.cnb-panel-menu-open{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:10px 0 0;padding:4px;max-height:380px;max-height:min(56dvh,420px);overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;scrollbar-width:thin}
 .cnb-app .cnb-sidebar nav.cnb-panel-menu-open>button{min-width:0;min-height:46px;margin:0;padding:8px 10px;white-space:normal;overflow-wrap:anywhere;align-items:center;justify-content:center;text-align:center;line-height:1.8;font-size:13px;border-color:var(--cnb-line)}
 .cnb-app .cnb-sidebar nav.cnb-panel-menu-open>button>span:last-child{display:none}
 .cnb-app .cnb-main>.cnb-top{min-height:58px;height:auto;flex-wrap:wrap;gap:8px;padding:10px 12px}
 .cnb-app .cnb-top>.cnb-top-navigation{flex:0 0 auto;gap:0}
 .cnb-app .cnb-top>.cnb-top-navigation>span{display:none}
 .cnb-app .cnb-top>.cnb-top-account{flex:1 1 160px;min-width:0;gap:8px;justify-content:flex-end;flex-wrap:wrap}
 .cnb-app .cnb-top .cnb-account-name{flex:1 1 70px;min-width:0;max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.8;text-align:end}
 .cnb-app .cnb-top .cnb-btn{min-height:42px;padding:7px 11px;font-size:12px;flex-shrink:0}
 .cnb-app .cnb-top .cnb-work-panel-switch{max-width:100%;white-space:normal}
 .cnb-app .cnb-content{padding:18px 12px}
 .cnb-app .cnb-heading{gap:10px;margin-bottom:16px}
 .cnb-app .cnb-heading h2{font-size:20px;overflow-wrap:anywhere}
 .cnb-app .cnb-panel,.cnb-app .cnb-booking{padding:16px}
 .cnb-app.cnb-staff-entry .cnb-content{padding:0}
 .cnb-app.cnb-staff-entry .cnb-shell>.cnb-sidebar{display:none}
 .cnb-app.cnb-reserving .cnb-shell>.cnb-sidebar>.cnb-mobile-panel-toggle{display:none}
 .cnb-app.cnb-reserving .cnb-shell>.cnb-sidebar>nav.cnb-booking-navigation{display:block;position:static;overflow:visible;margin:0;padding:0;max-height:none}
 .cnb-app .cnb-mobile-booking-header{display:block;color:var(--cnb-nav-text,var(--cnb-ink))}
 .cnb-app .cnb-mobile-step-row{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}
 .cnb-app .cnb-mobile-step-title{display:flex;flex-direction:column;gap:1px;flex:1;min-width:0;line-height:1.7;scroll-margin-block-start:120px}
 .cnb-app .cnb-mobile-step-title>span{font-size:11px;color:var(--cnb-nav-text,var(--cnb-ink))}
 .cnb-app .cnb-mobile-step-title>strong{font-size:16px;line-height:1.8;overflow-wrap:anywhere;color:var(--cnb-nav-text,var(--cnb-ink))}
 .cnb-app .cnb-mobile-step-title:focus{outline:none}
 .cnb-app .cnb-mobile-step-title:focus-visible{outline:2px solid var(--cnb-gold);outline-offset:3px;border-radius:4px}
 .cnb-app .cnb-mobile-step-row .cnb-steps-toggle{min-height:44px;flex:0 0 auto;padding:7px 12px;font-size:12px;line-height:1.7;white-space:nowrap;background:var(--cnb-card);color:var(--cnb-teal);border-color:var(--cnb-line);border-radius:10px;box-shadow:none}
 .cnb-app.cnb-reserving .cnb-sidebar nav .cnb-steps-toggle:is(:hover,:focus,:focus-visible){background:var(--cnb-active);color:var(--cnb-active-text,#fff)!important;border-color:var(--cnb-active)}
 .cnb-app .cnb-mobile-progress{height:5px;background:var(--cnb-line);border-radius:8px;overflow:hidden;margin-top:12px;direction:rtl}
 .cnb-app .cnb-mobile-progress>span{display:block;height:100%;background:var(--cnb-teal);border-radius:8px;max-width:100%}
 .cnb-app .cnb-mobile-step-hint{margin:2px 0 0;color:var(--cnb-nav-text,var(--cnb-ink));font-size:11px;line-height:1.8}
 .cnb-app.cnb-reserving .cnb-booking-navigation>.cnb-booking-progress,
 .cnb-app.cnb-reserving .cnb-booking-navigation>.cnb-booking-return{display:none}
 .cnb-app.cnb-reserving .cnb-booking-navigation.cnb-steps-open>.cnb-booking-progress{display:grid;width:100%;gap:3px;margin:12px 0 0;padding:10px 0 0;border-top:1px solid var(--cnb-line)}
 .cnb-app.cnb-reserving .cnb-booking-navigation.cnb-steps-open>.cnb-booking-progress>li{min-width:0;min-height:44px;font-size:13px;padding:4px 8px;border-radius:8px;line-height:1.8;gap:9px}
 .cnb-app.cnb-reserving .cnb-booking-navigation.cnb-steps-open>.cnb-booking-progress>li.current{background:var(--cnb-card);color:var(--cnb-ink);box-shadow:inset -3px 0 var(--cnb-gold)}
 .cnb-app.cnb-reserving .cnb-booking-navigation.cnb-steps-open>.cnb-booking-progress>li>span{width:26px;height:26px;font-size:12px}
 .cnb-app.cnb-reserving .cnb-booking-navigation.cnb-steps-open .cnb-booking-progress .cnb-btn{min-height:44px;flex:1;min-width:0;text-align:right;justify-content:flex-start;font-size:13px;padding:6px 8px;white-space:normal}
 .cnb-app.cnb-reserving .cnb-booking-navigation.cnb-steps-open>.cnb-booking-return{display:flex;min-height:44px;width:100%;justify-content:center;margin-top:8px;font-size:12px;white-space:normal}
 .cnb-app.cnb-reserving .cnb-wizard-actions{gap:10px;flex-wrap:wrap;padding:10px;padding-bottom:max(10px,env(safe-area-inset-bottom));margin-top:20px}
 .cnb-app.cnb-reserving .cnb-wizard-actions>.cnb-btn{min-height:46px;padding:9px 16px}
 .cnb-app.cnb-reserving .cnb-selection-summary{padding:10px 12px;gap:6px 10px;font-size:12px;margin-bottom:14px;overflow-wrap:anywhere}
}
