/* Mobile layout studies: search portal, activity desk, tile workspace. */
.resident-search{padding:18px;background:#fff;border:1px solid #dbe4eb;border-radius:16px}
.resident-search>label{display:block;font-size:12px;margin-bottom:8px}
.resident-search input[type="search"]{font-size:16px}
.resident-search .filter-grid{margin-bottom:0}
.resident-card.card{display:flex;align-items:flex-start;gap:16px;padding:18px;text-align:left}
.resident-card>.ui-icon{display:none}
.resident-room{font-size:23px;font-weight:750;min-width:54px;color:#0879bd}
.resident-room small{display:block;font-size:10px;font-weight:400}
.resident-card-body{display:flex;flex:1;flex-direction:column;gap:8px;min-width:0}
.resident-card-body>b{font-size:16px;overflow-wrap:anywhere}
.resident-card-body>small{font-size:11px;color:#6a7d89}
.resident-badges{display:flex;flex-wrap:wrap;gap:5px;font-size:10px}
.resident-badges>span{padding:3px 7px;border-radius:5px;background:#edf4f9;color:#39627c}
.resident-badges .resident-former{background:#eee;color:#666}
body[data-pattern="midnight"] .resident-search{background:#1e2c3e;border-color:#34465c}
body[data-pattern="midnight"] .resident-room{color:#bcd6a7}
body[data-pattern="midnight"] .resident-card-body>small{color:#adc1d6}
.pattern-preview-calm .preview-rail{display:none}
.pattern-preview-calm .preview-stats{display:block;background:#d5e5ce;height:24px;border-radius:6px}
.pattern-preview-calm .preview-cards{flex-direction:column;gap:3px}
.pattern-preview-calm .preview-cards i{height:10px;flex:auto;border-radius:0;border-bottom:1px solid #c5d5bf;background:transparent}
.pattern-preview-dashboard .preview-cards{border-left:2px solid #ca9f79;padding-left:8px;flex-direction:column;gap:4px}
.pattern-preview-dashboard .preview-cards i{height:12px;flex:auto}
.pattern-preview-midnight .preview-rail,.pattern-preview-midnight .preview-line{display:none}
.pattern-preview-midnight .preview-stats{display:grid;grid-template-columns:1fr 1fr;gap:5px}
.pattern-preview-midnight .preview-stats i{height:28px;border-radius:7px}
.pattern-preview-midnight .preview-stats i:last-child{grid-column:1/-1;background:#bcd6a7;height:20px}
body:not(.pattern-selecting)[data-pattern]:not([data-pattern="classic"]) header{padding:16px 22px;background:transparent;display:flex;align-items:center;gap:12px;border-bottom:1px solid #80808026}
body:not(.pattern-selecting)[data-pattern]:not([data-pattern="classic"]) header h1{font-size:16px;margin:0;color:inherit}
body:not(.pattern-selecting)[data-pattern]:not([data-pattern="classic"]) header p{display:none}
body:not(.pattern-selecting)[data-pattern]:not([data-pattern="classic"]) .brand{font-size:8px;letter-spacing:1px;padding:5px}
.design-heading{margin:25px 0 24px}
.design-heading>p:first-child{font-size:10px;font-weight:800;letter-spacing:2px}
.design-heading h2{font-size:30px;line-height:1.35;letter-spacing:-1px;margin:12px 0}
.design-heading>p:last-child{font-size:13px;line-height:1.8}
.design-section-title,.design-section-top h3,.workspace-bottom h3{padding:0;background:none;border:0;font-size:16px;margin:26px 0 14px;color:inherit}
.design-section-top{display:flex;align-items:center;justify-content:space-between;margin-top:26px;margin-bottom:14px;gap:8px}
.design-section-top h3{margin:0}
.design-section-top>span{font-size:9px;letter-spacing:1px;color:#6c7e73}
.design-section-top button{font-size:12px;min-height:44px;padding:8px;background:transparent}
.design-route{width:100%;display:flex;align-items:center;text-align:left;gap:14px;min-height:76px;border-radius:0;background:transparent;color:inherit;padding:16px 4px;border-bottom:1px solid #87998c30}
.design-route>span:nth-child(2){flex:1;min-width:0}
.design-route b{display:block;font-size:16px;font-weight:650}
.design-route small{display:block;font-size:11px;margin-top:4px;color:#6d7d71}
.design-route-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}
.route-arrow{font-size:23px;opacity:.5}
.share-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.share-links button{display:flex;align-items:center;justify-content:space-between;text-align:left;min-height:50px;font-size:13px;padding:12px;background:#fff;border:1px solid #dce4da;color:#3f5e43}
.share-links button span{margin-left:8px}
.portal-search{padding:20px;background:#e4eddf;border-radius:18px}
.portal-search label{display:block;font-size:13px;font-weight:700;color:#395d3c;margin-bottom:10px}
.portal-search>div{display:flex;gap:6px}
.portal-search input{width:0;flex:1;min-width:0;font-size:14px;border:0;background:white;border-radius:9px}
.portal-search button{width:50px;flex-shrink:0;background:#426a48;color:white;border-radius:9px}
.portal-search button .ui-icon{color:#fff!important}
.portal-status{display:flex;align-items:center;gap:10px;margin:12px 0 26px;padding:10px 0;border-bottom:1px solid #dce4da}
.portal-status>span{font-size:11px;color:#667669;margin-right:auto}
.portal-status button{padding:8px;background:transparent;color:#435d46;font-size:12px}
.portal-status b{font-size:20px;margin-left:5px}
.portal-bulletin{margin-top:14px}
.portal-bulletin button{display:grid;grid-template-columns:1fr auto;width:100%;text-align:left;background:transparent;color:inherit;border-radius:0;border-bottom:1px solid #dce4da;padding:16px 0}
.portal-bulletin small{font-size:10px;color:#6d7d71;grid-column:1/-1;margin-bottom:5px}
.portal-bulletin b{font-size:13px;font-weight:550}
body[data-pattern="calm"] .bottom-nav{border-radius:0;box-shadow:none}
body[data-pattern="calm"] .card.icon-card{border:0;border-bottom:1px solid #d5dfd0;border-radius:0;padding:20px 6px;box-shadow:none;background:transparent}
body[data-pattern="calm"] .card.icon-card h2{clear:none;padding:0;font-size:17px}
body[data-pattern="calm"] .card.icon-card .meta{border:0;padding-top:0}
body[data-pattern="dashboard"] main{padding:20px}
body[data-pattern="dashboard"] .design-heading h2{font-size:28px}
.priority-banner{width:100%;display:flex;align-items:center;justify-content:space-between;padding:22px;border-radius:18px;background:#843d23!important;color:#fff!important;text-align:left;gap:10px}
.priority-banner>span:first-child{display:grid;grid-template-columns:auto 1fr;column-gap:12px;row-gap:4px}
.priority-banner .ui-icon{grid-row:span 2;color:#ffdcc9!important;align-self:center}
.priority-banner small{font-size:10px;color:#ffd9c6}
.priority-banner b{font-size:16px}
.activity-summary{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #ded5ca;margin:12px 0 24px}
.activity-summary button{display:flex;align-items:center;gap:12px;padding:16px 8px;background:transparent!important;color:#493f34!important}
.activity-summary strong{font-size:32px;font-weight:600}
.activity-summary span{font-size:11px;text-align:left}
.activity-feed{border-left:1px solid #d4c4b1;margin-left:15px;padding-left:20px}
.activity-item{position:relative;display:flex;align-items:center;width:100%;text-align:left;gap:8px;background:#fff!important;color:#3d352c!important;border-radius:12px;padding:16px;margin-bottom:12px;border:1px solid #e7dfd6}
.activity-marker{position:absolute;left:-34px;top:18px;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#f1e0ce;color:#825330;font-size:10px;border:3px solid #f5f3ef}
.activity-item>span:nth-child(2){flex:1;min-width:0}
.activity-item small{display:block;color:#7f7162;font-size:10px;line-height:1.6}
.activity-item b{display:block;font-size:15px;line-height:1.5;margin:6px 0}
.deadline-strip{display:flex;overflow-x:auto;gap:10px;scroll-snap-type:x mandatory;padding-bottom:10px}
.deadline-strip button{flex:0 0 76%;scroll-snap-align:start;display:flex;flex-direction:column;align-items:flex-start;text-align:left;background:#ede6dc!important;border-left:3px solid #bb7946;border-radius:3px;padding:16px;gap:6px;color:#4c3e30!important}
.deadline-strip time{font-size:11px;font-weight:700}
.deadline-strip b{font-size:14px}
.deadline-strip small{font-size:10px}
.compact-routes{display:grid;grid-template-columns:1fr 1fr;gap:0 16px;margin-bottom:26px}
.compact-routes .design-route{gap:8px;min-height:66px}
.compact-routes .design-route b{font-size:12px}
.compact-routes .design-route-icon .ui-icon{width:19px}
body[data-pattern="dashboard"] .bottom-nav{border-radius:0;background:#443a30}
body[data-pattern="dashboard"] .bottom-nav button,body[data-pattern="dashboard"] .bottom-nav .ui-icon{color:#dfcfc0}
body[data-pattern="dashboard"] .bottom-nav button.is-current{background:#6e5642;color:white}
.workspace-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
body[data-pattern="midnight"] .workspace-tile{display:flex;flex-direction:column;text-align:left;justify-content:space-between;min-height:155px;padding:18px;border-radius:22px;background:#293d55;color:#e4eefb;border:1px solid #ffffff16;gap:12px}
.workspace-tile>span{display:flex;justify-content:space-between;align-items:center;width:100%}
.workspace-tile>span>span{opacity:.6;font-size:19px}
.workspace-tile b{font-size:18px;font-weight:650}
.workspace-tile small{font-size:10px;line-height:1.6;opacity:.75}
body[data-pattern="midnight"] .workspace-tile.tile-2{grid-column:1/-1;min-height:125px;background:#bcd6a7;color:#203a26;display:grid;grid-template-columns:1fr 1fr}
.workspace-tile.tile-2>span{grid-column:1/-1}
body[data-pattern="midnight"] .workspace-tile.tile-2 .ui-icon{color:#3b5d32}
.workspace-tile.tile-2 small{align-self:center;text-align:right}
.workspace-bottom{margin-top:30px;padding:22px;border-radius:26px;background:#203044}
.workspace-bottom h3{margin:10px 0 18px}
.workspace-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:30px}
.workspace-stats button{background:transparent!important;display:flex;flex-direction:column;align-items:center;font-size:11px;gap:5px;border-right:1px solid #ffffff20;border-radius:0;padding:6px}
.workspace-stats button:last-child{border:0}
.workspace-stats strong{font-size:30px;color:#bcd6a7}
body[data-pattern="midnight"] .share-links button{background:transparent;border-color:#405269;color:#d4e3f2}
.workspace-news button{display:flex;flex-direction:column;text-align:left;gap:10px;background:transparent!important;padding:24px 0 0;width:100%}
.workspace-news small{font-size:10px;color:#adc1d6}
.workspace-news b{font-size:14px}
.workspace-news span{font-size:11px;color:#bcd6a7}
body[data-pattern="midnight"] .bottom-nav{border-radius:24px 24px 0 0}
body[data-pattern="midnight"] .section{border-radius:24px;padding:24px}
body[data-pattern="midnight"] dl{display:grid;grid-template-columns:minmax(80px,30%) 1fr;gap:0 14px}
body[data-pattern="midnight"] dt,body[data-pattern="midnight"] dd{margin:0;padding:14px 0;border-bottom:1px solid #ffffff16;border-top:0}
body[data-pattern="midnight"] dd{font-size:13px}
@media(prefers-reduced-motion:no-preference){.design-route,.workspace-tile,.pattern-option{transition:transform .15s}.workspace-tile:active,.design-route:active{transform:scale(.98)}}
@media(max-width:360px){.design-heading h2{font-size:26px}.workspace-tile b{font-size:16px}.priority-banner b{font-size:14px}.pattern-tools{font-size:10px}}
