/* Compact phone layout; visible controls keep 44px tap areas. */
.label-compact{display:none}
.mobile-filter-panel{margin:0;min-width:0}
.mobile-filter-panel>summary{display:none}
@media screen and (max-width:640px){
.label-full{display:none!important}.label-compact{display:inline}.demo-ribbon{display:none}
.app-topbar{padding:var(--space-1) var(--space-3);gap:var(--space-1);align-items:center}
.brand{gap:var(--space-2);min-height:var(--control)}.brand-mark{width:var(--space-6);height:var(--space-6)}.brand-name{font-size:var(--text-xs)}
.brand-sub{display:block!important;font-size:var(--text-xs);line-height:1.4}.topbar-tools{gap:var(--space-1)}
.role-switch{padding:0;gap:var(--space-1);border-radius:var(--radius-sm)}.role-tab{min-height:var(--control);padding:var(--space-1) var(--space-2);gap:var(--space-1);font-size:var(--text-xs);white-space:nowrap}.role-tab svg{display:inline-block;width:var(--space-4);height:var(--space-4)}
.mobile-nav,body[data-workspace=resident] .mobile-nav{padding:0 var(--space-2);gap:var(--space-1);justify-content:stretch;overflow:visible}
.mobile-nav .nav-link,body[data-workspace=resident] .mobile-nav .nav-link{min-height:var(--control);flex:1 1 0;min-width:0;padding:var(--space-1);gap:var(--space-1);justify-content:center;font-size:var(--text-xs);border-radius:var(--radius-sm);white-space:nowrap}
.mobile-nav .nav-link svg{width:var(--space-4);height:var(--space-4)}
.workspace,body[data-workspace=resident] .workspace{padding:var(--space-3)}
.journey-strip{flex-wrap:nowrap;gap:var(--space-2);padding:0 var(--space-2);margin-bottom:var(--space-3);min-height:var(--control);border-radius:var(--radius-sm)}
.journey-icon,.journey-copy p,.journey-dots{display:none}.journey-copy{flex:1 1 auto;flex-basis:auto;min-width:0}.journey-copy strong{font-size:var(--text-xs);font-weight:500;line-height:1.4}.journey-step{font-size:var(--text-xs)}
.journey-strip .btn{flex:0 0 auto;min-width:0;margin:0;padding-inline:var(--space-3)}.journey-strip .btn>svg{display:none}
h1,.rn-hero h1,.rn-detail-header h1,.office-page-header h1,.ex-heading h1{font-size:var(--text-xl);line-height:1.4}h2,.rn-resident h2{font-size:var(--text-base)}
.page-header,.office-page-header,.ex-heading{margin-bottom:var(--space-3);gap:var(--space-2)}.page-header .eyebrow,.office-page-header .eyebrow{display:none}
.page-header h1,.office-page-header h1{margin-bottom:var(--space-1)}.page-header .lede,.office-page-header .lede{font-size:var(--text-sm);line-height:1.5}
.panel,.stat-card,.pillar{padding:var(--space-3);border-radius:var(--radius-sm)}.panel-header{gap:var(--space-2);margin-bottom:var(--space-3)}.panel-header h2{font-size:var(--text-sm)}
.stack,.grid-2,.grid-3{gap:var(--space-3)}.section-title{margin:var(--space-4) 0 var(--space-2);gap:var(--space-2)}
.notice{padding:var(--space-2) var(--space-3);margin-bottom:var(--space-3);font-size:var(--text-xs)}
/* The painted button is 36px tall inside a real 44px interactive element. */
.btn,.icon-btn,.language-button{isolation:isolate;background:transparent!important;border-color:transparent!important;box-shadow:none!important;min-height:var(--control);font-size:var(--text-xs);padding:var(--space-1) var(--space-3);line-height:1.4}
.icon-btn{min-width:var(--control);padding:var(--space-1)}
.btn::before,.icon-btn::before,.language-button::before{content:'';position:absolute;z-index:-1;inset:var(--space-1) 0;border-radius:var(--radius-sm);border:var(--hairline) solid transparent;pointer-events:none}
.btn-primary::before{background:var(--accent);border-color:var(--accent);box-shadow:var(--button-primary-shadow)}.btn-primary:hover::before{background:var(--accent-hover);border-color:var(--accent-hover)}
.btn-secondary::before,.icon-btn::before,.language-button::before{background:var(--surface);border-color:var(--border);box-shadow:var(--button-secondary-shadow)}
.btn-secondary:hover::before,.icon-btn:hover::before,.language-button:hover::before{background:var(--neutral-100)}.btn-ghost:hover::before{background:var(--accent-soft)}.btn-danger::before{background:var(--danger-bg);border-color:var(--danger)}
.form-actions{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-3)}.form-actions .btn{width:auto}
input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea{font-size:var(--text-base);padding:var(--space-2) var(--space-3);min-height:var(--control)}textarea{min-height:96px}.field{gap:var(--space-1)}
.app-footer{gap:var(--space-2);padding-top:var(--space-3);margin-top:var(--space-5);font-size:var(--text-xs)}.mobile-only-tools{gap:var(--space-2)}
dialog,.office-dialog{padding:var(--space-4);width:calc(100% - 24px);border-radius:var(--radius-md)}.dialog-header,.office-dialog-header{gap:var(--space-2);margin-bottom:var(--space-3)}.dialog-header h2{font-size:var(--text-lg)}.guide-steps{margin-block:var(--space-3)}.guide-steps li{padding-block:var(--space-2);gap:var(--space-3)}
.mobile-filter-panel{border-bottom:var(--hairline) solid var(--border)}
.mobile-filter-panel>summary{display:flex;align-items:center;gap:var(--space-2);min-height:var(--control);padding:0 var(--space-3);font-size:var(--text-xs);color:var(--fg-muted);list-style:none;cursor:pointer}
.mobile-filter-panel>summary::-webkit-details-marker{display:none}.mobile-filter-panel>summary strong{font-weight:500;color:var(--fg)}.mobile-filter-panel>summary>svg:last-child{margin-left:auto}.mobile-filter-panel[open]>summary>svg:last-child{transform:rotate(180deg)}
.mobile-filter-panel>summary:focus-visible{outline:var(--ring) solid var(--focus);outline-offset:calc(-1 * var(--ring))}
.rn-welcome{margin-bottom:var(--space-2)}.rn-profile{display:none}.rn-hero{padding:var(--space-3);gap:var(--space-2);border-radius:var(--radius-sm)}.rn-hero .eyebrow{display:none}.rn-hero h1{margin-bottom:var(--space-1)}.rn-hero p:not(.eyebrow){font-size:var(--text-sm);line-height:1.5;margin:0}
.rn-services{margin-top:var(--space-4)}.rn-section-heading{margin-bottom:var(--space-2)}.rn-section-heading h2{font-size:var(--text-base);margin-bottom:0}.rn-section-heading p{display:none}
.rn-quick-actions{gap:var(--space-2)}.rn-quick-card{padding:var(--space-2);min-height:80px;gap:var(--space-1);border-radius:var(--radius-sm)}.rn-quick-icon{width:var(--space-6);height:var(--space-6);background:transparent}.rn-quick-icon svg{width:var(--space-5);height:var(--space-5)}.rn-quick-copy strong{font-size:var(--text-xs)}
.rn-home-grid{margin-top:var(--space-3);gap:var(--space-3)}.rn-my-panel,.rn-updates{padding:var(--space-3)!important}.rn-my-panel .panel-header{margin-bottom:var(--space-2)}.rn-my-panel .panel-header h2,.rn-updates h2{font-size:var(--text-base)}
.rn-mini-stats{padding-bottom:var(--space-2);gap:var(--space-3);font-size:var(--text-xs)}.rn-case-card{padding:var(--space-3) 0!important;gap:var(--space-2)}.rn-case-icon{width:var(--space-6);height:var(--space-6);flex-basis:var(--space-6)}.rn-case-icon svg{width:var(--space-4);height:var(--space-4)}.rn-case-copy{flex-basis:calc(100% - 32px)}.rn-case-end{margin-left:var(--space-8)}.rn-case-end .badge{font-size:var(--text-xs)}.rn-update{padding-block:var(--space-3)}.rn-community-link{min-height:64px;padding:var(--space-3)!important}
.rn-page-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-1) var(--space-2);align-items:center}.rn-page-header>div{display:contents}.rn-page-header h1{grid-column:1;grid-row:1;margin:0;font-size:var(--text-xl)}.rn-page-header .lede{grid-column:1/-1;grid-row:2;font-size:var(--text-sm);margin:0}.rn-page-header>.btn{grid-column:2;grid-row:1;width:auto;margin:0}
.rn-form-layout{gap:var(--space-2)}
.rn-form-section{padding:var(--space-3);gap:0}.rn-section-number{display:none}.rn-form-section h2{font-size:var(--text-sm);line-height:1.5;margin-bottom:var(--space-2)}
.rn-type-options{gap:var(--space-2);margin-bottom:var(--space-3)}.rn-type-card>span{min-height:var(--control);padding:var(--space-2) var(--space-1);flex-direction:row;justify-content:center;align-items:center;gap:0;border-radius:var(--radius-sm)}.rn-type-card>span>svg{display:none}.rn-type-card strong{font-size:var(--text-xs);font-weight:500;line-height:1.4}
.rn-category-options{gap:var(--space-2)}.rn-category-field legend{font-size:var(--text-xs);margin-bottom:var(--space-2)}.rn-category-card>span{min-height:52px;padding:var(--space-2);flex-direction:row;align-items:center;gap:var(--space-2);border-radius:var(--radius-sm)}.rn-category-card>span>svg{width:var(--space-4);height:var(--space-4);margin:0}.rn-category-card strong{font-size:var(--text-xs);font-weight:500;line-height:1.4}
.rn-request-form .field{margin-bottom:var(--space-3);gap:var(--space-1)}.rn-request-form input,.rn-request-form textarea,.rn-request-form select{padding:var(--space-2) var(--space-3)}.rn-request-form .form-grid{gap:0}.rn-request-form .form-grid .field{margin-bottom:var(--space-3)}.rn-request-form .field label{font-size:var(--text-sm)}
.rn-optional{display:inline;float:none;margin-left:var(--space-2)}.rn-upload{padding:var(--space-3);gap:var(--space-2)}.rn-upload-symbol{display:none}.rn-upload .small{font-size:var(--text-xs)}.rn-upload .row{gap:var(--space-2);flex-wrap:wrap}.rn-form-footer{padding:var(--space-3)}.rn-form-footer .form-actions{flex-direction:row;align-items:center;gap:var(--space-2)}.rn-form-footer .btn{width:auto;margin-left:auto}
.rn-detail-header{margin-bottom:var(--space-3)}.rn-detail-header>.badge{margin-top:var(--space-2)}.rn-detail-layout{gap:var(--space-3)}.rn-detail-layout .panel{padding:var(--space-3)}.rn-summary dl{gap:var(--space-2)}.rn-evidence-pair{gap:var(--space-2)}.rn-rating-stars{gap:var(--space-1)}.rn-star-option>span{height:var(--control)}.rn-followup-form .form-actions{flex-direction:row;align-items:center}.rn-followup-form .form-actions>span{flex:1}
.rn-community-banner{padding:var(--space-3);gap:var(--space-3)}.rn-community-banner .rn-neighbourhood-photo{max-height:120px}.rn-community-banner h2{font-size:var(--text-lg)}.rn-agency-guide{padding:var(--space-3)!important}.rn-agency-grid .info-card{padding-block:var(--space-3)}.rn-agency-footer{gap:var(--space-2)}.rn-agency-footer .btn{width:auto;align-self:flex-end}
.office-back+.office-page-header .eyebrow{display:block;margin-bottom:var(--space-1)}.office-page-header .lede{font-size:var(--text-xs)}.office-stat-grid{margin-bottom:var(--space-3)}.office-stat-grid .stat-card{padding:var(--space-3)}.office-stat-grid .stat-card>p{font-size:var(--text-xs);margin-bottom:var(--space-1)}.office-stat-grid .stat-card>p:last-child{display:none}.office-stat-value{font-size:var(--text-xl);line-height:1.3}
.office-journey-callout{display:none}.office-view-tabs{padding-inline:var(--space-2)}.office-view-tab{min-height:var(--control);padding:var(--space-2);gap:var(--space-1);font-size:var(--text-xs)}.office-view-tab>span{padding-inline:var(--space-1)}.office-filter-form{padding:var(--space-3);gap:var(--space-2)}
.office-list-summary{padding:var(--space-2) var(--space-3);gap:0}.office-list-summary>span:last-child{display:none}.office-case-table tbody tr{padding:var(--space-3);gap:var(--space-2)}.office-case-table td[data-label]::before{display:none}.office-case-table td[data-label]{font-size:var(--text-xs)}.office-case-category{display:inline}.office-case-category::before{content:' · '}.office-case-link{min-height:var(--control)}.office-case-sub{font-size:var(--text-xs)}.office-pagination{padding:var(--space-2) var(--space-3)}
.office-next-step{padding:var(--space-2) var(--space-3);gap:var(--space-2);margin-bottom:var(--space-3);align-items:center}.office-next-step p,.office-step-number{display:none}.office-next-step strong{font-size:var(--text-xs)}.office-back{margin-bottom:var(--space-1)}
.office-workspace,.office-case-main,.office-case-sidebar{gap:var(--space-3)}.office-workspace .panel{padding:var(--space-3)}.office-workspace .office-ticket-sheet{padding:0}.office-ticket-header{padding:var(--space-3);gap:var(--space-1);flex-direction:row}.office-ticket-header h2,.office-public-label{font-size:var(--text-xs)}.office-original-request,.office-messages .message,.office-reply-form{padding:var(--space-3)}
.office-message-top{flex-direction:row;flex-wrap:wrap;gap:var(--space-1) var(--space-2)}.office-message-top time{margin-left:auto}.office-reply-form .form-actions>.btn{width:auto}.office-reply-form .form-actions{flex-direction:row}.office-performance-strip>div{padding:var(--space-3)}.office-initiative-grid,.office-initiative-overview{gap:var(--space-3)}
.ex-heading{gap:var(--space-2)}.ex-breadcrumb{margin-bottom:var(--space-1)}.ex-heading h1{margin-bottom:var(--space-1)}.ex-heading p{font-size:var(--text-xs);line-height:1.5}.ex-heading-actions{width:auto;gap:var(--space-2)}.ex-heading-actions .btn{flex:0 1 auto;min-height:var(--control)}
.ex-filter-panel{background:var(--surface);border:var(--hairline) solid var(--border);border-radius:var(--radius-sm)}.ex-filterbar{border:0;padding:var(--space-3);gap:var(--space-2)}.ex-filter-heading{display:none}.ex-filterbar select{font-size:var(--text-base)}
.ex-provenance{gap:var(--space-1) var(--space-2);margin:var(--space-2) 0 var(--space-3)}.ex-provenance>span{width:auto;font-size:var(--text-xs)}.ex-provenance>span:nth-child(2){display:none}.ex-provenance>span:last-child{margin:0}
.ex-metrics{gap:var(--space-2);margin-bottom:var(--space-3)}.ex-metric{min-height:112px;padding:var(--space-3)}.ex-metric .stat-label{min-height:0;margin-bottom:var(--space-2);font-size:var(--text-xs)}.ex-metric .stat-label svg{display:none}.ex-metric .stat-value{font-size:var(--text-2xl);min-height:0;margin-bottom:var(--space-2)}.ex-metric .stat-note{font-size:var(--text-xs);line-height:1.4}
.ex-trend-panel{margin-bottom:var(--space-3)}.ex-trend-main,.ex-backlog,.ex-chart-card{padding:var(--space-3)}.ex-card-heading{margin-bottom:var(--space-3)}.ex-volume-chart{padding-top:var(--space-2);margin-bottom:var(--space-2)}.ex-chart-footnote{margin-top:var(--space-2);padding-top:var(--space-2)}.ex-attention-row{padding-block:var(--space-3)}.ex-chart-grid{gap:var(--space-3)}.ex-pillar{gap:var(--space-2);padding:var(--space-3)}.ex-pillar-metrics{padding-top:var(--space-3);gap:var(--space-2)}
.report-sheet{padding:var(--space-3)}.report-masthead{gap:var(--space-2);padding-bottom:var(--space-3);margin-bottom:var(--space-3)}.report-stat-grid{padding-bottom:var(--space-3);margin-bottom:var(--space-3);gap:var(--space-3)}.report-section{margin-block:var(--space-3)}
}

