/* Shared responsive refinements for small and landscape screens. */
html{max-width:100%;-webkit-text-size-adjust:100%}body{min-width:0}img,video,iframe{max-width:100%}.bone-app-switch{max-width:100%;scrollbar-width:thin;overscroll-behavior-x:contain}.bone-app-switch a{min-height:44px}
@media(max-width:900px){.bc-page1 .shell,.bc-page2 .shell{min-width:0}.bc-page3 .bg-app,.bc-page3 .bg-shell,.bc-page3 .bg-main{min-width:0;max-width:100%}.bc-page3 .bg-card,.bc-page3 .bg-group,.bc-page3 .bg-drug-row{min-width:0;overflow-wrap:anywhere}.bc-page3 .bg-how ol{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr))}.bc-page3 .bg-imgmodal-panel{max-width:100%;max-height:calc(100dvh - 24px);overflow-y:auto}.bc-page5 .topic-panel,.bc-page5 .topic-intro,.bc-page5 .layout{min-width:0}.bc-page5 .question,.bc-page5 .answer{overflow-wrap:anywhere}}
@media(max-width:720px){.bc-page1 .sidebar,.bc-page2 .sidebar,.bc-page4 aside{min-width:0}.bc-page1 .nav,.bc-page2 .nav,.bc-page4 aside nav{min-width:0;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.bc-page3 .bg-shell{padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right))}.bc-page3 .bg-card{min-width:0}.bc-page3 input,.bc-page3 select,.bc-page3 textarea{max-width:100%;min-width:0;font-size:16px}}
@media(orientation:landscape) and (max-height:500px){.bc-page1 .sidebar,.bc-page2 .sidebar,.bc-page4 aside{position:static}.bc-page3 .bg-imgmodal{align-items:flex-start;padding:8px}.bc-page3 .bg-imgmodal-panel{max-height:calc(100dvh - 16px)}.bc-page3 .bg-shell{padding-top:16px}.bone-app-switch{padding-top:4px;padding-bottom:4px}}

/* Full-width app shells, with comfortable inner spacing. */
.bc-page1 .shell{width:100%;max-width:none;margin:0;box-shadow:none}
.bc-page3 .bg-app .bg-shell{width:100%;max-width:none;margin:0;padding-left:clamp(16px,3vw,48px);padding-right:clamp(16px,3vw,48px)}

/* Consistent module-level navigation */
.bc-page1 .sidebar,.bc-page2 .sidebar,.bc-page4 aside,.risk-sidebar{border-right:1px solid #e1ebe4;background:#fff;padding:30px 18px;min-width:0}
.bc-page1 .nav button,.bc-page2 .nav button,.bc-page4 aside nav button,.risk-nav button{display:flex;align-items:center;gap:12px;width:100%;min-height:48px;border:0;border-radius:12px;padding:11px 14px;text-align:left;background:transparent;color:#5d7065;font:inherit;font-size:16px;cursor:pointer}
.bc-page1 .nav button.on,.bc-page2 .nav button.on,.bc-page4 aside nav button.active,.risk-nav button[aria-current=page]{background:#eaf4ee;color:#26715e;font-weight:700}
.risk-layout{display:grid;grid-template-columns:clamp(200px,18vw,260px) minmax(0,1fr);min-height:calc(100vh - 65px)}.risk-content{min-width:0}.risk-brand{font-size:21px;font-weight:750;color:#203b36;padding:0 12px 30px}.risk-brand small{display:block;font-size:12px;font-weight:500;letter-spacing:.12em;color:#718579}.risk-nav{display:grid;gap:8px}.risk-nav img{width:20px;height:20px;opacity:.7;flex:none}.risk-nav button:focus-visible{outline:3px solid #8fc7a0;outline-offset:2px}
@media(max-width:720px){.bc-page1 .sidebar,.bc-page2 .sidebar,.bc-page4 aside,.risk-sidebar{padding:12px 16px;border-right:0;border-bottom:1px solid #e1ebe4}.risk-layout{display:block}.risk-brand{font-size:18px;padding:0 0 8px}.risk-brand small{display:none}.risk-nav{display:flex;gap:5px;overflow-x:auto;-webkit-overflow-scrolling:touch}.risk-nav button{width:auto;flex:0 0 auto;white-space:nowrap}.bc-page1 .nav button,.bc-page2 .nav button,.bc-page4 aside nav button{width:auto;flex:0 0 auto;white-space:nowrap}}
@media print{.risk-sidebar{display:none}.risk-layout{display:block}}
