/* Dedicated mobile layout for NEMEZIDA. Desktop remains untouched. */
.mobileTopbar,.mobileBottomNav,.mobileDrawerBackdrop{display:none}
@media (max-width:980px){
  :root{
    --mobile-top:calc(56px + env(safe-area-inset-top,0px));
    --mobile-bottom:64px;
    --mobile-safe-bottom:env(safe-area-inset-bottom,0px);
  }
  html,body{width:100%;height:var(--mobile-app-height,100dvh)!important;min-height:0!important;overflow:hidden!important;overscroll-behavior:none}
  body{background-attachment:scroll!important}
  .shell{height:var(--mobile-app-height,100dvh)!important;min-height:0!important;overflow:hidden!important}
  .grid4{
    position:relative!important;
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    overflow:hidden!important;
    padding-top:var(--mobile-top)!important;
    padding-bottom:calc(var(--mobile-bottom) + var(--mobile-safe-bottom))!important;
  }

  .mobileTopbar{
    position:fixed;z-index:2600;left:0;right:0;top:0;height:var(--mobile-top);
    display:flex;align-items:center;gap:8px;padding:calc(7px + env(safe-area-inset-top,0px)) 9px 7px;
    background:rgb(17 31 48 / 96%);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);
    box-shadow:0 1px 0 rgb(149 187 255 / 8%);
  }
  .mobileIconBtn{
    position:relative;display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;
    border:0;border-radius:11px;background:rgb(46 70 101 / 51%);color:#c9d8e9;font-size:15px;cursor:pointer;
  }
  .mobileIconBtn:active,.mobileIconBtn:hover{background:#95bbff24!important;color:#fff}
  .mobileBrand{min-width:0;flex:1;display:flex;align-items:center;gap:8px}
  .mobileBrand img{width:32px;height:32px;object-fit:contain}
  .mobileBrand>div{min-width:0;display:flex;flex-direction:column}
  .mobileBrand b{font-size:12px;line-height:1.1;letter-spacing:.04em;color:#f0f5fb}
  .mobileBrand span{margin-top:2px;max-width:42vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;color:#8298b1}
  .mobileTopActions{display:flex;align-items:center;gap:4px}
  .mobileTopActions .mobileIconBtn{width:36px;height:36px;flex-basis:36px}
  .mobileBotMini img{width:21px;height:21px;object-fit:contain}
  .mobileNotificationBtn span{
    position:absolute;right:-2px;top:-3px;min-width:17px;height:17px;padding:0 4px;border-radius:999px;
    display:grid;place-items:center;background:#bd4d56;color:#fff;font-size:9px;font-weight:900;
  }
  .mobileNotificationBtn span[hidden],#mobileChatsBtn[hidden]{display:none!important}

  .mobileBottomNav{
    position:fixed;z-index:2600;left:0;right:0;bottom:0;height:calc(var(--mobile-bottom) + var(--mobile-safe-bottom));
    display:grid;grid-template-columns:repeat(5,1fr);align-items:start;padding:5px 5px var(--mobile-safe-bottom);
    background:rgb(17 31 48 / 97%);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);
    box-shadow:0 -1px 0 rgb(149 187 255 / 8%);
  }
  .mobileBottomNav button{
    min-width:0;height:54px;border:0;border-radius:11px;background:transparent;color:#71879f;
    display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font:inherit;cursor:pointer;
  }
  .mobileBottomNav button i{font-size:16px}
  .mobileBottomNav button span{font-size:9px;font-weight:800}
  .mobileBottomNav button.active,.mobileBottomNav button:active{background:#95bbff24;color:#e9f2fd}

  .mobileDrawerBackdrop{
    position:fixed;z-index:2690;inset:0;display:block;background:rgb(2 8 15 / 58%);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)
  }
  .mobileDrawerBackdrop[hidden]{display:none!important}

  #crmNav,#gptNav{
    position:fixed!important;z-index:2700!important;top:0!important;bottom:0!important;
    width:min(86vw,340px)!important;max-width:340px!important;height:var(--mobile-app-height,100dvh)!important;
    padding:8px 10px calc(12px + env(safe-area-inset-bottom,0px))!important;
    background:rgb(18 31 47 / 99%)!important;backdrop-filter:blur(4px)!important;-webkit-backdrop-filter:blur(4px)!important;
    overflow-y:auto!important;overscroll-behavior:contain;
    transition:transform .22s ease!important;
  }
  #crmNav{left:0!important;right:auto!important;transform:translateX(-104%)!important;box-shadow:18px 0 48px rgb(0 0 0 / 35%)}
  #gptNav{right:0!important;left:auto!important;transform:translateX(104%)!important;box-shadow:-18px 0 48px rgb(0 0 0 / 35%)}
  body.mobile-crm-drawer-open #crmNav{transform:translateX(0)!important}
  body.mobile-gpt-drawer-open #gptNav{transform:translateX(0)!important}
  #crmNav .navTitle,#gptNav .navTitle{position:sticky;top:-8px;z-index:3;margin:0 -2px 8px;padding:11px 4px;background:rgb(18 31 47 / 98%)}
  #crmNav .navToggle,#gptNav .navToggle{display:none!important}
  #crmNav .navItem,#gptNav .sectionBtn,#gptNav .chatItem{min-height:46px!important;margin:3px 0!important;border-radius:12px!important;font-size:13px!important}
  #crmNav .navBottom{padding-bottom:4px}
  .work.crm,.work.gpt{
    position:absolute!important;z-index:1!important;left:0!important;right:0!important;top:var(--mobile-top)!important;
    bottom:calc(var(--mobile-bottom) + var(--mobile-safe-bottom))!important;
    width:100%!important;height:auto!important;min-width:0!important;min-height:0!important;
    flex:none!important;flex-basis:auto!important;transform:none!important;transition:none!important;pointer-events:auto!important;
    overflow:hidden!important;
  }
  .work.gpt{display:none!important}
  body.mobile-gpt-active .work.crm{display:none!important}
  body.mobile-gpt-active .work.gpt{display:flex!important}
  .grid4.is-crm-collapsed .work.crm,.grid4.is-gpt-collapsed .work.gpt,
  .grid4.is-crm-collapsed .work.gpt,.grid4.is-gpt-collapsed .work.crm{
    flex-basis:auto!important;transform:none!important;pointer-events:auto!important;
  }

  .workHeader{
    flex:0 0 50px!important;height:50px!important;min-height:50px!important;padding:6px 10px!important;
    background:rgb(30 48 72 / 78%)!important;backdrop-filter:blur(4px)!important;-webkit-backdrop-filter:blur(4px)!important;
  }
  .workTitle{min-width:0;max-width:52vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px!important;color:#e8f0fa!important}
  .crmHeaderTools{gap:5px!important}
  .crmHeaderTools>.crmGlobalSearchBtn,.crmHeaderTools>.assistantBotBtn,.crmHeaderTools>.headerNotificationBtn{display:none!important}
  .workActions{gap:5px!important}
  .workActions .btn,.workActions .fileBtn{min-width:0!important;width:auto!important;height:36px!important;padding:0 10px!important;border-radius:10px!important;font-size:10px!important}
  .workBody,.crmBody{min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;padding:10px!important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
  body.calendar-screen .grid4{min-height:0!important;height:100%!important}
  body.calendar-screen .nav,body.calendar-screen .workBody,body.calendar-screen .messages{overflow:auto!important}
  body.calendar-screen .work.crm>.workHeader{display:flex!important}

  .work.gpt>.workHeader{flex-basis:46px!important;height:46px!important;min-height:46px!important}
  .work.gpt.gptDepartmentMode .gptAiHost{height:calc(100% - 46px)!important}
  .gptAlt{padding:0!important}
  .gptAiHost>.entityAiChat{border-radius:0!important}
  .entityAiChat{height:100%!important;min-height:0!important;border-radius:0!important}
  .entityAiHead{padding:10px 11px!important;gap:8px!important}
  .entityAiMark{width:34px!important;height:34px!important}
  .entityAiHead h3{font-size:14px!important}
  .entityAiHead p{font-size:10px!important;max-width:50vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .entityAiContextBtn{height:32px!important;padding:0 8px!important}
  .entityAiTransport{padding:6px 8px!important}
  .entityAiWorkspaceTabs{padding:5px 7px 0!important;overflow-x:auto!important;scrollbar-width:none}
  .entityAiWorkspaceTabs::-webkit-scrollbar,.entityAiQuickActions::-webkit-scrollbar{display:none}
  .entityAiWorkspaceTabs button{flex:0 0 auto!important;min-height:38px!important;font-size:11px!important}
  .entityAiUnifiedBar{padding:7px 8px!important;gap:7px!important;flex-wrap:wrap!important}
  .entityAiUnifiedStatuses{width:100%;overflow-x:auto;flex-wrap:nowrap!important;scrollbar-width:none}
  .entityAiUnifiedStatus{flex:0 0 auto}
  .entityAiModelField{width:100%!important;margin:0!important}
  .entityAiModelField select{min-width:0!important;max-width:none!important;flex:1!important;height:38px!important;font-size:12px!important}
  .entityAiQuickActions{padding:7px 8px!important;gap:5px!important;overflow-x:auto!important}
  .entityAiQuickActions button{min-height:36px!important;padding:7px 9px!important;font-size:10px!important}
  .entityAiMessages{padding:13px 9px 10px!important}
  .entityAiMessage{max-width:94%!important;gap:7px!important;margin-bottom:14px!important}
  .entityAiAvatar{width:29px!important;height:29px!important;flex-basis:29px!important}
  .entityAiText{font-size:13px!important;line-height:1.5!important;padding:10px 12px!important}
  .entityAiMessageMeta{font-size:9px!important;gap:5px!important;flex-wrap:wrap}
  .entityAiComposer{padding:8px 8px calc(8px + env(safe-area-inset-bottom,0px))!important;grid-template-columns:minmax(0,1fr) 42px!important;gap:7px!important}
  .entityAiComposer textarea{min-height:50px!important;max-height:120px!important;padding:24px 11px 8px!important;font-size:16px!important}
  .entityAiComposerContext{top:12px!important;left:18px!important}
  .entityAiSend{width:42px!important;height:42px!important}
  .entityAiJumpBottom{right:12px!important;bottom:78px!important}
  .entityAiContextPanel{max-height:52%!important;padding:10px!important}
  .entityAiContextGrid,.entityAiContextOptions{grid-template-columns:1fr!important}
  .entityAiWorkPane,.entityAiHistoryPane{padding:10px!important}
  .entityAiWorkCards{grid-template-columns:1fr!important}
  body.mobile-keyboard-open .mobileBottomNav{display:none!important}
  body.mobile-keyboard-open .work.crm,body.mobile-keyboard-open .work.gpt{bottom:0!important}
  body.mobile-keyboard-open #crmNav,body.mobile-keyboard-open #gptNav{height:var(--mobile-app-height,100dvh)!important}
  body.mobile-keyboard-open .assistantBotPanel{height:var(--mobile-app-height,100dvh)!important}

  /* Dashboard and generic cards */
  .dashboardGrid,.dashboardCards,.statsGrid,.analyticsGrid,.adminStatusGrid,.adminActions,.balanceStats,.clientOverviewGrid,.caseOverviewGrid{
    grid-template-columns:1fr 1fr!important;gap:8px!important
  }
  .dashboardCard,.caseMetric,.clientOverviewMetric{min-width:0!important}
  .crmSplit,.caseOverviewColumns,.clientInfoGrid,.clientDataGrid{grid-template-columns:1fr!important}
  .pageTitle{font-size:17px!important}
  .muted{font-size:11px!important}

  /* Client list and client workspace */
  .clientListHead{align-items:stretch!important;flex-direction:column!important;gap:8px!important}
  .clientListTabs,.clientListActions{width:100%!important;display:flex!important;gap:6px!important}
  .clientListTabs{overflow-x:auto;scrollbar-width:none}
  .clientListTabs .btn{flex:1 0 auto!important;width:auto!important;min-width:125px!important}
  .clientListActions{flex-direction:column!important}
  .clientSearchBox{width:100%!important;min-width:0!important;height:42px!important}
  .clientSearchBox input{font-size:16px!important}
  .clientListActions>.btn{width:100%!important;min-height:42px!important}
  .clientListTableWrap{overflow:visible!important}
  .clientListTable{display:block!important;width:100%!important;min-width:0!important}
  .clientListTable thead{display:none!important}
  .clientListTable tbody{display:grid!important;gap:8px!important}
  .clientListTable tr{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:5px 8px!important;padding:12px!important;border-radius:13px!important;background:rgb(46 70 101 / 51%)!important}
  .clientListTable td{display:block!important;width:auto!important;padding:0!important;border:0!important;white-space:normal!important}
  .clientListTable td:first-child{font-size:14px!important;font-weight:900!important;color:#eef4fb!important}
  .clientListTable td:nth-child(2){justify-self:end}
  .clientListTable td:nth-child(3),.clientListTable td:nth-child(4){grid-column:1/-1;color:#8fa5be!important;font-size:10px!important}
  .clientListTable td:nth-child(3):before{content:"Начало: ";font-weight:800;color:#aec1d8}
  .clientListTable td:nth-child(4):before{content:"Ответственный: ";font-weight:800;color:#aec1d8}
  .clientWorkspaceHero,.clientProfileHead,.clientLibraryHead{align-items:flex-start!important;flex-direction:column!important;gap:10px!important}
  .clientWorkspaceHeroActions,.clientProfileHeadActions,.clientLibraryActions{width:100%!important;display:flex!important;flex-wrap:wrap!important}
  .clientWorkspaceHeroActions .btn,.clientLibraryActions>.btn{flex:1 1 130px!important;width:auto!important;min-height:40px!important}
  .clientWorkspaceTabs,.caseWorkspaceTabs{overflow-x:auto!important;white-space:nowrap!important;scrollbar-width:none}
  .clientWorkspaceTab,.caseWorkspaceTab{flex:0 0 auto!important;min-height:42px!important}
  .clientProfileName{font-size:20px!important}
  .clientInfoGrid,.clientDataGrid{grid-template-columns:1fr!important}
  .clientMaterialsGrid[data-view="grid"]{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .clientCard{border-radius:13px!important;padding:7px!important}
  .clientCardThumb{height:105px!important;margin-bottom:8px!important}
  .clientCardTitle{font-size:12px!important}
  .clientCardMeta{font-size:9px!important;margin-top:4px!important}
  .clientMaterialsGrid[data-view="list"] .clientCardOpen,.clientMaterialsGrid[data-view="compact"] .clientCardOpen{grid-template-columns:48px minmax(0,1fr)!important}
  .clientMaterialsGrid[data-view="list"] .clientCardMeta,.clientMaterialsGrid[data-view="compact"] .clientCardMeta{display:none!important}
  .clientSortMenu{position:fixed!important;left:12px!important;right:12px!important;bottom:calc(var(--mobile-bottom) + 10px)!important;top:auto!important;width:auto!important}
  /* Case workspace */
  .casesWorkspace{display:flex!important;flex-direction:column!important;height:auto!important;min-height:100%!important;gap:10px!important}
  .caseListPane{max-height:230px!important;min-height:0!important}
  .caseDetailPane{min-height:0!important}
  .caseWorkspaceHero{align-items:flex-start!important;flex-direction:column!important;gap:9px!important}
  .caseWorkspaceActions{width:100%!important;display:flex!important;flex-wrap:wrap!important;gap:6px!important}
  .caseWorkspaceActions .btn{flex:1 1 130px!important;width:auto!important;min-width:0!important}
  .caseOverviewGrid{grid-template-columns:1fr 1fr!important}
  .caseOverviewColumns{grid-template-columns:1fr!important}
  .caseParticipantCard,.caseNoteItem,.caseCourtCard{border-radius:12px!important}
  .caseCalendarEvent{grid-template-columns:72px minmax(0,1fr)!important}
  .caseCalendarResponsible,.caseCalendarEvent>i{display:none!important}

  /* Calendar: list-first experience on mobile */
  .calendarPage{padding-bottom:18px}
  .calendarToolbar,.calendarToolbarV2{align-items:stretch!important;flex-direction:column!important;gap:8px!important}
  .calendarMonthBlock,.calendarTopActions{width:100%!important;justify-content:space-between!important}
  .calendarMonthLabel{font-size:18px!important}
  .calendarAddBtn{min-height:40px!important}
  .calendarTopActions{align-items:center!important;flex-wrap:wrap!important}
  .calendarNavBtns,.calendarViewPills{flex:1 1 auto!important}
  .calendarViewPills{display:flex!important}
  .calendarViewPills .calPill{flex:1!important;min-height:36px!important}
  .calendarStats{grid-template-columns:1fr 1fr!important;gap:7px!important}
  .calendarFilterBar{display:grid!important;grid-template-columns:1fr!important;gap:7px!important}
  .calendarFilterBar label,.calendarFilterBar select{min-width:0!important;width:100%!important;height:42px!important;font-size:16px!important}
  .calendarMonthView,.calendarWeekdays,.calendarGrid{font-size:9px!important}
  .calendarWeekdays,.calendarGrid{gap:3px!important}
  .calCell{min-height:68px!important;padding:4px!important;border-radius:8px!important}
  .calDayNum{font-size:10px!important}
  .calEventChip{padding:3px 4px!important;font-size:8px!important}
  .calendarList{gap:7px!important}
  .calendarListItem{grid-template-columns:58px 30px minmax(0,1fr)!important;gap:7px!important;padding:10px!important}
  .calendarListResponsible,.calendarListItem>span:last-child{display:none!important}
  .calendarKindBoard{display:flex!important;flex-direction:column!important;overflow:visible!important}
  .calendarKindColumn{min-width:0!important;width:100%!important}
  .calendarProposalItem{align-items:flex-start!important;flex-direction:column!important}
  .calendarProposalActions{width:100%!important}
  .calendarProposalActions .btn{flex:1!important}
  .calendarDueBar{align-items:flex-start!important;line-height:1.4!important}

  /* Forms and modals become bottom sheets / full screen sheets */
  .calendarModalBackdrop,.entityAiSummaryBackdrop,.entityAiActionBackdrop,.entityAiLimitBackdrop,.confirmModal,.balanceModal,.auditModal,.globalSearchBackdrop{
    align-items:flex-end!important;padding:0!important;
  }
  .calendarModalCard,.entityAiSummaryModal,.entityAiActionModal,.entityAiLimitModal,.confirmModalCard,.balanceModalCard,.auditModalCard,.globalSearchPanel{
    width:100%!important;max-width:none!important;max-height:calc(var(--mobile-app-height,100dvh) - 18px)!important;
    border-radius:18px 18px 0 0!important;border-left:0!important;border-right:0!important;border-bottom:0!important;
  }
  .calendarEventFormGrid,.calendarMemberGrid,.calendarReminderGrid,.entityAiSummaryTwo,.caseEditorGrid,.taskFormGrid,.clientDataModalGrid{
    grid-template-columns:1fr!important
  }
  .calendarFieldWide,.caseEditorWide{grid-column:auto!important}
  input,textarea,select{font-size:16px!important}
  .calendarModalFooter{position:sticky!important;bottom:0!important;z-index:5!important;padding-bottom:calc(10px + env(safe-area-inset-bottom,0px))!important;background:rgb(24 40 60 / 98%)!important}
  .calendarModalFooterActions{width:100%!important;display:flex!important}
  .calendarModalFooterActions .btn{flex:1!important;min-height:42px!important;width:auto!important}
  .calendarChecklistRow{grid-template-columns:26px minmax(0,1fr) 36px!important}

  /* Documents and previews */
  .clientPreviewModal{padding:0!important;place-items:stretch!important}
  .clientPreviewCard{width:100%!important;height:var(--mobile-app-height,100dvh)!important;border-radius:0!important;padding:52px 8px 8px!important}
  .clientDocLayout{display:flex!important;flex-direction:column!important;gap:8px!important}
  .clientDocSidebar{flex:0 0 auto!important}
  .clientDocCard{height:auto!important;padding:12px!important;border-radius:14px!important}
  .clientDocBadge{width:50px!important;height:50px!important;margin-bottom:8px!important}
  .clientDocName{font-size:14px!important}
  .clientDocPreviewWrap{flex:1!important;min-height:45vh!important;padding:6px!important;border-radius:12px!important}
  .clientDocFrame{min-height:60vh!important}
  .clientPreviewCanvas.audio{grid-template-columns:1fr!important;gap:10px!important}
  .audioDisk{width:180px!important;height:180px!important}
  .audioPanel{padding:14px!important}
  .clientVideoBar{grid-template-columns:auto minmax(0,1fr)!important}
  .clientVideoBar>*:nth-child(n+3){grid-column:1/-1}
  /* Tasks, templates, employees, admin, devices */
  .taskStats{grid-template-columns:1fr 1fr!important}
  .taskFilters,.taskBoard{grid-template-columns:1fr!important}
  .taskColumn{min-width:0!important}
  .taskHero,.taskHeroActions{align-items:stretch!important;flex-direction:column!important}
  .taskHeroActions .btn{width:100%!important}
  .templateWorkspace{display:flex!important;flex-direction:column!important;height:auto!important}
  .templateLibraryPane,.templateInspectorPane{width:100%!important;max-width:none!important}
  .templateBuilderPane{min-height:60vh!important}
  .employeesTable,.employeeTable,.auditTable{min-width:0!important;width:100%!important}
  .employeesTable thead,.employeeTable thead{display:none!important}
  .employeesTable tbody,.employeeTable tbody{display:grid!important;gap:8px!important}
  .employeesTable tr,.employeeTable tr{display:block!important;padding:10px!important;border-radius:12px!important;background:rgb(46 70 101 / 51%)!important}
  .employeesTable td,.employeeTable td{display:block!important;width:100%!important;padding:4px 0!important;border:0!important}
  .employeeIdentity{min-width:0!important}
  .adminStatusGrid,.adminActions,.adminQueueGrid,.balanceStats{grid-template-columns:1fr!important}
  .devicesPage{padding:2px 0 20px!important;gap:10px!important}
  .devicesHero{flex-direction:column!important}
  .devicesHero .btn{width:100%!important}
  .deviceConnectCard,.devicesListCard{padding:12px!important;border-radius:13px!important}
  .deviceRow{grid-template-columns:38px minmax(0,1fr)!important;padding:10px!important}
  .deviceIcon{width:38px!important;height:38px!important}
  .deviceActions{grid-column:1/-1!important;display:flex!important;gap:6px!important;padding-left:48px}
  .deviceActions .btn{flex:1!important;width:auto!important}
  .deviceFolder{padding:8px!important}
  .deviceFolderHead{align-items:flex-start!important;flex-direction:column!important}
  .deviceFolderFile{grid-template-columns:18px minmax(0,1fr)!important}
  .deviceFolderFile small{grid-column:2!important}

  /* Search, bot, notifications */
  .assistantBotPanel{
    z-index:3500!important;top:0!important;right:0!important;bottom:0!important;left:0!important;
    width:100%!important;height:var(--mobile-app-height,100dvh)!important;max-height:none!important;border-radius:0!important;
  }
  .assistantBotHead{padding-top:calc(10px + env(safe-area-inset-top,0px))!important}
  .assistantBotMessages{padding:12px 9px!important}
  .botMessage{max-width:96%!important}
  .botBubble{font-size:13px!important}
  .assistantBotComposer{padding:9px 8px calc(9px + env(safe-area-inset-bottom,0px))!important}
  .assistantBotComposer textarea{font-size:16px!important}
  .notificationPanel{
    z-index:3400!important;left:0!important;right:0!important;top:0!important;width:100%!important;height:var(--mobile-app-height,100dvh)!important;
    max-height:none!important;border-radius:0!important;
  }
  .notificationPanelHeader{padding-top:calc(12px + env(safe-area-inset-top,0px))!important}
  .notificationItem{grid-template-columns:36px minmax(0,1fr) auto!important}
  .globalSearchBackdrop{z-index:3500!important}
  .globalSearchPanel{height:var(--mobile-app-height,100dvh)!important;max-height:none!important;border-radius:0!important}
  .globalSearchInputRow{padding-top:calc(14px + env(safe-area-inset-top,0px))!important}
  .globalSearchInput{font-size:16px!important}

  /* Login and profile */
  .loginModal{padding:10px!important}
  .loginCard{width:100%!important;max-width:420px!important}
  .profileModalCard{width:calc(100vw - 16px)!important;max-height:calc(var(--mobile-app-height,100dvh) - 20px)!important}

  /* Avoid horizontal overflow everywhere */
  .workBody>*,.crmBody>*,.gptAlt>*,.clientsPage,.calendarPage,.tasksPage,.devicesPage,.caseWorkspace,.casesWorkspace{max-width:100%!important;min-width:0!important}
  pre,code{white-space:pre-wrap!important;overflow-wrap:anywhere!important}
}
@media(max-width:520px){
  .mobileBrand span{max-width:30vw}
  .mobileTopActions{gap:2px}
  .mobileTopActions .mobileIconBtn{width:34px;height:34px;flex-basis:34px}
  .dashboardGrid,.dashboardCards,.statsGrid,.analyticsGrid,.clientOverviewGrid,.caseOverviewGrid,.calendarStats,.taskStats{grid-template-columns:1fr!important}
  .clientMaterialsGrid[data-view="grid"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .clientCardThumb{height:92px!important}
  .entityAiHead p{display:none!important}
  .entityAiContextBtn span,.entityAiTransport span{display:none!important}
  .entityAiMessage{max-width:98%!important}
  .workTitle{max-width:47vw}
  .calendarMonthBlock{align-items:center!important}
  .calendarMonthLabel{font-size:16px!important}
  .calendarAddBtn{padding:0 10px!important;font-size:10px!important}
}

@media(max-width:980px){
  .mobileBottomNav button[hidden]{display:none!important}
  button,a,input,textarea,select{touch-action:manipulation}
  .btn,.iconBtn,.workMenuBtn,.calMiniBtn,.calPill{min-height:40px}
  .nemezidaEditorTopbar{gap:8px!important;padding:8px!important}
  .nemezidaEditorTopActions{gap:5px!important;overflow-x:auto!important;flex-wrap:nowrap!important;scrollbar-width:none}
  .nemezidaEditorTopActions .btn{flex:0 0 auto!important}
  .nemezidaEditorToolbar{flex-wrap:nowrap!important;overflow-x:auto!important;padding:6px 8px!important;scrollbar-width:none}
  .nemezidaEditorToolbar::-webkit-scrollbar,.nemezidaEditorTopActions::-webkit-scrollbar{display:none}
  .nemezidaEditorTitle{width:100%!important;font-size:15px!important}
  .nemezidaEditorContent{font-size:15px!important}
  .documentExportRow{grid-template-columns:34px minmax(0,1fr)!important}
  .documentExportRow>.documentExportActions{grid-column:1/-1!important}
  .approvalHeaderActions,.caseDocumentHeadActions{width:100%!important}
  .approvalHeaderActions .btn,.caseDocumentHeadActions .btn{flex:1 1 120px!important;width:auto!important}
}

@media(max-width:980px){
  .modal.show{z-index:4000!important;padding:12px!important}
  .modal.show .modalCard{width:100%!important;max-width:430px!important;padding:24px 18px!important;border-radius:20px!important}
  .calendarModalBackdrop,.entityAiSummaryBackdrop,.entityAiActionBackdrop,.entityAiLimitBackdrop,.confirmModal,.balanceModal,.auditModal,.globalSearchBackdrop{z-index:3300!important}
}

@media(max-width:980px){
  .mobileDrawerClose{
    margin-left:auto;display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border:0;border-radius:10px;
    background:rgb(46 70 101 / 51%);color:#b9cade;font-size:16px;cursor:pointer
  }
  .mobileDrawerClose:hover,.mobileDrawerClose:active{background:#95bbff24!important;color:#fff}
  #crmNav .navTitle>.mobileDrawerClose,#gptNav .navTitle>.mobileDrawerClose{display:grid!important}
}

.mobileDrawerClose{display:none}

@media(max-width:980px){
  /* Admin / audit / balance: desktop micro-type becomes readable cards. */
  .adminHeader,.adminSubHead,.auditHeader,.employeeBalanceHeader{align-items:flex-start!important;flex-direction:column!important;gap:8px!important}
  .adminStatusGrid,.adminActions,.balanceCards{grid-template-columns:1fr 1fr!important}
  .adminStatusBody>span,.adminStatusBody>small,.adminStatus,.adminActions small,.adminNote,.adminPanelHead span,.adminSegment button,
  .adminList span,.adminList small,.adminEmpty,.balanceKicker,.balanceEmployeeSelect span,.balanceTabs button,.balanceCards span,
  .balancePanelHead span,.balanceInvoiceCreate input,.balanceFilters input,.balanceFilters select,.analyticsPeriod input,.rateForm input,.rateForm select,
  .balanceFilters button,.analyticsPeriod button,.rateForm button,.unratedList button,.balanceTable th,.balanceTable td,.balanceTable td small{
    font-size:10px!important
  }
  .adminStatusBody b,.adminActions b,.adminPanelHead b,.adminList b,.balancePanelHead b,.balanceTable td b{font-size:11px!important}
  .adminActions button{min-height:66px!important}
  .adminLog{font-size:10px!important;min-height:260px!important}
  .adminTableWrap,.auditTableWrap,.balanceTableWrap{overflow-x:hidden!important}
  .adminTable,.auditTable,.balanceTable{min-width:0!important;width:100%!important}
  .adminTable thead,.auditTable thead,.balanceTable thead{display:none!important}
  .adminTable tbody,.auditTable tbody,.balanceTable tbody{display:grid!important;gap:7px!important;padding:7px!important}
  .adminTable tr,.auditTable tr,.balanceTable tr{display:block!important;padding:9px 10px!important;border-radius:11px!important;background:rgb(46 70 101 / 51%)!important}
  .adminTable td,.auditTable td,.balanceTable td{display:block!important;width:100%!important;max-width:none!important;padding:3px 0!important;border:0!important;font-size:10.5px!important;white-space:normal!important}
  .auditActor span,.auditEvent b,.auditActor small,.auditEvent small,.auditCategory,.auditOrigin{font-size:10px!important}
  .auditEvent b{max-width:none!important}
  .auditDiff{max-width:none!important}
  .auditStats{width:100%!important;display:grid!important;grid-template-columns:repeat(3,1fr)!important}
  .auditStats article{min-width:0!important}
  .auditStats span{font-size:9px!important}
  .auditFilters{grid-template-columns:1fr!important}
  .auditSearch{grid-column:auto!important}
  .auditFilters input,.auditFilters select,.auditFilters button{height:40px!important;font-size:12px!important}
  .auditSearch i{top:14px!important;font-size:10px!important}
  .auditDetailGrid,.auditJsonGrid{grid-template-columns:1fr!important}
  .auditDetailGrid span,.auditDetailGrid b,.auditJson h4,.auditJson pre,.auditJson>div{font-size:10px!important}
  .balanceEmployeeSelect{width:100%!important;align-items:stretch!important;flex-direction:column!important}
  .balanceEmployeeSelect select{width:100%!important;height:42px!important;font-size:16px!important}
  .balanceTabs{width:100%!important;overflow-x:auto!important;scrollbar-width:none}
  .balanceTabs button{flex:0 0 auto!important;height:38px!important}
  .balancePanelHead{align-items:stretch!important;flex-direction:column!important}
  .balanceInvoiceCreate,.balanceFilters,.analyticsPeriod{flex-wrap:wrap!important}
  .balanceInvoiceCreate input,.balanceFilters input,.balanceFilters select,.analyticsPeriod input{min-height:40px!important;font-size:16px!important}
}
@media(max-width:520px){
  .adminStatusGrid,.adminActions,.balanceCards{grid-template-columns:1fr!important}
}

@media(max-width:980px){
  .notificationPanel,.globalSearchPanel,.calendarModalCard,.confirmModalCard,.balanceModalCard,.auditModalCard,
  .entityAiSummaryModal,.entityAiActionModal,.entityAiLimitModal,.taskModalCard,.profileModalCard,.clientDataModalCard{
    background:rgb(20 36 55 / 98%)!important;border-color:transparent!important;box-shadow:0 -18px 48px rgb(0 0 0 / 28%)!important
  }
  .notificationPanelHeader,.notificationPanelToolbar,.globalSearchInputRow,.entityAiSummaryModalHead,.entityAiSummaryModalFoot,
  .balanceModalHead,.balanceModalFoot,.auditModalHead{
    background:rgb(46 70 101 / 51%)!important;border-color:transparent!important
  }
  .notificationItem.unread,.notificationItem:hover,.notificationItem.unread:hover,.notificationIcon,.notificationTabs,.notificationTab.active,
  .globalSearchResult:hover,.globalSearchResult.isActive,.globalSearchIcon{
    background:#95bbff24!important
  }
  .notificationItemText b,.globalSearchTitle{color:#edf4fc!important}
  .notificationItemText span,.globalSearchSubtitle,.globalSearchExcerpt{color:#9fb2c9!important}
  .globalSearchInput{color:#f2f6fb!important}
  .assistantBotPanel{background:rgb(20 36 55 / 99%)!important}
  .assistantBotHead,.assistantBotComposer{background:rgb(46 70 101 / 51%)!important}
  .clientCardMore{width:36px!important;height:36px!important;top:5px!important;right:5px!important}
}

@media(max-width:980px){
  /* AI chat v2 mobile: conversation first, controls on demand. */
  .work.gpt.gptDepartmentMode>.workHeader{display:none!important}
  .work.gpt.gptDepartmentMode .gptAiHost{height:100%!important;min-height:0!important}
  .work.gpt.gptDepartmentMode .entityAiChat{height:100%!important;min-height:0!important}
  .work.gpt.gptDepartmentMode .entityAiHead{padding:8px 9px!important;gap:7px!important}
  .work.gpt.gptDepartmentMode .entityAiMark{width:32px!important;height:32px!important;border-radius:10px!important}
  .work.gpt.gptDepartmentMode .entityAiHead h3{font-size:14px!important}
  .work.gpt.gptDepartmentMode .entityAiHead p{display:none!important}
  .work.gpt.gptDepartmentMode .entityAiContextBtn{height:30px!important;padding:0 8px!important}
  .work.gpt.gptDepartmentMode .entityAiContextBtn span{display:none!important}
  .work.gpt.gptDepartmentMode .entityAiTransport{height:30px!important;padding:0 8px!important}
  .work.gpt.gptDepartmentMode .entityAiTransport span{display:none!important}
  .work.gpt.gptDepartmentMode .entityAiWorkspaceTabs{padding:3px 6px 0!important;gap:2px!important}
  .work.gpt.gptDepartmentMode .entityAiWorkspaceTabs button{
    flex:1 1 0!important;justify-content:center!important;min-width:0!important;min-height:36px!important;
    padding:6px 5px!important;font-size:10px!important
  }
  .work.gpt.gptDepartmentMode .entityAiWorkspaceTabs button i{display:inline-block!important;font-size:10px!important}
  .work.gpt.gptDepartmentMode .entityAiUnifiedBar{
    display:grid!important;grid-template-columns:minmax(0,1fr) auto auto!important;align-items:center!important;
    min-height:0!important;padding:5px 7px!important;gap:5px!important
  }
  .work.gpt.gptDepartmentMode .entityAiUnifiedStatuses{
    grid-column:1/-1!important;width:100%!important;display:flex!important;overflow-x:auto!important;gap:4px!important;
    flex-wrap:nowrap!important;scrollbar-width:none
  }
  .work.gpt.gptDepartmentMode .entityAiUnifiedStatus{flex:0 0 auto!important;padding:4px 6px!important;font-size:8.5px!important}
  .work.gpt.gptDepartmentMode .entityAiUnifiedStatus b{font-size:9px!important}
  .work.gpt.gptDepartmentMode .entityAiReset{display:none!important}
  .work.gpt.gptDepartmentMode .entityAiModelField{grid-column:1!important;width:100%!important;margin:0!important}
  .work.gpt.gptDepartmentMode .entityAiModelField select{width:100%!important;max-width:none!important;height:34px!important;font-size:11px!important}
  .work.gpt.gptDepartmentMode .entityAiModeField:not([hidden]){grid-column:1/-1!important}
  .work.gpt.gptDepartmentMode .entityAiToolsToggle{grid-column:2!important;width:38px!important;height:34px!important;padding:0!important}
  .work.gpt.gptDepartmentMode .entityAiToolsToggle span{display:none!important}
  .work.gpt.gptDepartmentMode .entityAiOpenChatgpt{grid-column:3!important;width:38px!important;height:34px!important}

  .work.gpt.gptDepartmentMode .entityAiToolsPanel{max-height:45vh!important;padding:8px!important}
  .work.gpt.gptDepartmentMode .entityAiToolsHead{margin-bottom:6px!important}
  .work.gpt.gptDepartmentMode .entityAiToolsHead span{display:none!important}
  .work.gpt.gptDepartmentMode .entityAiToolsPanel .entityAiQuickActions{grid-template-columns:1fr 1fr!important;gap:5px!important}
  .work.gpt.gptDepartmentMode .entityAiToolsPanel .entityAiQuickActions button{min-height:40px!important;font-size:10px!important}

  .work.gpt.gptDepartmentMode .entityAiMessages{
    flex:1 1 auto!important;min-height:0!important;padding:12px 8px 8px!important;overflow-y:auto!important;
    overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important
  }
  .work.gpt.gptDepartmentMode .entityAiMessage{max-width:97%!important;gap:6px!important;margin-bottom:13px!important}
  .work.gpt.gptDepartmentMode .entityAiMessage.user{max-width:90%!important}
  .work.gpt.gptDepartmentMode .entityAiAvatar{width:27px!important;height:27px!important;flex-basis:27px!important;border-radius:9px!important;font-size:10px!important}
  .work.gpt.gptDepartmentMode .entityAiText{padding:9px 11px!important;font-size:13.5px!important;line-height:1.48!important}
  .work.gpt.gptDepartmentMode .entityAiMessageMeta{font-size:8.5px!important;gap:4px!important}
  .entityAiMessageModel{display:none!important}
  .entityAiContextStamp{max-width:145px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .entityAiMessageTools>summary{width:30px!important;height:28px!important}

  .entityAiMessageToolsPanel{
    position:fixed!important;z-index:3550!important;left:8px!important;right:8px!important;bottom:calc(var(--mobile-bottom) + var(--mobile-safe-bottom) + 8px)!important;
    width:auto!important;max-height:min(62vh,520px)!important;border-radius:16px!important;padding:9px!important;
    background:rgb(19 34 52 / 99%)!important;box-shadow:0 18px 60px rgb(0 0 0 / 48%)!important
  }
  body.mobile-keyboard-open .entityAiMessageToolsPanel{bottom:8px!important}
  .entityAiMessageToolsPanel .entityAiResultActions{grid-template-columns:1fr!important}
  .entityAiMessageToolsPanel .entityAiResultActions button,.entityAiToolAction{min-height:42px!important;font-size:11px!important}
  .entityAiMessageToolsPanel .entityAiReviewPipeline{overflow-x:auto!important}
  .entityAiMessageToolsPanel .entityAiReviewWarnings>div{grid-template-columns:1fr!important}

  .work.gpt.gptDepartmentMode .entityAiComposer{
    flex:0 0 auto!important;position:relative!important;z-index:120!important;
    padding:7px 8px calc(7px + env(safe-area-inset-bottom,0px))!important;gap:7px!important
  }
  .work.gpt.gptDepartmentMode .entityAiComposer textarea{
    min-height:50px!important;max-height:110px!important;padding:23px 11px 7px!important;
    font-size:16px!important;background:rgb(0 0 0 / 44%)!important
  }
  .work.gpt.gptDepartmentMode .entityAiComposerContext{top:10px!important;left:17px!important}
  .work.gpt.gptDepartmentMode .entityAiComposerContext button{height:19px!important;font-size:8px!important}
  .work.gpt.gptDepartmentMode .entityAiSend{width:42px!important;height:42px!important}
  .work.gpt.gptDepartmentMode .entityAiJumpBottom{right:11px!important;bottom:72px!important}
}

@media(max-width:980px){
  .work.gpt.gptDepartmentMode .entityAiHead{
    display:grid!important;grid-template-columns:minmax(0,1fr) auto auto!important;align-items:center!important;
    min-height:44px!important;padding:6px 8px!important;gap:6px!important
  }
  .work.gpt.gptDepartmentMode .entityAiMark,.work.gpt.gptDepartmentMode .entityAiHeadText{display:none!important}
  .work.gpt.gptDepartmentMode .entityAiChatPicker{
    display:flex!important;align-items:center!important;min-width:0!important;height:34px!important;padding:0 9px!important;
    border:0!important;border-radius:10px!important;background:#95bbff24!important;color:#e7f0fb!important;
    font:inherit!important;font-size:11.5px!important;font-weight:800!important;cursor:pointer
  }
  .work.gpt.gptDepartmentMode .entityAiChatPicker>span{
    min-width:0!important;flex:1!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;text-align:left!important
  }
  .work.gpt.gptDepartmentMode .entityAiChatPicker>i:first-child{margin-right:7px!important}
  .work.gpt.gptDepartmentMode .entityAiChatPicker>i:last-child{margin-left:7px!important;font-size:8px!important;color:#8fa8c4!important}
  .work.gpt.gptDepartmentMode .entityAiContextBtn{grid-column:2!important;margin:0!important}
  .work.gpt.gptDepartmentMode .entityAiTransport{grid-column:3!important;margin:0!important}
  .work.gpt.gptDepartmentMode .entityAiUnifiedStatuses{display:none!important}
  .work.gpt.gptDepartmentMode .entityAiUnifiedBar{
    grid-template-columns:minmax(0,1fr) 38px 38px!important;padding:4px 7px!important
  }
  .work.gpt.gptDepartmentMode .entityAiComposer{
    position:sticky!important;bottom:0!important;margin-top:auto!important
  }
  .work.gpt.gptDepartmentMode .entityAiMessages{
    padding-bottom:12px!important
  }
}
