/* Touch navigation and forms; desktop compositions keep their original layout. */
.mobile-menu-close,.mobile-menu-backdrop{display:none}
.sidebar{overflow-y:auto;overscroll-behavior:contain}.sidebar>nav,.sidebar>.brand-logo,.sidebar>.workspace-switch,.sidebar>.nav-caption,.sidebar>.sidebar-note,.sidebar>.sidebar-user{flex-shrink:0}
body.studio-modal-open,body.mobile-menu-open{overflow:hidden}
.crm-modal,.crm-drawer,.modal{overscroll-behavior:contain}
@media(max-width:1020px){
 .shell{display:block}.main{grid-column:auto}.topbar{height:65px}.mobile-menu-btn{display:grid}
 .sidebar{transform:translateX(-100%);transition:transform .2s;width:min(300px,calc(100vw - 48px));z-index:60;padding-top:max(65px,env(safe-area-inset-top));overflow-y:auto;overscroll-behavior:contain;gap:0}
 .sidebar.open{transform:none}
 .sidebar .brand-logo{padding-right:15px}.sidebar .workspace-switch{margin:25px 0 20px}
 .sidebar .sidebar-note{margin-top:22px}.sidebar .sidebar-user{margin-top:auto;padding-bottom:env(safe-area-inset-bottom)}
 .mobile-menu-close{display:grid;position:absolute;right:12px;top:max(10px,env(safe-area-inset-top));color:#e0c08d;width:44px;height:44px}
 .mobile-menu-backdrop:not([hidden]){display:block;position:fixed;inset:0;z-index:55;background:#0b0b0b80;backdrop-filter:blur(2px);padding:0}
 .crm-is-focused .sidebar{display:flex}.mobile-menu-btn,.topbar .quiet-btn{width:44px;height:44px;flex-shrink:0}
 .topbar{gap:6px}.breadcrumb{min-width:0;gap:7px;line-height:1.5}.breadcrumb>span:last-child{overflow-wrap:anywhere}
 .topbar-right{gap:4px}.topbar .cloud-status-btn{min-width:28px;min-height:44px;padding:6px}
 .sidebar .nav-item{min-height:48px}.sidebar .sidebar-user>.icon-btn{min-width:44px;min-height:44px}
 .modal{max-height:calc(100dvh - 28px)}.modal-overlay{padding:14px}.modal .btn{min-height:44px}.modal-head{position:sticky;top:0;z-index:2;background:#fff;padding-top:16px;padding-bottom:12px;gap:8px}.modal-head h2{min-width:0;overflow-wrap:anywhere}
 .modal .icon-btn,.crm-modal .icon-btn,.crm-drawer .icon-btn{min-width:44px;min-height:44px;flex-shrink:0}
 .modal .field input:not([type=checkbox]):not([type=color]),.modal .field textarea,.modal .field select,
 .crm-modal .field input:not([type=checkbox]):not([type=color]),.crm-modal .field textarea,.crm-modal .field select,
 .crm-drawer .field input:not([type=checkbox]):not([type=color]),.crm-drawer .field textarea,.crm-drawer .field select,
 .settings-card input:not([type=checkbox]):not([type=color]),.settings-card textarea,.settings-card select{font-size:16px;min-height:44px}
 .settings-card .color-input-row input[type=text]{font-size:16px}
 .settings-card .btn,.settings-header-actions .btn,.account-session .icon-btn,.account-close-section .btn{min-height:44px}
 .identity-mobile-bar{padding-bottom:max(12px,env(safe-area-inset-bottom));z-index:35}.identity-mobile-bar .btn,.identity-mobile-bar>a{min-height:44px}
 .identity-preview-panel{scroll-margin-top:20px}.identity-palettes button{min-height:68px}
 .account-profile-banner h2{overflow-wrap:anywhere}.settings-intro>.btn{min-height:44px}.account-data-actions button,.account-data-actions a{min-height:64px}
 .account-session small{line-height:1.7}.account-session{flex-wrap:wrap}.account-session>div{min-width:130px}
}
@media(max-width:600px){
 .crm-modal{padding:20px 18px}.crm-modal>header{position:sticky;top:-20px;z-index:2;background:#fbfaf7;padding-top:16px;padding-bottom:12px;margin-top:-16px;gap:8px}
 .crm-modal>header h2{font-size:28px;min-width:0;overflow-wrap:anywhere}.crm-modal .modal-footer{padding-bottom:max(4px,env(safe-area-inset-bottom));flex-wrap:wrap}
 .crm-modal .modal-footer .btn{min-height:44px;white-space:normal;flex:1;min-width:90px}
 .crm-drawer{height:100dvh;padding-bottom:max(30px,env(safe-area-inset-bottom));scroll-padding-top:75px}
 .crm-drawer-header{position:sticky;top:-18px;z-index:2;background:#fbfaf7;padding-top:12px;margin-top:-12px;padding-bottom:12px}
 .crm-drawer .btn,.crm-contact-channels a,.crm-linked-proposal .btn{min-height:44px}
 .crm-profile-actions{flex-wrap:wrap}.crm-linked-proposal>div{flex-wrap:wrap}
 .crm-workspace-header h1{font-size:30px}.crm-workspace-header h1 em{font-size:37px}
 .crm-header-actions>.btn{min-height:44px;font-size:11px;padding:11px;white-space:normal}
 .crm-workspace-stats span{font-size:9px;letter-spacing:.5px}.crm-workspace-stats small{font-size:11px}.crm-workspace-stats strong{font-size:30px}
 .crm-workspace-tabs .crm-tabs{gap:21px;scrollbar-width:thin}.crm-tabs button{min-height:48px;font-size:13px}.crm-workspace-tools .icon-btn{width:44px;height:44px}.crm-workspace-tools .btn{min-height:44px;font-size:11px}
 .crm-search input,.crm-toolbar-options>select,.crm-select-label select,.crm-inline-sort select{font-size:16px;min-height:44px}
 .crm-search{padding-top:3px;padding-bottom:3px}.crm-toolbar-options>select{flex:1;min-width:0;max-width:100%}
 .crm-quick-filters{gap:7px}.crm-quick-filters button{min-height:40px;font-size:11px;padding:10px}.crm-quick-filters>a{min-height:44px;font-size:11px;display:flex;align-items:center}
 .crm-task-check{position:relative;width:24px;height:24px;margin:10px;flex:0 0 24px}.crm-task-check:before{content:'';position:absolute;inset:-10px}
 .crm-overview-task{gap:4px}.crm-overview-task strong{font-size:12px}.crm-overview-task>div>button{font-size:11px;min-height:34px;text-align:left}.crm-overview-task time{font-size:10px;max-width:65px}
 .crm-dash-heading>.btn{min-height:44px;font-size:10px}.crm-dash-heading{gap:10px}.crm-dash-heading h2{font-size:27px}
 .crm-stage-summary,.crm-review-items>button{min-height:64px}.crm-segmented{display:flex;flex-wrap:wrap}.crm-segmented button{min-height:44px;font-size:11px}
 .crm-agenda-toolbar>.btn{min-height:44px;font-size:11px}.crm-week-strip{scroll-snap-type:x proximity}.crm-week-strip button{scroll-snap-align:start;min-height:96px}
 .crm-agenda-row{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:3px 8px;padding:15px 12px}.crm-agenda-row>.crm-task-check{grid-column:1;grid-row:1/3}.crm-agenda-row>time{grid-column:2;grid-row:1;font-size:12px;min-width:0}.crm-agenda-row>div{grid-column:2;grid-row:2;min-width:0}.crm-agenda-row>.icon-btn{grid-column:3;grid-row:1/3;align-self:start;min-width:44px;min-height:44px}
 .crm-agenda-row strong{font-size:13px}.crm-agenda-row .crm-text-button{font-size:11px;min-height:36px}.crm-agenda-row p{font-size:11px}.crm-task-type{font-size:9px;line-height:1.6}
 .crm-board{scroll-snap-type:x proximity;grid-template-columns:repeat(6,minmax(245px,86%))}.crm-column{scroll-snap-align:start}.crm-card-move select{font-size:16px;min-height:44px}.crm-column-add{min-width:44px;min-height:44px}
 .crm-list-summary,.crm-list-summary>div{align-items:flex-start;flex-wrap:wrap;gap:12px}.crm-list-summary>div{width:100%;justify-content:space-between}.crm-list-summary>span{font-size:12px}.crm-list-summary .crm-text-button,.crm-inline-sort{font-size:11px}.crm-list-summary .crm-text-button{min-height:44px}
 .crm-table-wrap:has(.crm-contact-table){border:0;background:transparent;overflow:visible}
 .crm-contact-table{display:block;min-width:0;width:100%}.crm-contact-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.crm-contact-table tbody{display:grid;gap:14px}
 .crm-contact-table tr{display:grid;grid-template-columns:44px minmax(0,1fr) minmax(0,1fr);border:1px solid #ded7cb;background:#fff;padding:10px 12px;gap:0 10px}.crm-contact-table tr.selected{background:#faf5e9;border-color:#bd9d6b}
 .crm-contact-table td{display:block;min-width:0;max-width:none;white-space:normal;padding:11px 0;border:0;font-size:13px;overflow-wrap:anywhere}.crm-contact-table td[data-label]:before{content:attr(data-label);display:block;font-size:9px;letter-spacing:.5px;color:#8a7b65;margin-bottom:8px}
 .crm-contact-table .crm-col-select{grid-column:1;grid-row:1;display:grid;place-items:start center;padding-top:5px}.crm-col-select input{width:24px;height:24px;margin:10px;cursor:pointer}
 .crm-contact-table .crm-col-contact{grid-column:2/4;grid-row:1}.crm-contact-table .crm-contact-name{min-height:44px}.crm-contact-table .crm-contact-name strong{font-size:14px}.crm-contact-table .crm-contact-name small{font-size:12px}.crm-contact-table .crm-avatar{display:none}.crm-row-tags{flex-wrap:wrap}
 .crm-contact-table .crm-col-stage{grid-column:2;grid-row:2;border-top:1px solid #eee8df}.crm-contact-table .crm-col-value{grid-column:3;grid-row:2;border-top:1px solid #eee8df;font-size:14px}.crm-contact-table .crm-stage{white-space:normal;line-height:1.5}.crm-contact-table td>small{font-size:11px;line-height:1.7}
 .crm-contact-table .crm-col-next,.crm-contact-table .crm-col-source{grid-column:2/4;border-top:1px solid #eee8df}.crm-contact-table .crm-task-hint{font-size:12px;margin-top:0}.crm-source-label{font-size:11px}
 .crm-bulk-bar .btn,.crm-bulk-bar .crm-text-button{min-height:44px;font-size:11px}.crm-bulk-bar{align-items:center}.crm-bulk-bar>strong{font-size:12px}.crm-workflow-fields label input{font-size:16px}.crm-workflow-fields>div{grid-template-columns:40px minmax(0,1fr) 70px}.crm-workflow-fields>div>input[type=color]{width:40px;min-height:44px}
 .account-profile-banner .account-online{flex-basis:100%;margin-left:64px}.account-profile-banner>div:nth-child(2){flex:1 1 140px}.crm-contact-channels a{font-size:12px}.crm-form-error,.crm-conflict{font-size:12px}.crm-footnote{font-size:10px;line-height:1.8}
}
@media(max-width:360px){
 .topbar{padding:0 8px}.breadcrumb{font-size:10px;gap:5px}.topbar-right{margin-left:auto}.topbar .cloud-status-btn{min-width:18px;width:18px;padding:0}.content{padding-left:14px;padding-right:14px}
 .crm-workspace-header h1{font-size:27px}.crm-workspace-header h1 em{font-size:33px}.crm-workspace-stats>div,.crm-workspace-stats>button{padding:17px 12px}.crm-workspace-stats strong{font-size:22px;white-space:nowrap;letter-spacing:-.5px}
 .crm-dash-card{padding:20px 14px}.crm-dash-heading h2{font-size:25px}.crm-dash-heading>.btn{gap:5px;padding:10px 7px}.settings-header-actions{gap:7px}.settings-header-actions .btn{font-size:10px}
 .settings-card{padding:21px 15px}.account-profile-banner{padding:20px 15px}.account-profile-banner .account-online{margin-left:0}.account-overview>div{padding:17px 14px}
 .crm-contact-table tr{grid-template-columns:36px minmax(0,1fr) minmax(0,1fr);padding:8px;gap:0 8px}.crm-col-select input{margin:10px 6px}.crm-contact-table .crm-col-value{font-size:12px}
}
