/* INIZ Portal V25.6.5 — mobile object cards (approved option 2). Desktop remains unchanged. */
.iniz-mobile-sections{display:none}
.cal-filter-toggle{display:none}

@media (max-width:860px){
  html{scroll-padding-top:62px;-webkit-text-size-adjust:100%}
  body.iniz-ui{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);overflow-x:hidden}
  .iniz-topbar,.iniz-topbar-home{top:0;z-index:90;height:54px;padding-left:max(10px,env(safe-area-inset-left));padding-right:max(10px,env(safe-area-inset-right))}
  .iniz-mobile-logo img{width:62px;height:36px}
  .iniz-avatar{width:34px;height:34px;font-size:11px}
  .iniz-logout{width:42px;height:42px;font-size:19px}
  .iniz-content{padding:12px 10px calc(24px + env(safe-area-inset-bottom));max-width:none}
  .iniz-content.iniz-home-content{padding-bottom:calc(22px + env(safe-area-inset-bottom))}

  /* Always-visible horizontal section selector. It replaces the hidden desktop sidebar. */
  .iniz-mobile-sections{display:none!important;position:sticky;top:54px;z-index:85;gap:5px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;padding:7px max(10px,env(safe-area-inset-left));padding-right:max(10px,env(safe-area-inset-right));background:rgba(255,255,255,.97);border-bottom:1px solid #d7e4ed;box-shadow:0 4px 12px rgba(15,49,72,.06);scrollbar-width:none}
  .iniz-mobile-sections::-webkit-scrollbar{display:none}
  .iniz-mobile-sections a{flex:0 0 auto;scroll-snap-align:start;min-height:40px;display:flex;align-items:center;gap:6px;padding:0 11px;border:1px solid #d9e6ef;border-radius:10px;background:#f8fbfd;color:#264d68!important;font-size:12px;font-weight:700;white-space:nowrap;touch-action:manipulation}
  .iniz-mobile-sections a span{font-size:16px;color:#1478d5}
  .iniz-mobile-sections a.active{background:#147ce5;border-color:#147ce5;color:#fff!important;box-shadow:0 3px 10px rgba(20,124,229,.2)}
  .iniz-mobile-sections a.active span{color:#fff}

  /* Finger-friendly generic controls and no iOS form auto-zoom. */
  input,select,textarea,button{font-size:16px!important}
  button,.button,.iniz-primary{min-height:44px;touch-action:manipulation}
  .iniz-primary{padding:10px 14px}
  .notice{overflow-wrap:anywhere}
  .scroll,.iniz-table-wrap,.ws-table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}

  /* Workspace pages */
  .ws-head{margin:0 0 12px;padding:15px 14px;border-radius:12px}
  .ws-head h1{font-size:22px;line-height:1.15}
  .ws-head p{font-size:12px;line-height:1.35}
  .ws-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;width:100%;margin-top:12px}
  .ws-search input{height:44px;min-width:0}
  .ws-search .button{min-height:44px}
  .ws-panel{border-radius:10px}
  .ws-panel-head{align-items:flex-start;flex-wrap:wrap;padding:11px 12px}
  .ws-table{min-width:720px}
  .ws-table th{font-size:10px;padding:9px 10px}.ws-table td{font-size:12px;padding:10px}
  .ws-counterparty summary{min-height:48px;padding:12px}.ws-counterparty>a{padding:11px 14px;grid-template-columns:minmax(0,1fr) auto 18px;font-size:12px}
  .ws-notice{padding:12px;grid-template-columns:12px minmax(0,1fr)}.ws-notice strong{grid-column:2}.ws-notice b{font-size:13px}.ws-notice small{font-size:11px}

  /* Linked files / folder picker */
  .ld-grid{grid-template-columns:1fr!important}.ld-folders{grid-template-columns:1fr}.ld-row{grid-template-columns:34px minmax(0,1fr)!important}.ld-row select{grid-column:2}.ld-folder-dialog{border-radius:13px}.ld-folder-item{min-height:52px}.ld-folder-item b{font-size:14px}.ld-folder-item small{font-size:11px}
}

@media (max-width:700px){
  /* Calendar header and top tabs */
  .cal-shell{margin:0;border-radius:11px;overflow:visible}
  .cal-head{display:grid;grid-template-columns:1fr;gap:10px;padding:13px 12px 8px}
  .cal-title{align-items:flex-start;gap:9px}.cal-title-ico{width:32px;height:32px;flex:0 0 32px}.cal-title h1{font-size:20px;line-height:1.1}.cal-title h1 small{font-size:15px}.cal-title p{font-size:11px;line-height:1.35}
  .cal-task-btn{width:100%;min-height:44px}
  .cal-tabs{width:auto;max-width:none;margin:4px 10px 7px;padding:0;display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;border:1px solid #dce8f0;background:#f6f9fb}
  .cal-tabs::-webkit-scrollbar{display:none}.cal-tabs a{flex:1 0 90px;min-height:42px;display:grid;place-items:center;padding:0 13px;font-size:13px}

  /* Mobile filter drawer: search is always visible; extra filters expand on demand. */
  .cal-filter-toggle{display:flex;align-items:center;justify-content:center;gap:7px;width:calc(100% - 20px);margin:8px 10px 4px;min-height:44px;border:1px solid #cbdce8;border-radius:9px;background:#f7fbfe;color:#245879;font-weight:800}
  .cal-filters{display:grid;grid-template-columns:1fr!important;gap:8px;padding:6px 10px 12px}
  .cal-filters>div:not(.cal-search),.cal-filters>.cal-filter-btn,.cal-filters>.cal-reset{display:none}
  .cal-filters.mobile-open>div,.cal-filters.mobile-open>.cal-filter-btn,.cal-filters.mobile-open>.cal-reset{display:block}
  .cal-filters label{font-size:11px;margin-bottom:4px}.cal-filters select,.cal-filters input{height:44px;font-size:16px!important;border-radius:9px}.cal-search span{top:12px;font-size:18px}.cal-filter-btn,.cal-reset{width:100%;height:44px;font-size:14px!important}.cal-reset{display:grid!important;place-items:center}.cal-filters:not(.mobile-open)>.cal-reset{display:none!important}
  .cal-view-note{margin:0 10px 10px;font-size:11px;line-height:1.4}

  /* Convert the wide desktop calendar table into readable object cards. */
  .cal-table-wrap{margin:0 10px;overflow:visible;border:0;border-radius:0;max-height:none}
  .cal-table{display:block;min-width:0;width:100%;font-size:12px}.cal-table thead{display:none}.cal-table tbody{display:grid;gap:11px}.cal-table tr{display:block;overflow:hidden;border:1px solid #d8e5ee;border-radius:11px;background:#fff;box-shadow:0 4px 12px rgba(22,59,88,.06)}
  .cal-table td{display:grid;grid-template-columns:118px minmax(0,1fr);align-items:start;gap:9px;width:100%!important;min-width:0!important;max-width:none!important;padding:8px 10px;border-right:0;border-bottom:1px solid #edf2f5;background:#fff!important;font-size:12px;line-height:1.35;text-align:left!important;white-space:normal!important;overflow-wrap:anywhere}
  .cal-table td:last-child{border-bottom:0}.cal-table td::before{content:attr(data-label);font-size:10px;line-height:1.25;color:#71899b;font-weight:700;text-transform:none;padding-top:2px}
  .cal-table .num-cell{grid-template-columns:118px 1fr;font-size:14px}.cal-table .num-cell .row-stripe{left:0;top:0;bottom:0;width:4px;border-radius:0}
  .cal-table .title-cell{padding-top:11px;padding-bottom:11px}.cal-table .title-cell a{font-size:14px;line-height:1.35}.cal-table .customer-cell b,.cal-table .contract-cell b,.cal-table .due-cell b{font-size:13px}.cal-table .customer-cell small,.cal-table .contract-cell small{font-size:11px}
  .cal-status{font-size:12px;padding:6px 9px;justify-self:start}.progress-cell{width:100%}.progress-track{flex:1;width:auto;height:12px}.progress-cell b{font-size:12px}
  .note-form{grid-template-columns:minmax(0,1fr) 44px;width:100%}.note-form input[name=note]{height:44px;font-size:16px!important}.note-form button{height:44px;font-size:18px!important}.note-form small{font-size:10px}
  .actions-cell{display:grid!important;grid-template-columns:118px 1fr!important}.actions-cell>a{display:inline-grid;width:44px;height:44px;margin-right:7px;font-size:18px}.actions-cell span{font-size:16px}
  .cal-empty{display:block!important;padding:25px 12px!important}

  .cal-footer{grid-template-columns:1fr;gap:10px;padding:12px 10px;font-size:12px}.pagination{justify-content:center;flex-wrap:wrap}.pagination a{min-width:40px;height:40px;font-size:14px}.per-page{justify-self:stretch;justify-content:center}.per-page select{height:40px;font-size:16px!important}
  .cal-bottom{display:grid;grid-template-columns:1fr;gap:12px;padding:12px 10px 15px}.legend{gap:9px 15px;font-size:11px}.cal-exports{display:grid;grid-template-columns:1fr}.cal-exports a{min-height:44px;display:flex;align-items:center;justify-content:center;font-size:12px}
}

@media (max-width:430px){
  /* Tuned for iPhone 15 Pro / similar 393 CSS-pixel viewport. */
  .iniz-topbar-spacer{min-width:0}.iniz-user{margin-left:3px}.iniz-user div{display:none}.topbar-icon{display:grid!important;width:40px;height:40px;margin:0}.topbar-icon[aria-label="Поиск"]{display:none!important}.iniz-mobile-logo{margin-right:2px}
  .iniz-mobile-sections{padding-top:6px;padding-bottom:6px}.iniz-mobile-sections a{min-height:39px;padding:0 10px;font-size:11px}
  .iniz-content{padding-left:8px;padding-right:8px}
  .cal-table-wrap{margin-left:7px;margin-right:7px}.cal-head{padding-left:9px;padding-right:9px}.cal-tabs{margin-left:7px;margin-right:7px}.cal-filter-toggle{width:calc(100% - 14px);margin-left:7px;margin-right:7px}.cal-filters{padding-left:7px;padding-right:7px}
  .cal-table td{grid-template-columns:104px minmax(0,1fr);padding:8px 9px}.cal-table .num-cell,.actions-cell{grid-template-columns:104px minmax(0,1fr)!important}
  .dashboard-wrap{width:calc(100% - 14px)}
  .iniz-kpis{gap:8px}.kpi{padding:8px;grid-template-columns:34px 1fr 10px}.kpi strong{font-size:16px}
  .panel-head{align-items:flex-start;flex-direction:column}.panel-head .iniz-primary{width:100%}
}


/* === V25.6.5 approved mobile option 2: card-first interface === */
.iniz-mobile-bottom,.iniz-mobile-more,.iniz-mobile-more-backdrop,.cal-mobile-cards{display:none}

@media (max-width:860px){
  body.iniz-ui{padding-bottom:calc(76px + env(safe-area-inset-bottom))}
  .iniz-content,.iniz-content.iniz-home-content{padding-bottom:calc(92px + env(safe-area-inset-bottom))}

  /* Fixed bottom navigation from the approved object-card concept. */
  .iniz-mobile-bottom{position:fixed;left:0;right:0;bottom:0;z-index:140;display:grid;grid-template-columns:repeat(5,1fr);height:calc(64px + env(safe-area-inset-bottom));padding:5px max(4px,env(safe-area-inset-right)) env(safe-area-inset-bottom) max(4px,env(safe-area-inset-left));background:rgba(255,255,255,.98);border-top:1px solid #d6e2eb;box-shadow:0 -7px 24px rgba(20,58,86,.12);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
  .iniz-mobile-bottom a,.iniz-mobile-bottom button{appearance:none;border:0;background:transparent;color:#718699!important;min-width:0;min-height:54px;padding:4px 2px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;text-decoration:none;font:inherit;touch-action:manipulation}
  .iniz-mobile-bottom span{font-size:20px;line-height:1}.iniz-mobile-bottom b{font-size:9px;line-height:1.1;white-space:nowrap}
  .iniz-mobile-bottom a.active{color:#087bf0!important}.iniz-mobile-bottom a.active span{filter:drop-shadow(0 2px 5px rgba(8,123,240,.2))}

  /* “More” is a native-feeling bottom sheet instead of a long horizontal menu. */
  .iniz-mobile-more-backdrop{position:fixed;inset:0;z-index:150;background:rgba(8,25,39,.38);backdrop-filter:blur(2px)}
  .iniz-mobile-more-backdrop.open{display:block}
  .iniz-mobile-more{position:fixed;left:8px;right:8px;bottom:calc(70px + env(safe-area-inset-bottom));z-index:155;display:block;max-height:min(68vh,620px);overflow:auto;padding:12px;border:1px solid #d7e4ed;border-radius:18px;background:#fff;box-shadow:0 18px 55px rgba(7,34,54,.28);transform:translateY(calc(100% + 100px));opacity:0;pointer-events:none;transition:transform .2s ease,opacity .2s ease}
  .iniz-mobile-more.open{transform:translateY(0);opacity:1;pointer-events:auto}
  .iniz-mobile-more-head{display:flex;align-items:center;justify-content:space-between;padding:2px 3px 10px}.iniz-mobile-more-head div{display:grid}.iniz-mobile-more-head strong{font-size:18px}.iniz-mobile-more-head small{font-size:11px;color:#7b8e9e}.iniz-mobile-more-head button{width:42px;height:42px;border:0;border-radius:50%;background:#eff5f9;color:#234f6c;font-size:26px;line-height:1}
  .iniz-mobile-more-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.iniz-mobile-more-grid a{min-height:82px;border:1px solid #dce8ef;border-radius:13px;background:#f8fbfd;color:#173b55!important;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:8px;text-align:center;text-decoration:none}.iniz-mobile-more-grid a span{font-size:23px;color:#087bf0}.iniz-mobile-more-grid a b{font-size:11px;line-height:1.15}

  /* Generic workspace tables become cards — no horizontal scrolling. */
  .ws-table-wrap{overflow:visible!important;border:0!important;background:transparent!important}
  .ws-table{display:block!important;min-width:0!important;width:100%!important}.ws-table thead{display:none!important}.ws-table tbody{display:grid!important;gap:10px!important}.ws-table tr{display:block!important;border:1px solid #d9e5ed!important;border-radius:13px!important;background:#fff!important;box-shadow:0 4px 12px rgba(19,57,83,.06)!important;overflow:hidden!important}
  .ws-table td{display:grid!important;grid-template-columns:104px minmax(0,1fr)!important;gap:8px!important;align-items:start!important;border:0!important;border-bottom:1px solid #edf2f5!important;padding:9px 11px!important;white-space:normal!important;overflow-wrap:anywhere!important;font-size:12px!important}
  .ws-table td:last-child{border-bottom:0!important}.ws-table td::before{content:attr(data-label);color:#71899b;font-size:10px;font-weight:800;padding-top:2px}.ws-table td:first-child{grid-template-columns:1fr!important;padding-top:13px!important;padding-bottom:12px!important}.ws-table td:first-child::before{display:none}.ws-object-name{font-size:15px!important;line-height:1.3!important}.ws-table td:first-child small{display:block;margin-top:4px;color:#758b9b}.ws-actions .ws-link,.ws-table td:last-child .ws-link{min-height:42px;display:flex;align-items:center;justify-content:center;border-radius:9px;background:#eaf4fd;color:#0875d1!important;font-weight:800;text-align:center}

  /* Main-page object table uses the same readable card language. */
  .iniz-panel .iniz-table-wrap{overflow:visible!important}.iniz-panel .iniz-table{display:block!important;min-width:0!important}.iniz-panel .iniz-table thead{display:none!important}.iniz-panel .iniz-table tbody{display:grid!important;gap:10px!important}.iniz-panel .iniz-table tr{display:block!important;border:1px solid #d9e5ed!important;border-radius:13px!important;background:#fff!important;box-shadow:0 4px 12px rgba(19,57,83,.06)!important;overflow:hidden!important}.iniz-panel .iniz-table td{display:grid!important;grid-template-columns:104px minmax(0,1fr)!important;gap:8px!important;border:0!important;border-bottom:1px solid #edf2f5!important;padding:9px 11px!important;font-size:12px!important;white-space:normal!important}.iniz-panel .iniz-table td::before{content:attr(data-label);color:#71899b;font-size:10px;font-weight:800}.iniz-panel .iniz-table td:first-child{grid-template-columns:1fr!important;padding:13px 11px!important}.iniz-panel .iniz-table td:first-child::before{display:none}.iniz-panel .iniz-table td:last-child{border-bottom:0!important}.iniz-panel .object-link{font-size:15px!important;line-height:1.3!important}
}

@media (max-width:700px){
  /* Option 2 calendar: actual project cards, not a table imitating cards. */
  .cal-desktop-table{display:none!important}.cal-mobile-cards{display:grid;gap:10px;margin:0 8px 12px}.cal-mobile-card{position:relative;border:1px solid #d7e4ed;border-radius:14px;background:#fff;padding:13px 12px;box-shadow:0 5px 15px rgba(16,54,81,.07);overflow:hidden}.cal-mobile-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#8799aa}.cal-mobile-card.status-completed::before{background:#16a66a}.cal-mobile-card.status-in_progress::before{background:#1583ef}.cal-mobile-card.status-waiting::before{background:#f28a16}.cal-mobile-card.status-overdue::before{background:#ef3946}.cal-mobile-card.status-planned::before{background:#8496a7}
  .cal-mobile-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.cal-mobile-card-title{min-width:0;display:grid;gap:4px}.cal-mobile-card-title small{font-size:10px;color:#72899a;white-space:normal}.cal-mobile-card-title a{color:#0b3150!important;text-decoration:none}.cal-mobile-card-title strong{display:block;font-size:15px;line-height:1.28}.cal-mobile-card-head .cal-status{flex:0 0 auto;font-size:10px;padding:5px 7px;white-space:nowrap}
  .cal-mobile-meta{display:grid;grid-template-columns:1fr 1fr;gap:7px 12px;margin-top:11px;padding-top:10px;border-top:1px solid #edf2f5}.cal-mobile-meta>div{min-width:0;display:grid;gap:2px}.cal-mobile-meta span{font-size:9px;color:#7a8f9f}.cal-mobile-meta b{font-size:11px;color:#254a64;overflow-wrap:anywhere}.cal-mobile-meta>div:nth-child(5){grid-column:1 / -1}
  .cal-mobile-progress{display:flex;align-items:center;gap:9px;margin-top:10px}.cal-mobile-progress .progress-track{height:8px;flex:1}.cal-mobile-progress b{font-size:11px;color:#31566d}
  .cal-mobile-details{margin-top:9px;border-top:1px solid #edf2f5;padding-top:8px}.cal-mobile-details summary{min-height:38px;display:flex;align-items:center;color:#1976c6;font-size:11px;font-weight:800;cursor:pointer}.cal-mobile-stages{display:grid;gap:5px;padding:4px 0 10px;color:#516d80;font-size:11px}.mobile-note-form{display:block;width:100%}.mobile-note-form label{display:block;font-size:10px;color:#71899b;font-weight:800;margin:4px 0}.mobile-note-form>div{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:6px}.mobile-note-form input{height:42px!important}.mobile-note-form button{height:42px!important;min-height:42px!important}.mobile-note-form small{display:block;margin-top:4px;color:#7890a0;font-size:9px}
  .cal-mobile-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}.cal-mobile-actions a{min-height:42px;border:1px solid #d4e3ed;border-radius:9px;display:flex;align-items:center;justify-content:center;text-align:center;padding:6px;color:#246082!important;font-size:11px;font-weight:800;text-decoration:none}.cal-mobile-actions a.primary{background:#087bf0;border-color:#087bf0;color:#fff!important}
  .cal-mobile-empty{padding:24px 14px;border:1px dashed #c9d8e3;border-radius:12px;text-align:center;color:#698293;background:#fff}

  /* Search visible immediately; filters are optional. */
  .cal-filter-toggle{margin-top:3px}.cal-filters:not(.mobile-open){padding-bottom:6px}.cal-filters:not(.mobile-open)>.cal-search{display:block!important}.cal-search input{font-size:16px!important}
}

@media (max-width:430px){
  .iniz-mobile-more-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.iniz-mobile-more-grid a{min-height:78px}.iniz-mobile-bottom b{font-size:8.5px}.cal-mobile-cards{margin-left:5px;margin-right:5px}.cal-mobile-card{padding:12px 10px}.cal-mobile-meta{grid-template-columns:1fr 1fr}.ws-table td,.iniz-panel .iniz-table td{grid-template-columns:96px minmax(0,1fr)!important}
}
