/* Run 93 — Experience 3.0. Shared navigation and interaction language.
   Scoped to the authenticated QRSocial app shell; transaction/identity UI unchanged. */
:root{
  --qs93-blue:#167ef4;--qs93-cyan:#19b6e9;--qs93-ink:#152c4e;
  --qs93-line:#d5e5f9;--qs93-soft:#f4f9ff;--qs93-shadow:0 18px 48px rgba(19,62,121,.13);
  --qs93-ease:cubic-bezier(.2,.75,.25,1);
}
/* Route feedback is an accent, not a blocking loading screen. */
.qs93-route-progress{position:fixed;z-index:29999;top:0;left:0;width:100%;height:3px;pointer-events:none;opacity:0;transform:scaleX(.1);transform-origin:left;transition:opacity .18s ease,transform 2.3s var(--qs93-ease);background:linear-gradient(90deg,#9347f6 0%,#ef406c 27%,#1686ff 60%,#14c999 100%);box-shadow:0 1px 10px rgba(26,125,245,.25)}
html.qs93-navigating .qs93-route-progress{opacity:1;transform:scaleX(.92)}
/* The Nerddi five-product bar remains above the QRSocial five-tool dock. */
body.has-tabbar .qs-network-header{box-shadow:0 5px 25px rgba(16,65,136,.07)!important;border-bottom:1px solid color-mix(in srgb,var(--qs93-line) 86%,transparent)!important}
body.has-tabbar .qs-network-header :is(.qs-network-action,.qs-network-orbit>a):focus-visible{
 outline:3px solid #0d7fff!important;outline-offset:2px!important;
}
/* Mobile-first app dock: single visual weight and clearly distinguished active state. */
@media(max-width:760px){
 body.has-tabbar .qs-mobile-nav.qs-mobile-nav-premium.qs-r59-mobile-nav{
   box-sizing:border-box!important;left:max(8px,env(safe-area-inset-left))!important;right:max(8px,env(safe-area-inset-right))!important;
   bottom:max(8px,env(safe-area-inset-bottom))!important;
   height:76px!important;padding:8px 6px!important;gap:2px!important;
   border:1px solid rgba(194,216,246,.92)!important;border-radius:25px!important;
   background:rgba(255,255,255,.975)!important;
   -webkit-backdrop-filter:blur(22px) saturate(1.25)!important;backdrop-filter:blur(22px) saturate(1.25)!important;
   box-shadow:0 12px 36px rgba(17,53,104,.16),0 1px 2px rgba(17,53,104,.05)!important;
 }
 body.has-tabbar .qs-r59-mobile-nav :is(.qs-mobile-nav-item,.qs-r59-create){
   min-width:0!important;height:59px!important;padding:5px 0!important;border-radius:17px!important;
   color:#5b6d84!important;font-size:10px!important;font-weight:760!important;letter-spacing:-.02em!important;
   transition:background .18s ease,color .18s ease,transform .18s var(--qs93-ease)!important;
 }
 body.has-tabbar .qs-r59-mobile-nav .qs-mobile-nav-item.is-active{
   color:#1178e8!important;background:linear-gradient(180deg,#e4f2ff,#edf4ff)!important;
   box-shadow:inset 0 0 0 1px rgba(109,171,245,.13)!important;
 }
 body.has-tabbar .qs-r59-mobile-nav .qs-mobile-nav-item.is-active .qs-mobile-nav-icon svg{stroke-width:2.3}
 body.has-tabbar .qs-r59-mobile-nav .qs-mobile-nav-icon{width:24px!important;height:24px!important}
 body.has-tabbar .qs-r59-mobile-nav .qs-mobile-nav-item:is(:active,:focus-visible){transform:scale(.965)!important}
 body.has-tabbar .qs-r59-mobile-nav :is(.qs-mobile-nav-item,.qs-r59-create):focus-visible{
   outline:3px solid #0c83fa!important;outline-offset:-1px!important;
 }
 body.has-tabbar .qs-r59-mobile-nav .qs-r59-create{position:relative;justify-content:flex-end!important;padding-bottom:3px!important;color:#365f98!important}
 body.has-tabbar .qs-r59-mobile-nav .qs-r59-create-orb{
   position:relative;width:62px!important;height:62px!important;margin-top:-28px!important;
   border-radius:21px!important;background:#fff!important;border:2px solid #e0ebff!important;
   box-shadow:0 7px 20px rgba(35,107,235,.22),0 0 0 3px #fff!important;
 }
 body.has-tabbar .qs-r59-mobile-nav .qs-r59-create-orb::before{
   content:"";position:absolute;inset:-5px;border-radius:25px;z-index:-1;
   background:conic-gradient(from 15deg,#eb4277,#19c7a3,#168bff,#9857ff,#eb4277);opacity:.93;
 }
 body.has-tabbar .qs-r59-mobile-nav .qs-r59-create[aria-expanded="true"] .qs-r59-create-orb{
   transform:translateY(-2px) scale(1.045)!important;box-shadow:0 8px 24px rgba(20,129,242,.29)!important;
 }
 body.has-tabbar .qs-r59-mobile-nav .qs-r59-unread{background:#ec3d6f!important;border-color:#fff!important}
 body.has-tabbar{padding-bottom:max(134px,calc(119px + env(safe-area-inset-bottom)))!important}
 body.has-tabbar .qs-legal-footer{margin-bottom:max(95px,env(safe-area-inset-bottom))!important}
}
@media(max-width:360px){
 body.has-tabbar .qs-mobile-nav.qs-mobile-nav-premium.qs-r59-mobile-nav{left:5px!important;right:5px!important;gap:0!important;padding-inline:3px!important}
 body.has-tabbar .qs-r59-mobile-nav :is(.qs-mobile-nav-item,.qs-r59-create){font-size:9px!important}
 body.has-tabbar .qs-r59-mobile-nav .qs-r59-create-orb{width:55px!important;height:55px!important;border-radius:19px!important}
}
/* Consistent tactile states across in-app navigation, without touching purchase buttons. */
body.has-tabbar .qs-sidebar .qs-nav-item:is(:focus-visible,:hover),
body.has-tabbar .qs-sidebar-more:is(:focus-visible,:hover){border-radius:13px;transition:background .16s ease,transform .16s ease}
body.has-tabbar .qs-sidebar :is(a,button):focus-visible,
body.has-tabbar .qc60-create-sheet :is(a,button):focus-visible{outline:3px solid #1480f6!important;outline-offset:2px!important}
/* Create and command dialogs: clear hierarchy, keyboard-visible dismissals. */
.qc60-create-shell .qc60-create-sheet{scrollbar-gutter:stable!important;overscroll-behavior:contain}
.qc60-create-shell .qc60-create-grid >*:active,.qc60-create-shell .qc92-shortcuts a:active{transform:scale(.985)!important}
.qc60-create-head>button:focus-visible{outline:3px solid #1288ff!important}
body.has-tabbar .qs-command:not([hidden]){box-shadow:var(--qs93-shadow)}
body.has-tabbar .qs-command :is(input,button):focus-visible{outline:3px solid #147efa!important;outline-offset:2px}
/* Toast feedback: readable over busy media in either theme. */
body.has-tabbar #toast.show{max-width:min(420px,calc(100vw - 28px));overflow-wrap:anywhere;line-height:1.4;border:1px solid #bed9f7;box-shadow:0 12px 36px rgba(7,31,72,.23);font-weight:700}
html[data-theme="dark"] body.has-tabbar .qs-mobile-nav.qs-mobile-nav-premium.qs-r59-mobile-nav{
 background:rgba(22,35,57,.98)!important;border-color:#3c5375!important;box-shadow:0 12px 35px rgba(0,5,17,.45)!important;
}
html[data-theme="dark"] body.has-tabbar .qs-r59-mobile-nav :is(.qs-mobile-nav-item,.qs-r59-create){color:#b0c7e4!important}
html[data-theme="dark"] body.has-tabbar .qs-r59-mobile-nav .qs-mobile-nav-item.is-active{color:#82caff!important;background:linear-gradient(180deg,#244365,#203553)!important;box-shadow:inset 0 0 0 1px #365b82!important}
html[data-theme="dark"] body.has-tabbar .qs-r59-mobile-nav .qs-r59-create-orb{background:#1a2d4b!important;border-color:#385a81!important;box-shadow:0 8px 23px rgba(0,0,0,.3),0 0 0 3px #1a2d4b!important}
html[data-theme="dark"] body.has-tabbar .qs-r59-mobile-nav .qs-r59-unread{border-color:#152440!important}
html[data-theme="dark"] body.has-tabbar #toast.show{border-color:#416082;background:#172b47;color:#f4f9ff}
@media(prefers-reduced-motion:reduce){.qs93-route-progress{transition:none!important}.qs-r59-mobile-nav *{transition:none!important;animation:none!important}.qc60-create-sheet *{transition:none!important}}
