
:root{--bl-bottom:env(safe-area-inset-bottom,0px)}html{-webkit-text-size-adjust:100%;scroll-padding-bottom:100px}body{padding-bottom:calc(74px + var(--bl-bottom))}input,select,textarea{font-size:max(16px,1em)}button,a,input,select{touch-action:manipulation}button{min-height:44px}a:focus-visible,button:focus-visible{outline:3px solid #ad6742;outline-offset:3px}.bl-nav{position:fixed;z-index:999;bottom:0;left:0;right:0;background:rgba(253,252,249,.98);border-top:1px solid #dfe5dd;box-shadow:0 -4px 20px rgba(25,50,36,.05);padding:7px max(10px,env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));display:flex;justify-content:space-around;gap:4px}.bl-nav a{display:grid;justify-items:center;align-content:center;gap:2px;min-height:51px;flex:1;border-radius:9px;color:#526157;text-decoration:none;font:700 10px/1.1 system-ui,sans-serif}.bl-nav a[aria-current=page]{color:#254739;background:#eaf0e8}.bl-nav svg{height:21px;width:21px;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round}.bl-float{position:fixed;z-index:998;bottom:calc(82px + env(safe-area-inset-bottom));right:15px;max-width:min(310px,calc(100vw - 30px));background:#254739;color:white;border:0;border-radius:999px;padding:12px 17px;box-shadow:0 5px 22px #1d36274d;font:700 13px system-ui,sans-serif;min-height:46px}.bl-toast{position:fixed;z-index:1001;bottom:calc(144px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);background:#254739;color:white;padding:11px 16px;border-radius:10px;box-shadow:0 8px 22px #0002;font:600 13px system-ui,sans-serif;max-width:90vw;text-align:center}.bl-panel{position:fixed;z-index:1000;bottom:calc(82px + env(safe-area-inset-bottom));left:12px;right:12px;max-width:470px;margin:auto;background:#fdfcf9;border:1px solid #dce3da;border-radius:14px;padding:18px;box-shadow:0 12px 55px #142c2240;font:14px/1.5 system-ui,sans-serif;color:#254739}.bl-panel label{display:block;font-size:12px;font-weight:700;margin:9px 0 4px}.bl-panel input{width:100%;padding:11px;border:1px solid #cbd5ca;border-radius:7px;background:white}.bl-panel button{background:#254739;color:white;border:0;padding:11px 14px;border-radius:7px;font-weight:700}.bl-panel .bl-cancel{background:#e9eee8;color:#254739}.bl-card-add{display:inline-flex;align-items:center;justify-content:center;border:1px solid #254739;border-radius:7px;background:white;color:#254739;padding:9px 12px;font:700 12px system-ui,sans-serif;margin:8px 0;min-height:44px}.bl-inline{border:1px solid #dfe5dd;background:#f3f0ea;padding:12px;border-radius:9px;color:#254739;font:600 13px system-ui,sans-serif;margin:15px 0}@media(min-width:900px){.bl-nav{left:50%;right:auto;transform:translateX(-50%);width:540px;border:1px solid #dfe5dd;border-bottom:0;border-radius:16px 16px 0 0}.bl-float{right:calc((100vw - min(100vw,1160px))/2 + 20px)}}@media(max-width:540px){.bl-float{font-size:12px}.bl-panel{bottom:calc(77px + env(safe-area-inset-bottom))}}

/* Community release: accessibility and native-feeling interaction */
.bl-nav{overscroll-behavior:contain;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.bl-nav a{font-size:11px;min-height:56px}.bl-nav a:active,.bl-card-add:active{transform:scale(.97)}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
@media(max-width:420px){.bl-nav a{font-size:10px}}

/* iPhone/Android mobile QA hardening */
html{overflow-x:hidden}body{min-width:0;overflow-x:hidden;padding-bottom:calc(92px + env(safe-area-inset-bottom,0px))}img,svg,video{max-width:100%}input,select,textarea{max-width:100%;font-size:16px!important}button,[role=button]{-webkit-tap-highlight-color:transparent} .bl-panel{max-height:calc(100dvh - 105px - env(safe-area-inset-bottom,0px));overflow-y:auto;overscroll-behavior:contain} .bl-nav{padding-bottom:calc(8px + env(safe-area-inset-bottom,0px))}.bl-nav a{min-width:0} .bl-nav span{white-space:nowrap} @media(max-width:360px){.bl-nav{gap:0;padding-left:3px;padding-right:3px}.bl-nav a{font-size:9px}}