@media screen and (max-width:640px){
/* One masthead; resident services stay within thumb reach. */
.app-topbar{min-height:56px;padding:var(--space-1) var(--space-3);gap:var(--space-2);flex-wrap:nowrap;justify-content:space-between}.brand{flex:0 1 auto;gap:var(--space-2)}.brand-mark,.brand-mark svg{width:var(--space-6);height:var(--space-6)}.brand-name{font-size:var(--text-xs);letter-spacing:0}.brand-sub{font-size:10px;line-height:1.3}.topbar-tools{gap:var(--space-1);min-width:0}
.role-picker-trigger{font-size:var(--text-xs);padding:var(--space-2);gap:var(--space-1);border:0;background:transparent}.role-picker-prefix{display:none}.role-picker .role-switch{width:204px;right:0}.role-picker .role-tab{font-size:var(--text-sm);padding:var(--space-3);gap:var(--space-3)}.role-picker .role-tab svg{display:inline;width:var(--space-4);height:var(--space-4)}
.language-button{width:var(--control);min-width:var(--control);padding:var(--space-1);gap:0}.language-button>svg{display:none}.header-journey{padding-inline:var(--space-2);font-size:var(--text-xs);gap:0;min-width:56px}.header-journey>svg,.header-journey-count{display:none}.journey-strip{display:none}
.btn::before,.icon-btn::before,.language-button::before{border-radius:var(--button-radius)}.btn-secondary::before,.icon-btn::before,.language-button::before{background:var(--surface-subtle)}.btn-secondary:hover::before{background:var(--neutral-100)}
.workspace,body[data-workspace=resident] .workspace{padding-top:var(--space-4)}.panel,.stat-card,.pillar{border-radius:var(--radius-md)}
body[data-workspace=resident] .mobile-nav{position:fixed;z-index:30;inset:auto 0 0;display:flex;align-items:stretch;gap:var(--space-1);padding:var(--space-1) var(--space-2) calc(var(--space-1) + env(safe-area-inset-bottom));border-top:var(--hairline) solid var(--border);border-bottom:0;box-shadow:0 -4px 20px #182b4105;background:var(--surface)}
body[data-workspace=resident] .mobile-nav .nav-link{flex-direction:column;gap:var(--space-1);min-height:48px;padding:var(--space-1);font-size:11px;line-height:1.3;border-radius:var(--radius-md)}body[data-workspace=resident] .mobile-nav .nav-link svg{width:var(--space-5);height:var(--space-5)}body[data-workspace=resident] .mobile-nav .nav-link.active{background:var(--accent-soft);font-weight:600}
body[data-workspace=resident] .workspace{padding-bottom:calc(80px + env(safe-area-inset-bottom))}body[data-workspace=resident] .toasts{bottom:calc(76px + env(safe-area-inset-bottom))}
.rn-new-request .rn-form-aside{order:initial}
}
@media screen and (max-width:360px){.brand{gap:var(--space-1)}.brand-name{max-width:64px;display:block;white-space:normal;font-size:11px;line-height:1.2}.brand-sub{display:none!important}.header-journey{padding-inline:var(--space-2)}}

@media screen and (max-width:640px){
.naluri-brand{gap:var(--space-2)}.naluri-brand .brand-name{font-size:var(--text-xl);max-width:none;white-space:nowrap;line-height:1.1}.naluri-brand .brand-sub{display:block!important;font-size:10px;white-space:nowrap;line-height:1.3;margin-top:0}.naluri-brand .naluri-symbol{width:var(--space-6);height:var(--space-6);font-size:var(--text-2xl)}
.app-topbar .role-picker-trigger{background:transparent;border:0;color:var(--brand-ink)}.app-topbar .language-button::before{background:var(--brand-surface);border-color:var(--brand-line);box-shadow:none}.app-topbar .language-button:hover::before{background:var(--brand-line)}.app-topbar .header-journey::before{background:var(--brand-ink);border-color:var(--brand-ink);box-shadow:inset 0 1px 0 #ffffff4d}.app-topbar .header-journey:hover::before{background:var(--surface);border-color:var(--surface)}
h1,.rn-hero h1,.rn-detail-header h1,.office-page-header h1,.ex-heading h1{font-size:var(--text-2xl);line-height:1.2}.rn-hero h1{margin-bottom:var(--space-2)}.parent-discovery-link{min-height:var(--control);font-size:var(--text-xs)}
}
@media screen and (max-width:360px){.role-picker-trigger strong{display:none}.role-current-icon{display:inline-flex}.naluri-brand{gap:var(--space-1)}.naluri-brand .brand-name{font-size:var(--text-lg)}.naluri-brand .brand-sub{display:block!important}.role-picker-trigger{min-width:var(--control)}}

/* Five resident destinations stay reachable without horizontal scrolling. */
@media screen and (max-width:640px){
body[data-workspace=resident] .mobile-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--space-1);padding-inline:var(--space-1)}
body[data-workspace=resident] .mobile-nav .nav-link{width:100%;padding-inline:0;font-size:11px;line-height:1.3}
}

/* Use the short navigation labels on tablet widths too. */
@media screen and (min-width:641px) and (max-width:900px){
body[data-workspace=resident] .mobile-nav{padding-inline:var(--space-3);gap:var(--space-1)}
body[data-workspace=resident] .mobile-nav .nav-link{flex:1 1 0;min-width:0;padding-inline:var(--space-2)}
body[data-workspace=resident] .mobile-nav .label-full{display:none}
body[data-workspace=resident] .mobile-nav .label-compact{display:inline}
}
