:root{--mobile-vh:100dvh;--mobile-safe-top:env(safe-area-inset-top,0px);--mobile-safe-right:env(safe-area-inset-right,0px);--mobile-safe-bottom:env(safe-area-inset-bottom,0px);--mobile-safe-left:env(safe-area-inset-left,0px)}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;overflow-x:clip}
body{min-width:0;overflow-x:clip}
img,svg,video,canvas,iframe{max-width:100%}
.mobile-nav-backdrop,.mobile-nav-close,.mobile-top-brand{display:none}

@media(max-width:900px){
  html{scroll-padding-top:76px}
  body{min-height:var(--mobile-vh);overscroll-behavior-y:none}
  body.mobile-menu-open,body.mobile-dialog-open,body.mobile-chat-open{overflow:hidden;touch-action:none}
  .app-shell{display:block!important;min-height:var(--mobile-vh)}
  main{width:100%!important;min-width:0!important;margin:0!important}
  .sidebar{position:fixed!important;z-index:120!important;inset-block:0!important;inset-inline-end:0!important;width:min(86vw,320px)!important;height:var(--mobile-vh)!important;min-height:0!important;padding:calc(18px + var(--mobile-safe-top)) calc(14px + var(--mobile-safe-right)) calc(18px + var(--mobile-safe-bottom)) 14px!important;transform:translateX(110%)!important;transition:transform .22s ease!important;box-shadow:-26px 0 70px rgba(4,31,57,.3)!important;overflow-y:auto!important;overscroll-behavior:contain}
  .sidebar.open{transform:none!important}
  .sidebar .brand{padding-inline-start:48px;margin-bottom:18px}
  .sidebar nav{gap:4px}
  .sidebar .nav-btn{min-height:48px;padding:11px 13px;border-radius:12px}
  .sidebar .profile{min-height:58px;position:sticky;bottom:0;background:rgba(12,62,105,.96);backdrop-filter:blur(12px)}
  .sidebar-help{display:none!important}
  .mobile-nav-close{display:grid;place-items:center;position:absolute;z-index:2;inset-block-start:calc(16px + var(--mobile-safe-top));inset-inline-start:14px;width:44px;height:44px;border:1px solid rgba(255,255,255,.24);border-radius:13px;color:#fff;background:rgba(255,255,255,.12);font-size:1.45rem;cursor:pointer}
  .mobile-nav-backdrop{display:block;position:fixed;z-index:110;inset:0;width:100%;height:var(--mobile-vh);padding:0;border:0;background:rgba(6,28,50,.54);backdrop-filter:blur(3px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s ease}
  .mobile-nav-backdrop.open{opacity:1;visibility:visible;pointer-events:auto}
  .topbar{position:sticky!important;z-index:90!important;top:0!important;min-height:calc(66px + var(--mobile-safe-top))!important;height:auto!important;padding:calc(10px + var(--mobile-safe-top)) calc(12px + var(--mobile-safe-right)) 10px calc(12px + var(--mobile-safe-left))!important;display:grid!important;grid-template-columns:44px minmax(0,1fr) auto!important;align-items:center!important;gap:9px!important;background:rgba(255,255,255,.96)!important;backdrop-filter:blur(18px)!important;box-shadow:0 7px 24px rgba(18,63,112,.09)}
  .menu-btn{display:grid!important;place-items:center;width:44px!important;height:44px!important;min-height:44px!important;border-radius:13px!important;font-size:0!important}
  .menu-btn:after{content:"☰";font-size:1.35rem;line-height:1}
  .mobile-top-brand{display:flex;min-width:0;align-items:center;justify-content:center;gap:8px;padding:3px 8px;border:0;background:transparent;color:#123f70;font:800 1.08rem Heebo,Arial,sans-serif;cursor:pointer}
  .mobile-top-brand img{width:38px;height:38px;flex:0 0 38px;object-fit:contain;border:1px solid #d9e6ef;border-radius:12px;background:#fff}
  .mobile-top-brand span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .topbar>.search,.topbar>.mode-switch{display:none!important}
  .top-actions{min-width:44px;margin:0!important;justify-content:flex-end!important;gap:6px!important}
  .top-actions .icon-btn{display:grid!important;width:44px;height:44px}
  .top-actions .install-app{display:none!important}
  .top-actions .primary{min-height:44px;padding:9px 12px;white-space:nowrap}
  .content,body.architecture-v2 .content{width:100%!important;max-width:none!important;padding:clamp(18px,5vw,24px) calc(14px + var(--mobile-safe-right)) calc(104px + var(--mobile-safe-bottom)) calc(14px + var(--mobile-safe-left))!important;overflow:visible}
  .page-title,.arch-page-head{display:flex!important;align-items:flex-start!important;flex-direction:column!important;gap:12px!important;margin-bottom:20px!important}
  .page-title h1,.arch-page-head h1{margin:0;font-size:clamp(1.75rem,8vw,2.25rem)!important;line-height:1.16;letter-spacing:-.02em}
  .page-title p,.arch-page-head p{font-size:.94rem;line-height:1.55}
  .page-title>button,.page-title>.primary,.arch-page-head .arch-actions{width:100%}
  .arch-page-head .arch-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .arch-page-head .arch-actions>*{width:100%;min-width:0}
  .card,.arch-card,.tile{max-width:100%;border-radius:17px!important}
  .page-card,.arch-card{padding:17px!important}
  .metrics,.user-metrics,.rights-overview,.qa-summary,.arch-metrics{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .metric,.arch-metric{min-width:0;padding:15px!important}
  .metric strong,.arch-metric strong{font-size:1.4rem!important}
  .dashboard-grid,.two-col,.support-grid,.team-grid,.docs-grid,.rights-grid,.reports-grid,.rights-layout,.rights-catalog,.impairment-tools,.impairment-grid,.case-workspace-grid,.messaging-shell,.service-desk,.arch-service,.arch-personal-snapshot{grid-template-columns:minmax(0,1fr)!important}
  .welcome-user,.case-hero,.arch-home-hero{display:grid!important;grid-template-columns:1fr!important;gap:18px!important;padding:22px 18px!important}
  .welcome-user h1{font-size:clamp(1.8rem,8.5vw,2.35rem)!important}
  .welcome-actions,.support-actions,.case-command,.qa-actions{display:grid!important;grid-template-columns:1fr!important;width:100%;gap:8px}
  .welcome-actions>*,.support-actions>*,.case-command>*,.qa-actions>*{width:100%}
  .journey-ring,.case-score,.arch-progress-ring{justify-self:start}
  .toolbar,.content-filters,.search-row{display:grid!important;grid-template-columns:1fr!important;width:100%;gap:9px!important}
  .toolbar>*,.content-filters>*,.search-row>*{width:100%!important;min-width:0!important}
  .toolbar input,.toolbar select,.toolbar button,input,select,textarea{max-width:100%}
  input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px!important}
  button,a,input,select,textarea{touch-action:manipulation}
  button,.primary,.secondary,.link-btn{min-height:44px}
  .mobile-table-region{width:100%;overflow:visible!important}
  .case-table,.case-table tbody,.case-table tr,.case-table td{display:block;width:100%}
  .case-table{min-width:0!important;border-collapse:separate;border-spacing:0 10px}
  .case-table thead{display:none}
  .case-table tbody tr{padding:13px 14px;border:1px solid #dce7ef;border-radius:15px;background:#fff;box-shadow:0 6px 18px rgba(18,63,112,.06)}
  .case-table td{display:flex!important;align-items:center;justify-content:space-between;gap:12px;padding:9px 0!important;border:0!important;border-bottom:1px solid #edf2f6!important;text-align:start}
  .case-table td:last-child{border-bottom:0!important}
  .case-table td:before{content:attr(data-label);flex:0 0 34%;color:#607689;font-size:.76rem;font-weight:800}
  .case-table td:first-child{display:block!important;padding-top:0!important}
  .case-table td:first-child:before{display:none}
  .case-table td:nth-child(3),.case-table td:nth-child(4){display:none!important}
  .case-table .person{min-width:0}
  .case-table .person>span:last-child{min-width:0}
  .case-table .person b,.case-table .person small{overflow-wrap:anywhere}
  .qa-head{display:none!important}
  .qa-row{grid-template-columns:1fr!important;gap:5px!important;padding:14px!important}
  .document-row{grid-template-columns:42px minmax(0,1fr) auto!important;gap:10px!important;padding:14px!important}
  .document-row .file-type,.document-row .icon-btn{display:none!important}
  .task,.detail-row,.consent-row,.gate-row,.audit-row{min-width:0;align-items:flex-start!important;gap:10px!important}
  .task>span,.detail-row>*{min-width:0;overflow-wrap:anywhere}
  .provider-patient,.provider-directory-row{grid-template-columns:auto minmax(0,1fr)!important}
  .provider-patient>button,.provider-directory-row>div:last-child{grid-column:1/-1!important;width:100%;display:grid!important;grid-template-columns:1fr!important}
  .thread-list,.arch-queue{max-height:34vh;overflow:auto}
  .conversation,.request-conversation,.arch-thread{min-height:58vh}
  .conversation header,.request-conversation>header,.arch-thread-head{align-items:flex-start!important;flex-direction:column!important;padding:16px!important}
  .conversation-body,.request-conversation .conversation-body,.arch-thread-body{padding:14px!important}
  .bubble,.arch-message{max-width:92%!important}
  .conversation-form,.team-reply-form,.arch-reply{padding:12px!important}
  .team-reply-form>div,.conversation-form{display:grid!important;grid-template-columns:1fr!important}
  .account-admin-toolbar,.account-admin-row{grid-template-columns:1fr!important}
  .account-admin-actions{grid-column:auto!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .account-admin-actions button{width:100%;min-width:0}
  .arch-home-hero{overflow:hidden}
  .arch-progress-ring{width:92px;flex-basis:92px}
  .arch-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .arch-row{align-items:flex-start!important;flex-direction:column!important}
  .arch-row-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
  .arch-row-actions>*{width:100%;min-width:0}
  .calendar-week,.calendar-grid{gap:4px!important;min-width:0}
  .calendar-day{min-height:52px!important;padding:5px!important;border-radius:9px!important}
  dialog,.live-dialog,.arch-dialog,.setup-modal{position:fixed!important;inset:calc(8px + var(--mobile-safe-top)) calc(8px + var(--mobile-safe-right)) calc(8px + var(--mobile-safe-bottom)) calc(8px + var(--mobile-safe-left))!important;width:auto!important;max-width:none!important;max-height:none!important;height:auto!important;margin:auto!important;border-radius:20px!important;overflow:hidden!important}
  dialog form,.arch-dialog-shell{max-height:calc(var(--mobile-vh) - 16px - var(--mobile-safe-top) - var(--mobile-safe-bottom))!important;overflow:auto}
  .modal-head,.arch-dialog header{position:sticky;z-index:2;top:0;padding:16px!important;background:#fff}
  .modal-actions,.arch-dialog footer{position:sticky;z-index:2;bottom:0;padding:12px 16px calc(12px + var(--mobile-safe-bottom))!important;display:grid!important;grid-template-columns:1fr 1fr!important;background:#f7fafc}
  .modal-actions>*,.arch-dialog footer>*{width:100%;min-width:0}
  .form-grid,.live-form-body,.arch-dialog-form{grid-template-columns:1fr!important;padding:16px!important;gap:13px!important}
  .form-grid .wide,.live-form-body textarea,.live-form-body fieldset{grid-column:auto!important}
  .viewer-body{height:50vh!important}
  .chat-panel{inset:0!important;width:100%!important;max-width:none!important;height:var(--mobile-vh)!important;border-radius:0!important;padding-top:var(--mobile-safe-top);padding-bottom:var(--mobile-safe-bottom)}
  .chat-head{min-height:66px;padding:12px 14px!important}
  .chat-notice{font-size:.76rem;line-height:1.45}
  .messages{padding:14px!important}
  .quick-prompts{padding:9px 12px!important}
  .chat-input{padding:10px 12px calc(10px + var(--mobile-safe-bottom))!important;background:#fff}
  .chat-input textarea{font-size:16px!important}
  .chat-fab{z-index:80!important;inset:auto auto calc(14px + var(--mobile-safe-bottom)) calc(14px + var(--mobile-safe-left))!important;width:58px!important;height:58px!important;min-height:58px!important;padding:0!important;display:grid!important;place-items:center!important;border-radius:50%!important}
  .chat-fab>span:first-child{width:42px!important;height:42px!important}
  .chat-fab>span:last-child{display:none!important}
  .cloud-login-wall{min-height:var(--mobile-vh)!important;padding:calc(14px + var(--mobile-safe-top)) calc(12px + var(--mobile-safe-right)) calc(14px + var(--mobile-safe-bottom)) calc(12px + var(--mobile-safe-left))!important;overflow:auto!important;align-items:start!important}
  .cloud-login-card{width:100%!important;max-width:520px!important;max-height:none!important;margin:auto;padding:22px 18px!important;border-radius:20px!important}
  .cloud-login-brand{align-items:center!important}
  .cloud-login-brand img{width:62px!important;height:62px!important;flex-basis:62px!important}
  .real-form .form-row,.identity-summary,.identity-row,.real-record{grid-template-columns:1fr!important}
  .cloud-status{top:calc(8px + var(--mobile-safe-top))!important;width:calc(100vw - 20px)!important;align-items:flex-start!important}
  .cloud-status b{white-space:normal!important}
  .toast{bottom:calc(84px + var(--mobile-safe-bottom))!important;width:calc(100vw - 28px);text-align:center}
}

@media(max-width:430px){
  .metrics,.user-metrics,.rights-overview,.qa-summary,.arch-metrics,.arch-quick-actions{grid-template-columns:1fr!important}
  .arch-page-head .arch-actions,.arch-row-actions,.account-admin-actions{grid-template-columns:1fr!important}
  .top-actions .primary{font-size:.78rem;padding-inline:9px}
  .mobile-top-brand{font-size:1rem}
  .page-card,.arch-card{padding:15px!important}
  .calendar-day{min-height:46px!important;font-size:.76rem}
  .calendar-day small{font-size:.58rem!important}
  .modal-actions,.arch-dialog footer{grid-template-columns:1fr!important}
}

@media(orientation:landscape) and (max-height:520px) and (max-width:900px){
  .sidebar{width:min(58vw,340px)!important}
  .chat-head{min-height:54px}
  .quick-prompts{display:none!important}
  .cloud-login-wall{place-items:start center!important}
}

@media(pointer:coarse){button,.nav-btn,a.primary,a.secondary{min-height:44px}.icon-btn{min-width:44px;min-height:44px}}
@media(prefers-reduced-motion:reduce){.sidebar,.mobile-nav-backdrop{transition:none!important}}
