/* source style 1 */
html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#f4f6f8}

/* source style 2 */
:root{color-scheme:light only;--bg-color:#f4f6f8;--sidebar-bg:#2c3e50;--sidebar-color:#ecf0f1;--primary:#ba1a21;--primary-hover:#9c151b;--surface:#fff;--border:#dfe4ea;--text-main:#2f3542;--border-radius:9px}
.crm-app{background-color:var(--bg-color)!important;color:var(--text-main)!important;display:flex;height:100vh!important;max-height:100vh!important;overflow:hidden;-webkit-tap-highlight-color:transparent;font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif;position:relative}
@supports(height:100dvh){.crm-app{height:100dvh!important;max-height:100dvh!important}}
.crm-app *{box-sizing:border-box}.crm-app h2,.crm-app h3,.crm-app h4{color:#2c3e50!important;margin-top:0}
.crm-sidebar{width:250px;background-color:var(--sidebar-bg)!important;color:var(--sidebar-color)!important;display:flex;flex-direction:column;transition:transform .28s ease;flex-shrink:0;position:absolute;height:100%!important;z-index:1000;transform:translateX(-100%);will-change:transform}
.crm-sidebar.open{transform:translateX(0);box-shadow:5px 0 20px rgba(0,0,0,.24)}.crm-sidebar-header{padding:15px 20px;font-size:18px;font-weight:bold;border-bottom:1px solid rgba(255,255,255,.1);color:#fff!important;display:flex;justify-content:space-between;align-items:center}
.crm-sidebar-close{background:none;border:none;color:#fff!important;font-size:24px;cursor:pointer;display:block}.crm-nav-menu{list-style:none;padding:10px 0;margin:0;flex-grow:1;overflow-y:auto;-webkit-overflow-scrolling:touch}
.crm-nav-item{padding:12px 20px;cursor:pointer;transition:background .2s ease,border-color .2s ease;color:#fff!important;font-size:14px;border-left:4px solid transparent}.crm-nav-item:hover,.crm-nav-item.active{background-color:rgba(255,255,255,.1);border-left-color:var(--primary)}
.crm-sidebar-version{padding:12px 20px;font-size:12px;color:#a4b0be;border-top:1px solid rgba(255,255,255,.1);line-height:1.45}.crm-sidebar-version b{display:block;color:#fff;font-size:13px;margin-bottom:2px}
.crm-sidebar-footer{padding:15px 20px;font-size:12px;border-top:1px solid rgba(255,255,255,.1);background-color:rgba(0,0,0,.15);color:#a4b0be;line-height:1.4}.crm-sidebar-footer .dev-title{color:#dcdde1;font-weight:600;margin-bottom:2px;display:block}.crm-sidebar-footer a{color:#f5cd79;text-decoration:none;display:block;margin-top:2px}
.crm-main-content{flex-grow:1;display:flex;flex-direction:column;overflow:hidden;width:100%;min-width:0;min-height:0}.crm-topbar{background-color:#dcdde1!important;height:53px;padding:0 12px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:50;flex-shrink:0;box-shadow:0 2px 8px rgba(44,62,80,.05)}
.crm-page-title{font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif!important;font-size:20px!important;font-weight:600!important;line-height:1!important;margin:0!important;padding:0!important;color:#2c3e50!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;display:block!important}
.crm-menu-toggle{display:block;background:none;border:none;font-size:18px;cursor:pointer;color:var(--text-main)!important;padding:0 5px 0 0;line-height:1;flex-shrink:0}.crm-topbar-actions{display:flex;gap:6px;align-items:center;flex-shrink:0}
.crm-btn{background-color:var(--primary)!important;color:white!important;border:none;padding:6px 10px;border-radius:var(--border-radius);cursor:pointer;font-size:12px;font-weight:500;transition:background .2s ease,transform .12s ease,opacity .2s ease;line-height:normal;white-space:nowrap;-webkit-appearance:none;appearance:none;text-decoration:none;outline:none}.crm-btn:hover:not(:disabled){background-color:var(--primary-hover)!important}.crm-btn:active:not(:disabled){transform:scale(.98)}.crm-btn:disabled{cursor:not-allowed;opacity:.8}.crm-btn-secondary{background-color:#747d8c!important}.crm-btn-secondary:hover:not(:disabled){background-color:#57606f!important}
.crm-workspace{padding:15px;overflow-y:auto!important;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;flex-grow:1;min-height:0}#view-settings .crm-workspace{overflow-y:auto;-webkit-overflow-scrolling:touch}
.crm-contracts-table-wrapper{background:var(--surface)!important;border-radius:var(--border-radius);border:1px solid rgba(44,62,80,.06);box-shadow:0 6px 24px rgba(44,62,80,.07);overflow:auto;height:100%;-webkit-overflow-scrolling:touch}.crm-table{width:100%;border-collapse:separate;border-spacing:0;min-width:800px}.crm-table th,.crm-table td{padding:12px 15px;text-align:left;border-bottom:1px solid var(--border);font-size:13px;color:var(--text-main)!important;white-space:nowrap;background-color:#fff!important}.crm-table th{background-color:#f8f9fa!important;font-weight:600;color:#57606f!important;position:sticky;top:0;z-index:10}.crm-table td:first-child,.crm-table th:first-child{position:sticky;left:0;z-index:11;border-right:1px solid var(--border)}.crm-table th:first-child{z-index:12}.crm-table tr:hover td{background-color:#f1f2f6!important}
.crm-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.7)!important;display:none;justify-content:center;align-items:center;z-index:99999;padding:0;overflow:hidden}.crm-modal{background:#fff!important;width:100%;max-width:900px;height:100%!important;max-height:100%!important;border-radius:0;display:flex;flex-direction:column;margin:auto;overflow:hidden;position:relative}.crm-modal-header{padding:12px 15px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;background:#dcdde1!important;flex-shrink:0}.crm-modal-header h3{font-size:15px!important}.crm-modal-body{padding:15px;background:#fff!important;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;flex-grow:1;min-height:0}.crm-modal-footer{padding:10px 15px;border-top:1px solid var(--border);display:flex;flex-direction:column;align-items:flex-start;background:#dcdde1!important;flex-shrink:0}.crm-close-btn{background:none;border:none;font-size:24px;cursor:pointer;color:#747d8c!important;line-height:1;padding:0 5px}
.crm-section-title{font-size:17px;margin:0 0 15px;padding:45px 0 8px;color:var(--sidebar-bg)!important;border-bottom:2px solid var(--border);font-weight:700}.crm-modal-body .crm-section-title:first-child{padding-top:0}.crm-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:15px}.crm-form-group{display:flex;flex-direction:column}.crm-form-group label{font-size:11px;color:#57606f!important;margin-bottom:4px;font-weight:500}.crm-form-group input,.crm-form-group select,.crm-form-group textarea{padding:8px 10px;border:1px solid var(--border);border-radius:7px;font-size:13px;width:100%;max-width:100%;background:#fff!important;color:#000!important}.crm-form-group input:disabled,.crm-form-group select:disabled,.crm-form-group textarea:disabled{background-color:#f1f2f6!important;color:#747d8c!important;cursor:not-allowed;border-color:#dfe4ea!important}.crm-form-group input:focus:not(:disabled),.crm-form-group select:focus:not(:disabled),.crm-form-group textarea:focus:not(:disabled){border-color:var(--primary);outline:none;box-shadow:0 0 0 2px rgba(186,26,33,.07)}.crm-form-group.full-width{grid-column:1/-1}
.crm-sticky-totals{display:flex;gap:12px;font-size:13px;font-weight:600;margin-bottom:10px;flex-wrap:wrap;color:#333!important}.crm-sticky-totals span,.crm-totals-block span{color:var(--primary)!important}.crm-footer-buttons{display:flex;justify-content:flex-end;gap:8px;width:100%}.crm-footer-buttons .crm-btn{padding:8px 12px;font-size:12px}.crm-totals-block{display:flex;gap:15px;background:#eef2f5!important;padding:12px;border-radius:var(--border-radius);margin-top:15px;font-size:13px;font-weight:600;flex-wrap:wrap;color:#333!important}
.crm-dynamic-row{display:grid;grid-template-columns:1fr 1fr 2fr 40px;gap:8px;margin-bottom:8px;align-items:end;background:#f8f9fa!important;padding:8px;border-radius:7px;border:1px solid var(--border)}.crm-dynamic-row.expense{grid-template-columns:1.5fr 1fr 1fr 2fr 40px}.crm-btn-remove{background:#ff4757!important;color:white!important;border:none;height:34px;border-radius:7px;cursor:pointer;font-size:14px;display:flex;justify-content:center;align-items:center}.crm-add-row-btn{width:100%;margin-top:8px;padding:6px;font-size:12px}
.crm-config-table{width:100%;border-collapse:collapse;background:#fff!important;border:1px solid var(--border);border-radius:var(--border-radius);overflow:hidden;margin-bottom:8px}.crm-config-table th,.crm-config-table td{padding:10px 12px;border-bottom:1px solid var(--border);text-align:left;font-size:13px;color:var(--text-main)!important}.crm-config-table th{background:#f8f9fa!important;font-weight:600;color:#57606f!important}.crm-config-table tr:last-child td{border-bottom:none}.crm-table-checkbox{width:16px;height:16px;accent-color:var(--primary);cursor:pointer;margin:0}
.crm-settings-card{background:var(--surface)!important;padding:20px;border-radius:var(--border-radius);border:1px solid rgba(44,62,80,.06);box-shadow:0 6px 24px rgba(44,62,80,.07);width:100%!important;max-width:900px!important;margin:0 auto!important}.crm-hint{font-size:11px;color:#747d8c!important;margin-top:4px;display:block;line-height:1.3}
html,body{overflow:hidden!important;height:100%!important;margin:0!important;padding:0!important}.crm-spinner{border:4px solid #f3f3f3;border-top:4px solid var(--primary);border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin:0 auto 10px}.crm-btn.disabled-action,button.disabled-action{background-color:#bdc3c7!important;color:#7f8c8d!important;cursor:not-allowed!important;opacity:.6;pointer-events:none}@keyframes spin{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}
.crm-leads-table{table-layout:fixed;width:100%;min-width:1000px}.crm-leads-table th,.crm-leads-table td{white-space:normal!important;word-wrap:break-word}.crm-leads-table td:nth-child(1),.crm-leads-table th:nth-child(1){position:sticky;left:0;z-index:11;background-color:#fff;border-right:1px solid var(--border);box-shadow:2px 0 5px -2px rgba(0,0,0,.1)}.crm-leads-table th:nth-child(1){z-index:12;background-color:#f8f9fa!important}.crm-leads-table tr:hover td:nth-child(1){background-color:#f1f2f6!important}
@media(max-width:768px){.crm-page-title{font-size:15px!important}.crm-app input,.crm-app select,.crm-app textarea,.crm-app [contenteditable=true]{font-size:13px!important;line-height:1.3}.crm-dynamic-row,.crm-dynamic-row.expense{grid-template-columns:1fr;gap:6px}.crm-btn-remove{width:100%;margin-top:4px}.crm-config-table thead{display:none}.crm-config-table,.crm-config-table tbody,.crm-config-table tr,.crm-config-table td{display:block;width:100%}.crm-config-table tr{margin-bottom:12px;border:1px solid var(--border);border-radius:var(--border-radius);background:#f8f9fa!important;padding:8px}.crm-config-table td{border:none;padding:6px 8px;display:flex;justify-content:space-between;align-items:center}.crm-config-table td:nth-child(1){font-weight:bold;font-size:14px;border-bottom:1px solid var(--border);margin-bottom:4px}.crm-config-table td:nth-child(2):before{content:"Статус (Вкл/Выкл):";color:#57606f;font-size:12px}.crm-config-table td:nth-child(3){flex-direction:column;align-items:stretch;gap:4px}.crm-config-table td:nth-child(3):before{content:"Chat ID:";color:#57606f;font-size:12px;font-weight:600}.hide-on-mobile-edit{display:none!important}.crm-app .crm-leads-table input.lead-comment-input,.crm-app .crm-leads-table select.lead-status-select{font-size:13px!important}.lead-comment-col,.lead-comment-td{width:290px!important;min-width:290px!important}}

.crm-calendar-shell{display:flex;flex-direction:column;gap:10px;min-height:0;height:100%}.crm-calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.crm-calendar-toolbar-left,.crm-calendar-toolbar-right{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.crm-calendar-month{font-size:18px;font-weight:700;color:#2c3e50;min-width:190px;text-align:center}.crm-calendar-weekdays,.crm-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(110px,1fr));min-width:780px}.crm-calendar-weekdays{background:#eef2f5;border:1px solid var(--border);border-bottom:none;border-radius:8px 8px 0 0;overflow:hidden}.crm-calendar-weekday{padding:8px;text-align:center;font-size:11px;font-weight:700;color:#57606f;border-right:1px solid var(--border)}.crm-calendar-weekday:last-child{border-right:none}.crm-calendar-scroll{overflow:auto;flex:1;min-height:0;-webkit-overflow-scrolling:touch;background:#fff;border:1px solid var(--border);border-radius:0 0 8px 8px}.crm-calendar-grid{grid-auto-rows:minmax(118px,1fr)}.crm-calendar-day{position:relative;padding:6px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:#fff;cursor:pointer;min-height:118px}.crm-calendar-day:nth-child(7n){border-right:none}.crm-calendar-day.other-month{background:#f8f9fa;color:#a4b0be}.crm-calendar-day.today{box-shadow:inset 0 0 0 2px var(--primary)}.crm-calendar-day:hover{background:#fafafa}.crm-calendar-day-number{font-size:12px;font-weight:700;margin-bottom:5px}.crm-calendar-events{display:flex;flex-direction:column;gap:4px}.crm-calendar-event{display:block;width:100%;border:none;text-align:left;padding:5px 6px;border-radius:5px;background:#2c3e50!important;color:#fff!important;font-size:10px;line-height:1.25;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crm-calendar-event.status-planned{background:#2c3e50!important}.crm-calendar-event.status-confirmed{background:#27ae60!important}.crm-calendar-event.status-done{background:#747d8c!important}.crm-calendar-event.status-cancelled{background:#ba1a21!important;text-decoration:line-through}.crm-calendar-empty{padding:40px;text-align:center;color:#747d8c}.crm-calendar-public-box{background:#f8f9fa;border:1px solid var(--border);border-radius:8px;padding:10px 12px;font-size:12px;color:#57606f}.crm-calendar-public-box label{display:flex;align-items:center;gap:8px;cursor:pointer}.crm-calendar-public-url{display:flex;gap:6px;margin-top:8px}.crm-calendar-public-url input{flex:1;padding:8px;border:1px solid var(--border);border-radius:6px;background:#fff;color:#333}.crm-calendar-list-mobile{display:none}.crm-calendar-modal .crm-modal{max-width:640px;height:auto!important;max-height:94vh!important;border-radius:10px}.crm-calendar-modal .crm-modal-footer{flex-direction:row;justify-content:space-between;align-items:center}.crm-calendar-delete{background:#ba1a21!important}.crm-about-box{margin-top:25px;background:#f8f9fa;border:1px solid var(--border);border-radius:8px;padding:15px;font-size:12px;line-height:1.6;color:#57606f}.crm-about-box b{color:#2c3e50}
.crm-calendar-toolbar{position:relative;justify-content:center!important}.crm-calendar-toolbar-left{margin:0 auto;justify-content:center}.crm-calendar-filter-btn{position:absolute;right:0;top:50%;transform:translateY(-50%)}
.crm-calendar-filter-panel{display:none;position:absolute;right:0;top:calc(100% + 8px);z-index:40;width:330px;background:#fff;border:1px solid var(--border);border-radius:10px;box-shadow:0 12px 30px rgba(0,0,0,.18);padding:14px}.crm-calendar-filter-panel.open{display:block}.crm-calendar-filter-head{display:flex;align-items:center;justify-content:space-between;font-weight:700;color:#2c3e50;margin-bottom:12px}.crm-calendar-filter-close{border:0;background:transparent;color:#57606f;font-size:22px;line-height:1;cursor:pointer;padding:2px 5px}.crm-calendar-filter-group{margin-top:10px}.crm-calendar-filter-group label{display:block;font-size:11px;color:#57606f;margin-bottom:4px}.crm-calendar-filter-group select{width:100%;padding:8px 9px;border:1px solid var(--border);border-radius:6px;background:#fff;color:#2c3e50}
.crm-calendar-list-view{display:none;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;touch-action:pan-y;overscroll-behavior-x:none;background:#fff;border:1px solid var(--border);border-radius:8px;padding:0 14px 16px}.crm-calendar-list-view.active{display:block}.crm-calendar-date-heading{position:static;background:#eef2f5;border-bottom:1px solid var(--border);padding:10px 12px;margin:0 -14px 8px;font-size:13px;font-weight:700;color:#2c3e50;text-transform:capitalize}.crm-calendar-list-event{border:1px solid var(--border);border-radius:8px;background:#fff;padding:10px 12px;margin:7px 0;cursor:pointer}.crm-calendar-list-event:hover{background:#f8f9fa}.crm-calendar-list-event-title{font-size:13px;font-weight:700;color:#2c3e50}.crm-calendar-list-event-type{font-size:11px;color:#747d8c;margin-top:3px}
@media(max-width:768px){.crm-calendar-filter-btn{position:static;transform:none}.crm-calendar-filter-panel{position:fixed;left:12px;right:12px;top:auto;width:auto}.crm-calendar-toolbar{justify-content:center!important}.crm-calendar-toolbar-left{width:auto!important}.crm-calendar-list-view{padding-left:10px;padding-right:10px}.crm-calendar-date-heading{margin-left:-10px;margin-right:-10px}}
@media(max-width:768px){.crm-calendar-weekdays,.crm-calendar-grid{min-width:700px}.crm-calendar-toolbar{align-items:stretch}.crm-calendar-toolbar-left,.crm-calendar-toolbar-right{width:100%;justify-content:center}.crm-calendar-month{font-size:16px}.crm-calendar-day{min-height:105px}.crm-calendar-public-url{flex-direction:column}.crm-calendar-modal .crm-modal{height:100%!important;max-height:100%!important;border-radius:0}.crm-calendar-modal .crm-modal-footer{flex-wrap:wrap}}


/* AlbomLab CRM v1.7.2 — shooting editor */
.crm-calendar-modal .crm-shoot-modal{max-width:760px!important}.crm-shoot-header{padding:20px 24px!important;background:linear-gradient(135deg,#fff,#f7f9fb)}.crm-shoot-kicker{font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#8b98a5;margin-bottom:4px}.crm-shoot-contract-badge{margin-top:7px;color:#ba1a21;font-size:12px;font-weight:750}.crm-shoot-body{padding:22px 24px!important}.crm-shoot-title-field input{font-size:17px!important;font-weight:700!important;padding:12px!important}.crm-shoot-date-row,.crm-shoot-meta-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.crm-shoot-contract-field{margin-top:0}.crm-shoot-body>.crm-shoot-date-row,.crm-shoot-body>.crm-shoot-contract-field,.crm-shoot-body>.crm-shoot-meta-row,.crm-shoot-body>.crm-occupancy-group{margin-top:12px}.crm-shoot-body>.crm-shoot-date-row{margin-top:0}.crm-calendar-notes{margin-top:16px;min-height:150px}.crm-calendar-notes .crm-notes-editor{min-height:100px}.crm-calendar-notes:not(.fullscreen) #calendarNotesFormatbar{display:none!important}.crm-calendar-notes.fullscreen{position:fixed!important;inset:18px!important;z-index:1000002!important;background:#fff!important;display:flex!important;flex-direction:column!important;max-width:none!important;height:auto!important;margin:0!important;box-shadow:0 18px 60px rgba(0,0,0,.28)!important}.crm-calendar-notes.fullscreen #calendarNotesFormatbar{display:flex!important}.crm-calendar-notes.fullscreen .crm-notes-editor{flex:1!important;min-height:0!important;overflow:auto!important}.crm-calendar-notes #calendarEventNotes:empty:before{content:attr(data-placeholder);color:#9aa4ad}.crm-calendar-notes #calendarEventNotes hr{border:0;border-top:1px solid #cfd6dd;margin:14px 0}@media(max-width:768px){.crm-shoot-body{padding:16px!important}.crm-shoot-date-row,.crm-shoot-meta-row{grid-template-columns:1fr 1fr;gap:8px}.crm-calendar-notes.fullscreen{inset:0!important;border-radius:0!important}}

/* AlbomLab CRM v1.3.4: workflow statuses and layout fixes */
.crm-sidebar-license-card{margin:12px 14px 14px;padding:14px 15px;border:1px solid rgba(255,255,255,.14);border-radius:12px;background:linear-gradient(135deg,rgba(255,255,255,.11),rgba(186,26,33,.13));box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 8px 24px rgba(0,0,0,.12)}
.crm-sidebar-license-card .crm-sidebar-limit-label{font-size:11px;color:#aeb8c2;text-transform:uppercase;letter-spacing:.04em;margin-bottom:5px}.crm-sidebar-license-card #sidebar-limits-text{font-size:14px;color:#fff!important;font-weight:600}.crm-sidebar-license-card .crm-sidebar-version-line{margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.12);display:flex;justify-content:space-between;gap:10px;font-size:12px;color:#c8d0d8}.crm-sidebar-license-card .crm-sidebar-version-line b{color:#fff}
.crm-account-panel{display:grid;grid-template-columns:minmax(200px,1.5fr) repeat(4,minmax(120px,.7fr)) auto;gap:10px;align-items:stretch;margin-bottom:22px}.crm-account-cell{background:linear-gradient(135deg,#f8fafb,#eef2f5);border:1px solid var(--border);border-radius:10px;padding:11px 13px;min-width:0}.crm-account-cell .cap{font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:#7b8794;margin-bottom:4px}.crm-account-cell .val{font-size:13px;font-weight:700;color:#2c3e50;overflow:hidden;text-overflow:ellipsis}.crm-account-cell .val.accent{color:var(--primary)}.crm-account-logout{align-self:stretch;min-width:86px}
.crm-data-section{margin-top:18px;border:1px solid var(--border);border-radius:12px;overflow:hidden;box-shadow:0 5px 18px rgba(44,62,80,.055)}.crm-data-section.albums{background:linear-gradient(135deg,rgba(44,62,80,.035),rgba(186,26,33,.035))}.crm-data-section.payments{background:linear-gradient(135deg,rgba(39,174,96,.095),rgba(255,255,255,.95) 65%);border-color:rgba(39,174,96,.22)}.crm-data-section.extra-income{display:none;background:linear-gradient(135deg,rgba(243,156,18,.13),rgba(255,255,255,.96) 68%);border-color:rgba(243,156,18,.28)}.crm-data-section.expenses{background:linear-gradient(135deg,rgba(186,26,33,.10),rgba(255,255,255,.96) 68%);border-color:rgba(186,26,33,.22)}
.crm-data-section-title{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 13px;font-size:13px;font-weight:700;color:#34495e;border-bottom:1px solid rgba(44,62,80,.08);background:rgba(255,255,255,.52)}.crm-data-section.payments .crm-data-section-title{color:#19733f}.crm-data-section.extra-income .crm-data-section-title{color:#a85f00}.crm-data-section.expenses .crm-data-section-title{color:#9f1720}
.crm-entry-table-wrap{width:100%!important;max-width:100%!important;overflow:hidden!important;-webkit-overflow-scrolling:touch}.crm-entry-table{display:table!important;width:100%!important;min-width:0!important;max-width:none!important;margin:0!important;border-collapse:collapse!important;table-layout:fixed!important}.crm-entry-table col.col-remove{width:46px}.crm-entry-table th{padding:8px 10px;background:rgba(255,255,255,.62);color:#6b7682;font-size:10px;text-transform:uppercase;letter-spacing:.035em;text-align:left;border-bottom:1px solid rgba(44,62,80,.09);box-sizing:border-box!important}.crm-entry-table td{padding:0;border-bottom:1px solid rgba(44,62,80,.075);background:rgba(255,255,255,.70);vertical-align:middle;box-sizing:border-box!important;overflow:hidden}.crm-entry-table tbody tr:last-child td{border-bottom:0}.crm-entry-table input,.crm-entry-table select{display:block!important;width:100%!important;max-width:none!important;height:38px;border:0!important;border-radius:0!important;background:transparent!important;padding:7px 10px!important;font-size:13px!important;color:#1f2933!important;outline:none!important;box-shadow:none!important;box-sizing:border-box!important}.crm-entry-table input:focus,.crm-entry-table select:focus{background:rgba(255,255,255,.92)!important;box-shadow:inset 0 0 0 2px rgba(186,26,33,.15)!important}.crm-entry-table td+td,.crm-entry-table th+th{border-left:1px solid rgba(44,62,80,.07)}.crm-entry-table .col-remove{width:46px!important;min-width:46px!important;max-width:46px!important;text-align:center}.crm-table-remove{width:28px;height:28px;border:0;border-radius:7px;background:rgba(186,26,33,.09);color:#ba1a21;cursor:pointer;font-size:16px;line-height:28px;padding:0}.crm-table-remove:hover{background:#ba1a21;color:#fff}
.crm-table-add{display:flex;align-items:center;justify-content:center;width:100%;border:0;border-top:1px solid rgba(44,62,80,.08);background:rgba(255,255,255,.58);color:#475569;padding:9px 12px;font-size:12px;font-weight:650;cursor:pointer}.crm-table-add:hover{background:rgba(255,255,255,.92);color:var(--primary)}.crm-data-section.payments .crm-table-add{color:#19733f}.crm-data-section.extra-income .crm-table-add{color:#a85f00}.crm-data-section.expenses .crm-table-add{color:#9f1720}
.crm-project-notes{margin:22px 0 8px;border:1px solid #d7dee5;border-radius:12px;background:linear-gradient(135deg,#fbfcfd 0%,#f4f7f9 52%,#eef2f5 100%);box-shadow:0 5px 18px rgba(44,62,80,.055);overflow:hidden}.crm-notes-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;border-bottom:1px solid rgba(44,62,80,.08);background:rgba(255,255,255,.58)}.crm-notes-title{font-size:13px;font-weight:750;color:#34495e}.crm-notes-subtitle{display:block;margin-top:2px;font-size:10px;font-weight:500;color:#87929d}.crm-notes-expand{border:1px solid #d6dce2;background:#fff;color:#57606f;border-radius:7px;padding:6px 10px;font-size:11px;font-weight:650;cursor:pointer;white-space:nowrap}.crm-notes-expand:hover{border-color:#aeb8c2;color:#2c3e50}.crm-notes-editor{width:100%;min-height:96px;padding:13px 14px;background:rgba(255,255,255,.64);font-size:13px;line-height:1.55;color:#263442;outline:none;overflow-wrap:anywhere}.crm-notes-editor:empty:before{content:attr(data-placeholder);color:#98a2ad;pointer-events:none}.crm-notes-editor h2,.crm-notes-editor h3{margin:.35em 0 .45em;color:#2c3e50!important}.crm-notes-editor p,.crm-notes-editor div{margin:.18em 0}.crm-notes-formatbar{display:none}.crm-project-notes.fullscreen{position:absolute;inset:0;z-index:100002;margin:0;border:0;border-radius:inherit;background:#f4f6f8;display:flex;flex-direction:column;overflow:hidden;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.crm-project-notes.fullscreen .crm-notes-head{flex-shrink:0;padding:12px max(12px,env(safe-area-inset-right)) 12px max(12px,env(safe-area-inset-left));background:#e9edf1}.crm-project-notes.fullscreen .crm-notes-formatbar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;flex-shrink:0;padding:8px max(12px,env(safe-area-inset-right)) 8px max(12px,env(safe-area-inset-left));border-bottom:1px solid var(--border);background:#fff}.crm-note-tool{min-width:34px;height:34px;border:1px solid #d7dde3;border-radius:7px;background:#fff;color:#34495e;font-size:12px;font-weight:700;cursor:pointer;padding:0 9px}.crm-note-tool:hover{background:#f4f6f8}.crm-note-tool.italic{font-style:italic}.crm-note-tool.heading{min-width:92px}.crm-note-color{width:30px;height:30px;border:1px solid rgba(0,0,0,.12);border-radius:7px;cursor:pointer;padding:0;box-shadow:inset 0 0 0 3px #fff}.crm-note-color.red{background:#ffd9dc}.crm-note-color.blue{background:#dceaff}.crm-note-color.yellow{background:#fff0a8}.crm-note-color.green{background:#d9f3df}.crm-note-tool.clear{font-weight:600;color:#747d8c}.crm-project-notes.fullscreen .crm-notes-editor{flex:1;min-height:0;overflow:auto;background:#fff;margin:12px;border:1px solid #d7dee5;border-radius:10px;padding:18px;font-size:16px;line-height:1.6;-webkit-overflow-scrolling:touch}.crm-project-notes.fullscreen .crm-notes-editor:focus{box-shadow:0 0 0 3px rgba(186,26,33,.08);border-color:#c8d0d8}

/* v1.3.4: isolate project tables from Wfolio global table rules */
.crm-entry-table-wrap{display:block!important;position:relative!important}
.crm-entry-table{border-spacing:0!important}
.crm-entry-table thead{display:table-header-group!important;width:auto!important}
.crm-entry-table tbody{display:table-row-group!important;width:auto!important}
.crm-entry-table tr{display:table-row!important;width:auto!important}
.crm-entry-table th,.crm-entry-table td{display:table-cell!important;float:none!important;position:static!important}
.crm-entry-table colgroup{display:table-column-group!important}.crm-entry-table col{display:table-column!important}
.crm-extra-contacts-table{margin-top:8px}
.crm-status-badge{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:750;line-height:1.1}
.crm-status-assign{background:#eef1f4;color:#57606f}.crm-status-shoot{background:#dceaff;color:#225ca8}.crm-status-select{background:#fff0a8;color:#876900}.crm-status-retouch{background:#eadfff;color:#6543a5}.crm-status-layout{background:#dff3f0;color:#257a6c}.crm-status-production{background:#ffe1c2;color:#a85f00}.crm-status-check{background:#dcecff;color:#245c9f}.crm-status-ready{background:#d9f3df;color:#19733f}.crm-status-delivery{background:#dff0ff;color:#326b9b}
.crm-calendar-day.past-day:not(.other-month){background:#fff1f1!important}.crm-calendar-day.past-day:not(.other-month) .crm-calendar-day-number{color:#ba1a21}
.crm-empty-table-cell{text-align:center!important;vertical-align:middle!important;padding:34px 16px!important;color:#747d8c!important}
.crm-settings-email-block{margin:20px 0 25px;padding:15px;border:1px solid var(--border);border-radius:8px;background:#f8f9fa}

@media(max-width:768px){.crm-account-panel{grid-template-columns:1fr 1fr}.crm-account-cell.account-main{grid-column:1/-1}.crm-account-logout{grid-column:1/-1;width:100%}.crm-entry-table-wrap{overflow-x:auto!important}.crm-entry-table{min-width:650px!important}.crm-data-section.expenses .crm-entry-table{min-width:760px!important}.crm-data-section{margin-top:14px}.crm-project-notes{margin-top:18px}.crm-notes-editor{min-height:118px}.crm-project-notes.fullscreen .crm-notes-head{padding-top:10px}.crm-project-notes.fullscreen .crm-notes-formatbar{gap:5px}.crm-note-tool{height:36px;min-width:38px;font-size:13px}.crm-note-color{width:32px;height:32px}.crm-project-notes.fullscreen .crm-notes-editor{margin:8px;font-size:16px}.crm-sidebar-license-card{margin-bottom:10px}}

/* AlbomLab CRM v1.3.2 */
.crm-nav-settings-parent{display:flex;align-items:center;justify-content:space-between}.crm-nav-chevron{font-size:12px;transition:transform .2s}.crm-nav-settings-parent.open .crm-nav-chevron{transform:rotate(180deg)}.crm-nav-submenu{display:none;background:rgba(0,0,0,.12)}.crm-nav-submenu.open{display:block}.crm-nav-subitem{padding-left:36px!important;font-size:13px!important}.crm-sidebar-license-card{padding:9px 12px!important}.crm-sidebar-compact-line,.crm-sidebar-version-line{display:flex!important;align-items:center;justify-content:space-between;gap:10px;margin:0!important;padding:5px 0!important;border:0!important;font-size:11px!important}.crm-sidebar-compact-line span{color:#aeb8c2}.crm-sidebar-compact-line b{color:#fff;font-size:12px}.crm-sidebar-version-line{border-top:1px solid rgba(255,255,255,.1)!important;margin-top:3px!important;padding-top:7px!important}.crm-loading-cell{height:100%;min-height:220px;text-align:center!important;vertical-align:middle!important}.crm-loading-center{width:100%;min-width:calc(100vw - 30px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;margin:0 auto;color:#57606f}.crm-empty-center{width:100%;display:flex;align-items:center;justify-content:center;text-align:center;min-height:180px;padding:24px}.crm-modal-overlay{padding:18px}.crm-modal{height:min(94dvh,920px)!important;max-height:94dvh!important;border-radius:12px}.crm-project-notes.fullscreen{border-radius:12px}
@media(max-width:768px){html,body{height:100dvh!important;min-height:100dvh!important}.crm-app{height:100dvh!important;max-height:100dvh!important;min-height:100dvh!important}.crm-workspace{padding-bottom:max(15px,env(safe-area-inset-bottom))!important}.crm-modal-overlay{padding:0}.crm-modal{height:100dvh!important;max-height:100dvh!important;border-radius:0}.crm-project-notes.fullscreen{border-radius:0}.crm-loading-center{min-width:calc(100vw - 30px);max-width:calc(100vw - 30px);position:sticky;left:15px;transform:none}.crm-contracts-table-wrapper{min-height:0}.crm-main-content,.crm-view-container{min-height:0!important}}
@supports(height:100svh){@media(max-width:768px){.crm-app{height:100svh!important;max-height:100svh!important;min-height:100svh!important}.crm-modal{height:100svh!important;max-height:100svh!important}}}
@media(display-mode:standalone){@supports(height:100dvh){.crm-app{height:100dvh!important;max-height:100dvh!important}.crm-modal{max-height:100dvh!important}}}


/* AlbomLab CRM v1.3.4 */
.crm-status-quick{border:0;background:transparent;padding:0;cursor:pointer;font:inherit;max-width:150px}.crm-status-quick:focus{outline:2px solid rgba(186,26,33,.18);border-radius:999px}
.crm-calendar-day.blocked-day{background:#f8d7da!important;color:#9f1d26!important;cursor:not-allowed!important}.crm-calendar-day.blocked-day:hover{background:#f8d7da!important}.crm-calendar-day.blocked-day .crm-calendar-day-number{color:#9f1d26!important}.crm-calendar-day.blocked-day.today{box-shadow:inset 0 0 0 2px #ba1a21!important}
.crm-table-state{position:sticky;left:0;width:calc(100vw - 34px);min-width:calc(100vw - 34px);min-height:220px;display:flex;align-items:center;justify-content:center;text-align:center;color:#747d8c;padding:24px;box-sizing:border-box}.crm-empty-table-cell{padding:0!important;text-align:left!important}
@media(max-width:768px){.crm-calendar-shell{gap:5px}.crm-calendar-toolbar{flex:0 0 auto}.crm-calendar-weekdays,.crm-calendar-grid{min-width:0!important;width:100%!important;grid-template-columns:repeat(7,minmax(0,1fr))!important}.crm-calendar-scroll{overflow:hidden!important;flex:1!important;min-height:0!important}.crm-calendar-grid{height:100%!important;grid-template-rows:repeat(6,minmax(0,1fr))!important;grid-auto-rows:minmax(0,1fr)!important}.crm-calendar-day{min-height:0!important;padding:3px!important;overflow:hidden}.crm-calendar-weekday{padding:5px 1px!important;font-size:9px!important}.crm-calendar-day-number{font-size:10px!important;margin-bottom:2px!important}.crm-calendar-events{gap:1px}.crm-calendar-event{font-size:7px!important;padding:2px!important;border-radius:3px!important}.crm-calendar-month{min-width:135px!important;font-size:14px!important}.crm-calendar-toolbar-right{display:none}.crm-table-state{width:calc(100vw - 24px);min-width:calc(100vw - 24px);min-height:180px}.crm-loading-center{position:static!important;transform:none!important;min-width:0!important;max-width:none!important;width:100%!important}}

/* AlbomLab CRM v1.4.1 */
.crm-contract-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.crm-filter-group{display:flex;align-items:center;gap:5px;flex-wrap:wrap}
.crm-filter-btn{border:1px solid var(--border);background:#fff;color:#475569;border-radius:7px;padding:7px 10px;font-size:12px;font-weight:650;cursor:pointer}
.crm-filter-btn.active{background:#2c3e50;color:#fff;border-color:#2c3e50}
.crm-columns-wrap{position:relative;margin-left:auto}
.crm-columns-popover{display:none;position:absolute;right:0;top:calc(100% + 6px);z-index:40;width:220px;background:#fff;border:1px solid var(--border);border-radius:9px;box-shadow:0 12px 32px rgba(44,62,80,.16);padding:10px}
.crm-columns-popover.open{display:block}.crm-columns-popover label{display:flex;align-items:center;gap:8px;padding:7px 5px;font-size:12px;cursor:pointer}
.crm-columns-popover input{width:16px;height:16px;accent-color:var(--primary)}
.crm-workflow-strip{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0 18px}
.crm-workflow-card{border:1px solid var(--border);border-radius:9px;background:#f8f9fa;padding:10px 12px}
.crm-workflow-card label{display:block;font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.04em;color:#74808d;margin-bottom:5px}
.crm-workflow-card select,.crm-workflow-card input{width:100%;border:0;background:transparent;padding:3px 0;font-size:14px;font-weight:650;color:#2c3e50;outline:none}
.crm-day-events-modal .crm-modal{max-width:560px;height:auto!important;max-height:80dvh!important}
.crm-day-event-item{border:1px solid var(--border);border-radius:8px;padding:11px 12px;margin-bottom:8px;background:#f8f9fa;cursor:pointer}
.crm-day-event-item:hover{border-color:#aeb8c2;background:#fff}.crm-day-event-title{font-weight:750;color:#2c3e50;margin-bottom:4px}
.crm-day-event-type{font-size:12px;font-weight:500;color:#66717d;line-height:1.35;margin:1px 0 6px}.crm-day-event-meta{font-size:12px;color:#66717d;line-height:1.45}
.crm-mobile-calendar-refresh{display:none}
@media(max-width:768px){
 .crm-contract-tools{gap:6px}.crm-filter-group{width:100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px}
 .crm-filter-btn{flex:0 0 auto;padding:6px 9px}.crm-columns-wrap{margin-left:0}
 .crm-workflow-strip{grid-template-columns:1fr;gap:7px}
 .crm-calendar-add-desktop{display:none!important}.crm-mobile-calendar-refresh{display:inline-flex!important}
 .crm-day-events-modal .crm-modal{height:auto!important;max-height:86dvh!important;border-radius:12px!important;margin:12px}
}


/* AlbomLab CRM v1.4.2 */
.crm-workflow-strip{display:flex!important;gap:8px!important;margin:8px 0 11px!important;align-items:stretch;position:static!important}
.crm-workflow-card{flex:1;min-width:0;padding:5px 9px!important;border-radius:8px!important;position:static!important}
.crm-workflow-card label{font-size:9px!important;margin-bottom:1px!important}
.crm-workflow-card select,.crm-workflow-card input{height:27px!important;min-height:27px!important;padding:0!important;font-size:13px!important}
.crm-exclusive-filters{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.crm-filter-caption{font-size:12px;font-weight:750;color:#66717d;margin-right:2px}
.crm-filter-tab{border:1px solid var(--border);background:#fff;color:#475569;border-radius:7px;padding:7px 10px;font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap}
.crm-filter-tab.open{background:#2c3e50;color:#fff;border-color:#2c3e50}
.crm-filter-options{display:none;align-items:center;gap:5px;flex-wrap:wrap}
.crm-filter-options.open{display:flex}
.crm-filter-option{border:1px solid #d8dee5;background:#f8f9fa;color:#52606d;border-radius:7px;padding:6px 9px;font-size:11px;font-weight:650;cursor:pointer;white-space:nowrap}
.crm-filter-option.active{background:#c51a22;border-color:#c51a22;color:#fff}
.crm-column-row{display:grid!important;grid-template-columns:18px 1fr 26px 26px;align-items:center;gap:5px;padding:4px 2px!important}
.crm-column-row.crm-fixed-column{grid-template-columns:18px 1fr 57px}
.crm-column-move{width:26px;height:26px;border:1px solid var(--border);background:#f8f9fa;border-radius:6px;cursor:pointer;line-height:1;padding:0;color:#596675}
.crm-column-move:disabled{opacity:.28;cursor:default}
.crm-columns-popover{width:270px!important}
@media(max-width:768px){
 .crm-workflow-strip{display:grid!important;grid-template-columns:1fr 1fr!important;gap:6px!important}
 .crm-workflow-card{padding:4px 7px!important}
 .crm-exclusive-filters{width:100%;gap:5px}
 .crm-filter-options{width:100%;overflow-x:auto;flex-wrap:nowrap;padding:1px 0 3px}
 .crm-columns-popover{position:fixed!important;left:12px!important;right:12px!important;top:auto!important;bottom:18px!important;width:auto!important;max-height:65dvh;overflow:auto}
}


/* AlbomLab CRM v1.4.3 */
.crm-exclusive-filters{display:flex!important;align-items:center!important;gap:6px!important;flex-wrap:nowrap!important;overflow-x:auto;scrollbar-width:none}
.crm-exclusive-filters::-webkit-scrollbar{display:none}
.crm-filter-caption,.crm-filter-tab{flex:0 0 auto}
.crm-filter-options{order:0;flex:0 0 auto;display:flex!important;max-width:0;opacity:0;overflow:hidden;gap:5px!important;padding:0!important;margin:0!important;border:0 solid transparent;border-radius:8px;background:transparent;transform:translateX(-7px);transition:max-width .28s ease,opacity .2s ease,transform .28s ease,padding .28s ease,margin .28s ease,border-width .2s ease}
.crm-filter-options.open{max-width:900px;opacity:1;overflow:visible;padding:4px!important;margin:0 4px 0 0!important;border:1px solid #d8dee5;background:linear-gradient(135deg,#f8fafc,#eef2f5);box-shadow:0 3px 10px rgba(44,62,80,.07);transform:translateX(0)}
.crm-filter-tab[data-group="edu"]{order:1}.crm-filter-tab[data-group="class"]{order:3}.crm-filter-tab[data-group="status"]{order:5}
#filterOptionsEdu{order:2}#filterOptionsClass{order:4}#filterOptionsStatus{order:6}
.crm-filter-caption{order:0}
.crm-column-row{grid-template-columns:18px 1fr 26px 26px!important}
@media(max-width:768px){.crm-exclusive-filters{flex-wrap:nowrap!important}.crm-filter-options.open{max-width:780px}.crm-filter-options{width:auto!important}}


.crm-workflow-strip{position:relative!important;z-index:2;background:#fff!important;border:1px solid #e1e6eb!important;border-radius:9px!important;padding:5px!important}
.crm-workflow-strip .crm-workflow-card{min-height:0!important}
.crm-workflow-strip select,.crm-workflow-strip input{pointer-events:auto!important;opacity:1!important;cursor:pointer!important}

/* AlbomLab CRM v1.4.4 */
.crm-contract-tools{align-items:center!important;margin-bottom:10px!important;min-height:42px!important}
.crm-exclusive-filters{display:flex!important;align-items:center!important;gap:7px!important;flex-wrap:nowrap!important;overflow-x:auto!important;overflow-y:hidden!important;width:auto!important;min-height:42px!important;padding:0!important;scrollbar-width:none}
.crm-exclusive-filters::-webkit-scrollbar{display:none}
.crm-filter-caption,.crm-filter-tab{flex:0 0 auto!important}
.crm-filter-tab{height:38px!important;margin:0!important}
.crm-filter-options{display:none!important;position:static!important;width:auto!important;height:auto!important;min-height:0!important;max-height:none!important;max-width:none!important;opacity:1!important;transform:none!important;overflow:visible!important;flex:0 0 auto!important;margin:0!important;padding:4px!important;gap:5px!important;border:1px solid #d7dee6!important;border-radius:9px!important;background:linear-gradient(180deg,#ffffff,#f1f4f7)!important;box-shadow:0 3px 10px rgba(44,62,80,.08)!important}
.crm-filter-options.open{display:flex!important;align-items:center!important}
.crm-filter-option{height:30px!important;margin:0!important;padding:4px 10px!important}
#filterOptionsEdu,#filterOptionsClass,#filterOptionsStatus{order:initial!important}
.crm-filter-tab[data-group="edu"],.crm-filter-tab[data-group="class"],.crm-filter-tab[data-group="status"],.crm-filter-caption{order:initial!important}
.crm-columns-wrap{flex:0 0 auto!important}
@media(max-width:768px){
 .crm-contract-tools{display:flex!important;flex-wrap:nowrap!important;overflow:visible!important}
 .crm-exclusive-filters{flex:1 1 auto!important;min-width:0!important;width:auto!important}
 .crm-filter-options.open{display:flex!important;width:auto!important;max-width:none!important;overflow:visible!important}
 .crm-filter-option{flex:0 0 auto!important}
}


.crm-nav-submenu{display:none!important}
.crm-nav-submenu.open{display:block!important}
body.crm-settings-pin-locked #settings-submenu{display:none!important}


/* AlbomLab CRM v1.4.5: mobile filter popover */
.crm-mobile-filter-wrap{display:none}
@media(max-width:768px) and (orientation:portrait){
 .crm-contract-tools{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:7px!important;overflow:visible!important;position:relative!important}
 .crm-contract-tools>.crm-exclusive-filters{display:none!important}
 .crm-mobile-filter-wrap{display:block!important;position:relative!important;margin-right:auto!important}
 .crm-mobile-filter-btn{height:34px!important;padding:6px 10px!important}
 .crm-mobile-filter-popover{display:none;position:fixed!important;left:12px!important;right:12px!important;top:auto!important;bottom:18px!important;z-index:120!important;background:#fff!important;border:1px solid #d8dee5!important;border-radius:10px!important;box-shadow:0 14px 38px rgba(44,62,80,.2)!important;padding:10px!important;max-height:68dvh!important;overflow:auto!important}
 .crm-mobile-filter-popover.open{display:block!important}
 .crm-mobile-filter-section{border-bottom:1px solid #edf0f3}
 .crm-mobile-filter-section:last-child{border-bottom:0}
 .crm-mobile-filter-head{width:100%;display:flex;align-items:center;justify-content:space-between;border:0;background:#fff;color:#435165;padding:11px 5px;font-size:13px;font-weight:750;text-align:left;cursor:pointer}
 .crm-mobile-filter-head .chev{transition:transform .18s ease}
 .crm-mobile-filter-section.open .crm-mobile-filter-head .chev{transform:rotate(180deg)}
 .crm-mobile-filter-content{display:none;padding:0 4px 10px}
 .crm-mobile-filter-section.open .crm-mobile-filter-content{display:flex;flex-direction:column;gap:5px}
 .crm-mobile-filter-content .crm-filter-option{width:100%!important;height:34px!important;text-align:left!important;padding:6px 10px!important}
 .crm-columns-wrap{margin-left:0!important;flex:0 0 auto!important}
}


/* AlbomLab CRM v1.4.6 */
.crm-contract-tools{position:relative!important}
.crm-status-send_link{background:#eef0f3;color:#4f5d6b}
@media(max-width:768px) and (orientation:portrait){
 .crm-mobile-filter-wrap,.crm-columns-wrap{position:static!important}
 .crm-mobile-filter-popover,.crm-columns-popover{position:absolute!important;left:0!important;right:0!important;top:calc(100% + 7px)!important;bottom:auto!important;width:auto!important;max-height:62dvh!important;overflow:auto!important;z-index:130!important;margin:0!important;border-radius:10px!important}
}


/* AlbomLab CRM v1.4.7 project controls */
.crm-project-controls{margin:8px 0 12px;border:1px solid #e1e6eb;border-radius:9px;background:#fff;padding:6px;position:relative;z-index:3}
.crm-project-controls-row{display:grid;gap:7px;align-items:stretch}
.crm-project-controls-main{grid-template-columns:1fr 1fr;margin-bottom:7px}
.crm-project-link-row{grid-template-columns:minmax(150px,.7fr) minmax(240px,1.5fr) auto}
.crm-project-controls .crm-workflow-card{min-width:0;padding:5px 9px!important;border:1px solid #e1e6eb!important;border-radius:8px!important;background:#f8f9fa!important}
.crm-project-controls .crm-workflow-card label{font-size:9px!important;margin-bottom:1px!important}
.crm-project-controls .crm-workflow-card select,.crm-project-controls .crm-workflow-card input{width:100%!important;height:27px!important;min-height:27px!important;padding:0!important;border:0!important;background:transparent!important;font-size:13px!important;color:#2c3e50!important;pointer-events:auto!important;opacity:1!important}
.crm-project-copy-btn{align-self:stretch;min-width:112px;border:1px solid #d6dde5;background:#fff;color:#435165;border-radius:8px;padding:0 14px;font-size:12px;font-weight:750;cursor:pointer}
.crm-project-copy-btn:hover{background:#f1f4f7}
@media(max-width:768px){
 .crm-project-controls-main{grid-template-columns:1fr 1fr}
 .crm-project-link-row{grid-template-columns:minmax(100px,.8fr) minmax(0,1.4fr) auto}
 .crm-project-copy-btn{min-width:42px;padding:0 9px;font-size:0}
 .crm-project-copy-btn:after{content:"⧉";font-size:18px}
}


.crm-clear-mobile{display:none}.crm-note-link-tool{font-size:15px;padding:0}
.crm-note-link-overlay{display:none;position:fixed;inset:0;z-index:100020;background:rgba(20,28,36,.38);align-items:center;justify-content:center;padding:16px}
.crm-note-link-overlay.open{display:flex}.crm-note-link-dialog{width:min(430px,100%);background:#fff;border-radius:12px;padding:18px;box-shadow:0 18px 55px rgba(0,0,0,.22)}
.crm-note-link-dialog-title{font-size:17px;font-weight:750;color:#2c3e50;margin-bottom:14px}.crm-note-link-dialog .crm-form-group{margin-bottom:12px}.crm-note-link-dialog input{width:100%}
.crm-note-link-actions{display:flex;justify-content:space-between;gap:10px;margin-top:16px}.crm-note-link-delete{color:#ba1a21}
.crm-project-notes.fullscreen{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;max-width:none!important;max-height:none!important;box-sizing:border-box!important;border-radius:0!important;z-index:100010!important}
.crm-project-notes.fullscreen .crm-notes-editor{box-sizing:border-box;max-width:calc(100vw - 24px)}
@media(max-width:768px){
 .crm-project-notes.fullscreen{left:0!important;right:0!important;top:0!important;bottom:0!important;width:100vw!important;height:100dvh!important;padding-left:env(safe-area-inset-left)!important;padding-right:env(safe-area-inset-right)!important}
 .crm-project-notes.fullscreen .crm-notes-head{width:100%;box-sizing:border-box}
 .crm-project-notes.fullscreen .crm-notes-formatbar{width:100%;box-sizing:border-box;display:flex!important;flex-wrap:nowrap!important;gap:clamp(2px,1vw,5px)!important;padding:7px max(6px,env(safe-area-inset-right)) 7px max(6px,env(safe-area-inset-left))!important;overflow:hidden}
 .crm-note-tool{height:32px!important;min-width:30px!important;padding:0 6px!important;font-size:12px!important;flex:0 1 auto}
 .crm-note-tool.heading{min-width:0!important;padding:0 7px!important;font-size:clamp(10px,2.8vw,12px)!important}
 .crm-note-link-tool{font-size:13px!important;width:30px!important;padding:0!important}
 .crm-note-color{width:clamp(25px,7.4vw,30px)!important;height:30px!important;flex:0 1 30px}
 .crm-note-tool.clear{width:30px!important;min-width:30px!important;padding:0!important;font-size:21px!important;line-height:1}
 .crm-clear-full{display:none}.crm-clear-mobile{display:inline}
 .crm-project-notes.fullscreen .crm-notes-editor{width:auto!important;max-width:none!important;margin:8px!important;box-sizing:border-box!important}
 .crm-note-link-overlay{padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}
}

body.crm-notes-editing #contractModal{visibility:hidden!important}
body.crm-notes-editing #clientNotesCard.fullscreen{visibility:visible!important}
body.crm-notes-editing #noteLinkOverlay{visibility:visible!important}
body.crm-notes-editing{overflow:hidden!important}
body.crm-notes-editing .crm-project-notes.fullscreen{position:fixed!important;inset:0!important;width:100%!important;height:100dvh!important;min-width:0!important;max-width:none!important;margin:0!important;transform:none!important}
@supports not (height:100dvh){body.crm-notes-editing .crm-project-notes.fullscreen{height:100vh!important}}

/* v1.5.2: full-bleed CRM on phones, independent of Wfolio content-column padding */
@media(max-width:768px){
 .crm-app{
   width:100vw!important;
   max-width:100vw!important;
   min-width:100vw!important;
   margin-left:calc(50% - 50vw)!important;
   margin-right:calc(50% - 50vw)!important;
   left:auto!important;
   right:auto!important;
   border-radius:0!important;
 }
 .crm-main-content{width:100vw!important;max-width:100vw!important;min-width:0!important}
 .crm-topbar{width:100%!important;max-width:none!important}
 .crm-workspace{width:100%!important;max-width:none!important}
}

/* v1.5.3: every CRM modal uses the real viewport on phones */
@media(max-width:768px){
 .crm-modal-overlay{
   position:fixed!important;
   top:0!important;bottom:0!important;
   left:50%!important;right:auto!important;
   width:100vw!important;height:100dvh!important;
   max-width:none!important;max-height:none!important;
   margin:0!important;padding:0!important;
   transform:translateX(-50%)!important;
   align-items:stretch!important;justify-content:stretch!important;
   overflow:hidden!important;
 }
 .crm-modal-overlay>.crm-modal,
 .crm-calendar-modal>.crm-modal{
   width:100vw!important;min-width:100vw!important;max-width:100vw!important;
   height:100dvh!important;min-height:100dvh!important;max-height:100dvh!important;
   margin:0!important;border-radius:0!important;
 }
 .crm-modal-body{width:100%!important;max-width:none!important}
}
@supports not (height:100dvh){@media(max-width:768px){
 .crm-modal-overlay,.crm-modal-overlay>.crm-modal,.crm-calendar-modal>.crm-modal{height:100vh!important;min-height:100vh!important;max-height:100vh!important}
}}
/* Link editor must sit above the body-mounted fullscreen notes editor */
.crm-note-link-overlay{z-index:100100!important}
body.crm-notes-editing #noteLinkOverlay{visibility:visible!important;z-index:100100!important}

.crm-notes-editor a{color:#1769aa!important;text-decoration:underline!important;text-decoration-thickness:1px!important;text-underline-offset:2px;cursor:pointer!important;word-break:break-word}
.crm-notes-editor[contenteditable="false"] a{pointer-events:auto!important}
.crm-contacts-table{margin-top:12px!important}.crm-contacts-table .crm-entry-table{table-layout:fixed!important}.crm-contacts-table .crm-main-contact-row td{background:#f8f9fa!important}.crm-contacts-table .crm-main-contact-row input{font-weight:600}.crm-add-contact-btn{margin-top:7px!important}
@media(max-width:768px){.crm-contacts-table .crm-entry-table th,.crm-contacts-table .crm-entry-table td{padding:6px!important}.crm-contacts-table .crm-entry-table th{font-size:11px!important}.crm-contacts-table .crm-entry-table input{width:100%!important;min-width:0!important}.crm-add-contact-btn{width:100%!important}}

.crm-customer-meta-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}
.crm-change-order-link{border:0;background:transparent!important;color:#8b96a3!important;font-size:12px;font-style:italic;text-decoration:underline;text-underline-offset:3px;padding:8px 4px;cursor:pointer;margin-right:auto}
.crm-order-number-overlay{display:none;position:fixed;inset:0;z-index:100150;background:rgba(20,28,36,.38);align-items:center;justify-content:center;padding:16px}
.crm-order-number-overlay.open{display:flex}.crm-order-number-dialog{width:min(430px,100%);background:#fff;border-radius:12px;padding:18px;box-shadow:0 18px 55px rgba(0,0,0,.22)}
.crm-order-number-title{font-size:17px;font-weight:750;color:#2c3e50;margin-bottom:10px}.crm-order-number-warning{font-size:12px;line-height:1.5;color:#687583;background:#f6f7f8;border:1px solid var(--border);border-radius:8px;padding:10px 12px;margin-bottom:14px}
.crm-order-number-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:15px}
@media(max-width:768px){
 .crm-customer-meta-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;margin-top:12px}
 .crm-customer-meta-row .crm-form-group label{font-size:10px!important}
 .crm-customer-meta-row input,.crm-customer-meta-row select{font-size:12px!important;padding:7px 8px!important}
 .crm-footer-buttons{width:100%;align-items:center}
 .crm-change-order-link{font-size:11px!important;max-width:125px;line-height:1.2;text-align:left}
 .crm-order-number-overlay{padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}
}

.crm-finance-add-btn{margin:8px 8px 8px 0!important;background:#eef1f4!important;color:#34495e!important;border:1px solid var(--border)!important}
#show-extra-income-btn{background:#fff3e2!important;color:#9a5a08!important}
.crm-project-notes.desktop-fullscreen{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;margin:0!important;border-radius:0!important;z-index:50!important}
.crm-project-notes.desktop-fullscreen .crm-notes-editor{max-width:none!important}
@media(min-width:769px){.crm-project-notes.desktop-fullscreen{position:absolute!important}}
@media(max-width:768px){
 .crm-finance-add-btn{font-size:12px!important;padding:8px 10px!important}
}

/* v1.5.8: contract-number dialog matches the compact link editor */
.crm-order-number-overlay{
 display:none;
 position:fixed!important;
 inset:0!important;
 z-index:100160!important;
 width:auto!important;height:auto!important;
 background:rgba(20,28,36,.38)!important;
 align-items:center!important;justify-content:center!important;
 padding:16px!important;
 box-sizing:border-box!important;
 transform:none!important;
}
.crm-order-number-overlay.open{display:flex!important}
.crm-order-number-dialog{
 width:min(430px,100%)!important;
 min-width:0!important;max-width:430px!important;
 min-height:0!important;height:auto!important;max-height:calc(100dvh - 32px)!important;
 overflow:auto!important;
 margin:0!important;
 background:#fff!important;border-radius:12px!important;
 padding:18px!important;box-sizing:border-box!important;
 box-shadow:0 18px 55px rgba(0,0,0,.22)!important;
}
@media(max-width:768px){
 .crm-order-number-overlay{
   padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))!important;
 }
 .crm-order-number-dialog{
   width:100%!important;max-width:430px!important;
   min-height:0!important;height:auto!important;
   border-radius:12px!important;padding:18px!important;
 }
}

/* v1.5.9: contract-list workflow highlighting */
#contracts-table-body tr.crm-contract-row-send-link>td{background:#fff8d9!important}
#contracts-table-body tr.crm-contract-row-ready>td{background:#e9f7ed!important}
#contracts-table-body tr.crm-contract-row-send-link:hover>td{background:#fff3bd!important}
#contracts-table-body tr.crm-contract-row-ready:hover>td{background:#dcf1e2!important}

.crm-workflow-card.crm-status-needs-review{
 border:3px solid #c71920!important;
 box-shadow:0 0 0 2px rgba(199,25,32,.10)!important;
}
.crm-workflow-card.crm-status-needs-review label{color:#b5151b!important;font-weight:800!important}

.crm-order-extras{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}
.crm-extra-toggle{border:1px solid var(--border);background:#f5f7f9;color:#526273;border-radius:8px;padding:8px 13px;font-weight:650;cursor:pointer}
.crm-extra-toggle.active{background:#e8eef5;color:#2c3e50;border-color:#aebdca}
.crm-order-extra-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:8px}
.crm-order-extra-field{display:none}.crm-order-extra-field.open{display:block}
.fin-col-amount{width:18%}.fin-col-date{width:22%}.fin-col-comment{width:auto}.fin-col-category{width:26%}

@media(max-width:768px){
 .crm-class-grid{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:8px!important}
 .crm-class-grid .crm-form-group{min-width:0!important;margin:0!important}
 .crm-class-grid label{font-size:10px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 .crm-class-grid input,.crm-class-grid select{width:100%!important;min-width:0!important;font-size:12px!important;padding:7px 8px!important}

 .crm-order-extras{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}
 .crm-extra-toggle{width:100%!important;padding:8px 4px!important;font-size:11px!important}
 .crm-order-extra-fields{grid-template-columns:1fr!important;gap:6px!important}

 #payments-section .crm-entry-table,#extra-income-section .crm-entry-table,#expenses-section .crm-entry-table{display:block!important;width:100%!important}
 #payments-section thead,#extra-income-section thead,#expenses-section thead{display:none!important}
 #payments-section tbody,#extra-income-section tbody,#expenses-section tbody{display:block!important;width:100%!important}
 #payments-section tr,#extra-income-section tr,#expenses-section tr{
   display:grid!important;width:100%!important;box-sizing:border-box!important;
   grid-template-columns:72px minmax(108px,126px) 30px!important;
   gap:5px!important;padding:7px!important;border-bottom:1px solid var(--border)!important
 }
 #expenses-section tr{grid-template-columns:minmax(92px,1fr) 68px minmax(105px,122px) 30px!important}
 #payments-section td,#extra-income-section td,#expenses-section td{display:block!important;width:auto!important;min-width:0!important;padding:0!important;border:0!important}
 #payments-section td:nth-child(3),#extra-income-section td:nth-child(3){grid-column:1 / 3!important;grid-row:2!important}
 #payments-section td:nth-child(4),#extra-income-section td:nth-child(4){grid-column:3!important;grid-row:1 / 3!important;align-self:start!important}
 #expenses-section td:nth-child(4){grid-column:1 / 4!important;grid-row:2!important}
 #expenses-section td:nth-child(5){grid-column:4!important;grid-row:1 / 3!important;align-self:start!important}
 #payments-section input,#extra-income-section input,#expenses-section input,#expenses-section select{width:100%!important;min-width:0!important;box-sizing:border-box!important;font-size:11px!important;padding:6px!important}
 #payments-section .pay-comm,#extra-income-section .pay-comm,#expenses-section .exp-comm{min-height:32px!important}
 .crm-finance-add-btn{width:auto!important}
}

/* v1.5.12 mobile finance layout */
@media(max-width:768px){
 #financial-edit-block,
 #payments-section,#extra-income-section,#expenses-section,
 #payments-section .crm-entry-table-wrap,#extra-income-section .crm-entry-table-wrap,#expenses-section .crm-entry-table-wrap{
   width:100%!important;max-width:100%!important;min-width:0!important;
   overflow-x:hidden!important;overflow-y:visible!important;
   box-sizing:border-box!important;
 }
 #payments-section .crm-entry-table,#extra-income-section .crm-entry-table,#expenses-section .crm-entry-table{
   display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;
   table-layout:fixed!important;overflow:visible!important;margin:0!important;
 }
 #payments-section colgroup,#extra-income-section colgroup,#expenses-section colgroup{display:none!important}
 #payments-section tbody,#extra-income-section tbody,#expenses-section tbody{display:block!important;width:100%!important;min-width:0!important}
 #payments-section tr,#extra-income-section tr{
   display:grid!important;
   grid-template-columns:minmax(0,1fr) minmax(0,1.35fr) 34px!important;
   grid-template-rows:auto auto!important;
   width:100%!important;min-width:0!important;max-width:100%!important;
   gap:6px!important;padding:8px!important;box-sizing:border-box!important;
 }
 #expenses-section tr{
   display:grid!important;
   grid-template-columns:minmax(0,1.45fr) minmax(62px,.7fr) minmax(0,1.25fr) 34px!important;
   grid-template-rows:auto auto!important;
   width:100%!important;min-width:0!important;max-width:100%!important;
   gap:6px!important;padding:8px!important;box-sizing:border-box!important;
 }
 #payments-section td,#extra-income-section td,#expenses-section td{
   display:block!important;width:auto!important;min-width:0!important;max-width:none!important;
   padding:0!important;margin:0!important;border:0!important;overflow:visible!important;
 }
 #payments-section td:nth-child(1),#extra-income-section td:nth-child(1){grid-column:1;grid-row:1}
 #payments-section td:nth-child(2),#extra-income-section td:nth-child(2){grid-column:2;grid-row:1}
 #payments-section td:nth-child(3),#extra-income-section td:nth-child(3){grid-column:1 / 3!important;grid-row:2!important}
 #payments-section td:nth-child(4),#extra-income-section td:nth-child(4){grid-column:3!important;grid-row:1 / 3!important}
 #expenses-section td:nth-child(1){grid-column:1;grid-row:1}
 #expenses-section td:nth-child(2){grid-column:2;grid-row:1}
 #expenses-section td:nth-child(3){grid-column:3;grid-row:1}
 #expenses-section td:nth-child(4){grid-column:1 / 4!important;grid-row:2!important}
 #expenses-section td:nth-child(5){grid-column:4!important;grid-row:1 / 3!important}
 #payments-section input,#extra-income-section input,#expenses-section input,#expenses-section select{
   display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;
   box-sizing:border-box!important;font-size:12px!important;padding:7px 6px!important;margin:0!important;
 }
 #expenses-section select{font-size:11px!important;padding-left:5px!important;padding-right:18px!important}
 #payments-section .pay-comm,#extra-income-section .pay-comm,#expenses-section .exp-comm{
   width:100%!important;min-height:34px!important;
 }
 #payments-section .crm-table-remove,#extra-income-section .crm-table-remove,#expenses-section .crm-table-remove{
   width:32px!important;height:32px!important;margin:0!important;padding:0!important;
 }
 #show-payment-btn,#show-extra-income-btn,#show-expense-btn{
   display:inline-flex!important;width:auto!important;max-width:100%!important;
   margin:7px 6px 12px 0!important;font-size:11px!important;padding:8px 10px!important;
 }
 .crm-order-extra-fields{order:1!important;margin-top:10px!important;margin-bottom:7px!important}
 .crm-order-extras{order:2!important;margin-top:0!important}
}

/* ===== AlbomLab CRM v1.7: mobile contacts + albums ===== */
@media(max-width:768px){
 .crm-contacts-table,
 .crm-contacts-table .crm-entry-table,
 #albums-edit-block .crm-entry-table-wrap,
 #albums-edit-block .crm-entry-table,
 .crm-data-section.albums{
   width:100%!important;max-width:100%!important;min-width:0!important;
   overflow-x:hidden!important;overflow-y:visible!important;box-sizing:border-box!important;
 }
 .crm-contacts-table colgroup,.crm-contacts-table thead,
 #albums-edit-block colgroup,#albums-edit-block thead{display:none!important}
 .crm-contacts-table table,.crm-contacts-table tbody,
 #albums-edit-block table,#albums-edit-block tbody{
   display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;
 }
 .crm-contacts-table tr{
   display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 34px!important;
   gap:6px!important;width:100%!important;max-width:100%!important;min-width:0!important;
   padding:7px!important;box-sizing:border-box!important;border-bottom:1px solid var(--border)!important;
 }
 .crm-contacts-table td{
   display:block!important;width:auto!important;max-width:100%!important;min-width:0!important;
   padding:0!important;border:0!important;overflow:hidden!important;
 }
 .crm-contacts-table input{
   display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;
   box-sizing:border-box!important;font-size:12px!important;padding:7px 6px!important;
 }
 .crm-contacts-table .col-remove{width:34px!important}
 .crm-add-contact-btn{max-width:100%!important}

 #albums-edit-block .album-row{
   display:grid!important;
   grid-template-columns:minmax(0,1fr) 58px 72px 34px!important;
   grid-template-rows:auto auto!important;
   gap:6px!important;width:100%!important;max-width:100%!important;min-width:0!important;
   padding:8px!important;box-sizing:border-box!important;border-bottom:1px solid var(--border)!important;
 }
 #albums-edit-block .album-row td{
   display:block!important;width:auto!important;max-width:100%!important;min-width:0!important;
   padding:0!important;border:0!important;overflow:hidden!important;
 }
 #albums-edit-block .album-row td:nth-child(1){grid-column:1;grid-row:1}
 #albums-edit-block .album-row td:nth-child(2){grid-column:2;grid-row:1}
 #albums-edit-block .album-row td:nth-child(3){grid-column:3;grid-row:1}
 #albums-edit-block .album-comment-cell{grid-column:1 / 4!important;grid-row:2!important}
 #albums-edit-block .album-row .col-remove{grid-column:4!important;grid-row:1 / 3!important;align-self:start!important}
 #albums-edit-block input{
   display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;
   box-sizing:border-box!important;font-size:11px!important;padding:7px 6px!important;
 }
 #albums-edit-block .album-comment{font-size:12px!important}
 #albums-edit-block .crm-table-remove{width:32px!important;height:32px!important;padding:0!important}
 #albums-edit-block .crm-table-add{max-width:100%!important}
}
.crm-albums-count-col{text-align:center!important}

/* v1.7 notes editor mobile reliability */
.crm-notes-editor{
    caret-color:#263442!important;
    -webkit-user-select:text!important;
    user-select:text!important;
    touch-action:manipulation;
}
.crm-project-notes.fullscreen .crm-notes-editor{
    cursor:text!important;
    -webkit-user-select:text!important;
    user-select:text!important;
}
@media(max-width:768px){
    body.crm-notes-editing #clientNotesCard.fullscreen .crm-notes-editor{
        visibility:visible!important;
        opacity:1!important;
        pointer-events:auto!important;
        min-height:180px!important;
        -webkit-user-select:text!important;
        user-select:text!important;
    }
}


/* v1.7 — explicit notes formatting state */
.crm-notes-toolbar button.is-active,
.crm-notes-toolbar .crm-note-tool.is-active{
    background:#263442!important;
    color:#fff!important;
    border-color:#263442!important;
    box-shadow:0 0 0 2px rgba(38,52,66,.16)!important;
    transform:translateY(-1px);
}
.crm-notes-toolbar button.is-active svg,
.crm-notes-toolbar .crm-note-tool.is-active svg{
    stroke:currentColor!important;
    fill:currentColor!important;
}

#clientNotesFormatbar .crm-note-tool.is-active,
#clientNotesFormatbar .crm-note-color.is-active{
 border:3px solid #263442!important;
 box-shadow:none!important;
 outline:none!important;
}
#clientNotesFormatbar .crm-note-tool.is-active{font-weight:800!important;background:#f1f4f7!important}
#clientNotesFormatbar .crm-note-separator-tool{width:48px!important;min-width:48px!important;max-width:48px!important;padding:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;font-size:22px!important;font-weight:700!important}
#clientNotesCard:not(.fullscreen) .crm-notes-title{font-size:12px!important;font-weight:600!important;color:#747d8c!important;line-height:1.2!important}
#clientNotesCard:not(.fullscreen) #clientNotesFormatbar{display:none!important}
#clientNotesCard:not(.fullscreen) #clientInfoEditor{cursor:text!important;-webkit-user-select:text!important;user-select:text!important}
#clientInfoEditor hr.crm-note-separator{border:0;border-top:1px solid #cfd6dd;margin:14px 0}

#clientNotesFormatbar button:focus,
#clientNotesFormatbar button:focus-visible,
#clientNotesFormatbar button:active{outline:none!important;box-shadow:none!important}
#clientNotesFormatbar .crm-note-tool:not(.is-active),
#clientNotesFormatbar .crm-note-color:not(.is-active){box-shadow:none!important;outline:none!important}

#clientNotesFormatbar button:not(.is-active):focus,
#clientNotesFormatbar button:not(.is-active):focus-visible,
#clientNotesFormatbar button:not(.is-active):active{background:#fff!important}

/* final v1.7: toolbar buttons never retain browser pressed/focus background */
#clientNotesFormatbar .crm-note-tool,
#clientNotesFormatbar .crm-note-tool:hover,
#clientNotesFormatbar .crm-note-tool:focus,
#clientNotesFormatbar .crm-note-tool:focus-visible,
#clientNotesFormatbar .crm-note-tool:active{
 background:#fff!important;
 -webkit-tap-highlight-color:transparent!important;
}
#clientNotesFormatbar .crm-note-tool.is-active{
 background:#fff!important;
}

.crm-work-section-title{
 margin:22px 0 10px!important;padding:0!important;
 border:0!important;
 font-size:16px!important;font-weight:700!important;line-height:1.25!important;color:#2c3e50!important;
}
@media(max-width:768px){
 .crm-work-section-title{margin:18px 0 9px!important;padding:0!important;font-size:15px!important}
}

.crm-project-work-frame{
 border:1px solid #d7e0e8!important;
 border-radius:12px!important;
 overflow:hidden!important;
 background:#fff!important;
 margin-bottom:18px!important;
}
.crm-project-work-frame .crm-project-controls{
 border:0!important;border-radius:0!important;margin:0!important;
 box-shadow:none!important;
}
.crm-project-work-frame #clientNotesCard{
 border:0!important;border-radius:0!important;margin:0!important;
 box-shadow:none!important;
 border-top:1px solid #e1e6eb!important;
}
@media(max-width:768px){
 .crm-project-work-frame{border-radius:11px!important;margin-bottom:16px!important}
}
 
.crm-project-work-frame{border:1px solid #d7e0e8!important;border-radius:12px!important;overflow:hidden!important;background:#fff!important;margin-bottom:18px!important}
.crm-project-work-frame .crm-project-controls{
 border:0!important;border-radius:0!important;margin:0!important;box-shadow:none!important;
 padding-bottom:0!important;
}
.crm-project-work-frame #clientNotesCard{
 margin:12px!important;
 border:1px solid #d7e0e8!important;
 border-radius:11px!important;
 box-shadow:none!important;
}
@media(max-width:768px){.crm-project-work-frame{border-radius:11px!important;margin-bottom:16px!important}}

/* final v1.7 spacing: project heading follows the same rhythm as Finance */
.crm-section-title + .crm-project-work-frame{margin-top:0!important}

/* v1.7 final layout cleanup */
h4.crm-section-title[style*="margin-top:35px"]{
 margin-top:35px!important;
 padding-top:0!important;
}
.crm-project-work-frame{
 border:0!important;
 border-radius:0!important;
 overflow:visible!important;
 background:transparent!important;
 margin:0 0 18px!important;
 padding:6px!important;
 box-shadow:none!important;
}
.crm-project-work-frame .crm-project-controls{
 border:0!important;
 border-radius:0!important;
 margin:0!important;
 padding:0!important;
 background:transparent!important;
 box-shadow:none!important;
}
.crm-project-work-frame #clientNotesCard:not(.fullscreen){
 margin:7px 0 0!important;
 border:1px solid #d7dee5!important;
 border-radius:10px!important;
 box-shadow:none!important;
 overflow:hidden!important;
}
@media(max-width:768px){
 h4.crm-section-title[style*="margin-top:35px"]{margin-top:35px!important;padding-top:0!important}
 .crm-project-work-frame{padding:6px!important;margin-bottom:18px!important}
 .crm-project-work-frame #clientNotesCard:not(.fullscreen){margin-top:7px!important}
}


/* v1.7 final frame correction: one outer work frame + one inner notes frame */
.crm-project-work-frame{
 border:1px solid #d7e0e8!important;
 border-radius:11px!important;
 overflow:hidden!important;
 background:#fff!important;
 margin:0 0 18px!important;
 padding:6px!important;
 box-shadow:none!important;
}
.crm-project-work-frame .crm-project-controls{
 border:0!important;
 box-shadow:none!important;
}
.crm-project-work-frame #clientNotesCard:not(.fullscreen){
 border:1px solid #d7dee5!important;
 border-radius:10px!important;
 margin:7px 0 0!important;
 box-shadow:none!important;
}


/* AlbomLab CRM v1.7.3: shooting modal mobile layout + notes parity */
.crm-shoot-date-row>*{min-width:0}.crm-shoot-date-row input{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
@media(max-width:768px){.crm-shoot-date-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:6px!important}.crm-shoot-date-row .crm-form-group{min-width:0!important;width:auto!important}.crm-shoot-date-row input{font-size:13px!important;padding:10px 6px!important}.crm-calendar-notes.fullscreen{position:fixed!important;inset:0!important;width:100%!important;height:100dvh!important;margin:0!important;border:0!important;border-radius:0!important;z-index:100010!important;padding-left:env(safe-area-inset-left)!important;padding-right:env(safe-area-inset-right)!important;box-sizing:border-box!important}.crm-calendar-notes.fullscreen .crm-notes-head{width:100%;box-sizing:border-box;padding-top:10px!important}.crm-calendar-notes.fullscreen .crm-notes-formatbar{width:100%;box-sizing:border-box;display:flex!important;flex-wrap:nowrap!important;gap:clamp(2px,1vw,5px)!important;padding:7px max(6px,env(safe-area-inset-right)) 7px max(6px,env(safe-area-inset-left))!important;overflow:hidden}.crm-calendar-notes.fullscreen .crm-note-tool{height:36px;min-width:38px;font-size:13px;padding:0 7px}.crm-calendar-notes.fullscreen .crm-note-tool.heading{min-width:92px}.crm-calendar-notes.fullscreen .crm-note-color{width:32px;height:32px;flex:0 0 32px}.crm-calendar-notes.fullscreen .crm-notes-editor{width:auto!important;max-width:none!important;margin:8px!important;box-sizing:border-box!important;font-size:16px!important}}

/* AlbomLab CRM v1.7.4: iPhone calendar date/time row */
@media(max-width:768px){
 .crm-shoot-date-row{display:grid!important;grid-template-columns:minmax(0,3fr) minmax(0,2fr)!important;gap:8px!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important}
 .crm-shoot-date-row .crm-form-group{min-width:0!important;width:100%!important;max-width:100%!important;overflow:hidden!important;box-sizing:border-box!important}
 .crm-shoot-date-row input[type=date],.crm-shoot-date-row input[type=time]{display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important;margin:0!important;padding:10px 8px!important;font-size:13px!important}
 .crm-shoot-date-row input[type=date]{-webkit-appearance:none!important;appearance:none!important}
}

/* AlbomLab CRM v1.7.5: custom shooting date/time/duration pickers */
.crm-custom-picker-field{width:100%;height:42px;min-height:42px;box-sizing:border-box;border:1px solid var(--border);border-radius:6px;background:#fff;color:#2f3542;font:inherit;font-size:14px;text-align:left;padding:0 11px;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.crm-custom-picker-field:focus{outline:2px solid rgba(186,26,33,.14);border-color:var(--primary)}.crm-picker-overlay{position:fixed;inset:0;z-index:100020;background:rgba(20,28,36,.38);display:flex;align-items:flex-end;justify-content:center}.crm-picker-sheet{width:min(520px,100%);background:#fff;border-radius:16px 16px 0 0;padding:10px 14px calc(14px + env(safe-area-inset-bottom));box-shadow:0 -12px 40px rgba(0,0,0,.18);box-sizing:border-box}.crm-picker-head{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;height:44px;border-bottom:1px solid #e7ebef}.crm-picker-head button{border:0;background:transparent;color:#667382;font-size:14px;padding:8px;text-align:left}.crm-picker-head button.primary{color:var(--primary);font-weight:750;text-align:right}.crm-picker-head b{text-align:center;color:#2c3e50}.crm-date-picker-nav{display:grid;grid-template-columns:42px 1fr 42px;align-items:center;margin:8px 0}.crm-date-picker-nav button{border:0;background:#f2f5f7;border-radius:8px;height:36px;font-size:25px;color:#465463}.crm-date-picker-nav b{text-align:center;color:#2c3e50}.crm-date-picker-week,.crm-date-picker-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.crm-date-picker-week span{text-align:center;font-size:10px;color:#8b98a5;font-weight:700;padding:5px 0}.crm-date-picker-day{height:42px;border:0;border-radius:9px;background:transparent;color:#2f3542;font-size:14px}.crm-date-picker-day.other{color:#b5bdc5}.crm-date-picker-day.selected{background:var(--primary)!important;color:#fff!important;font-weight:750}.crm-date-picker-day.today:not(.selected){box-shadow:inset 0 0 0 1.5px var(--primary);color:var(--primary);font-weight:700}.crm-picker-clear{display:block;margin:10px auto 0;border:0;background:transparent;color:#ba1a21;font-size:13px;padding:8px 14px}.crm-wheel-sheet{padding-left:18px;padding-right:18px}.crm-wheel-labels{display:grid;grid-template-columns:1fr 1fr;text-align:center;color:#8b98a5;font-size:11px;font-weight:700;padding:10px 0 0}.crm-wheel-wrap{height:220px;display:grid;grid-template-columns:1fr 1fr;position:relative;overflow:hidden;margin-top:2px}.crm-wheel-selection{position:absolute;z-index:0;left:0;right:0;top:88px;height:44px;border-top:1px solid #d7dde3;border-bottom:1px solid #d7dde3;background:#f5f7f9;border-radius:8px}.crm-wheel{height:220px;overflow-y:auto;scroll-snap-type:y mandatory;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;z-index:1;scrollbar-width:none;padding:88px 0;box-sizing:border-box}.crm-wheel::-webkit-scrollbar{display:none}.crm-wheel-item{height:44px;display:flex;align-items:center;justify-content:center;scroll-snap-align:center;font-size:22px;font-variant-numeric:tabular-nums;color:#2f3542;user-select:none}.crm-wheel:first-of-type{border-right:1px solid #eef1f3}@media(max-width:768px){.crm-shoot-date-row,.crm-shoot-meta-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:8px!important}.crm-custom-picker-field,.crm-shoot-meta-row select{height:44px!important;min-height:44px!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;font-size:14px!important}.crm-picker-sheet{width:100%;max-width:none}.crm-date-picker-day{height:40px}}

/* AlbomLab CRM v1.7.6: unified full-width mobile pickers + contract date picker */
.crm-workflow-card .crm-custom-picker-field{margin:0;width:100%}
@media(max-width:768px){
 .crm-picker-overlay{align-items:center!important;justify-content:center!important;width:100vw!important;max-width:none!important;margin:0!important;padding:0!important;box-sizing:border-box!important}
 .crm-picker-sheet{width:100vw!important;max-width:none!important;margin:0!important;border-radius:0!important;padding-left:max(14px,env(safe-area-inset-left))!important;padding-right:max(14px,env(safe-area-inset-right))!important;box-sizing:border-box!important}
 .crm-wheel-sheet{width:100vw!important;max-width:none!important;margin:0!important;border-radius:0!important}
}

/* AlbomLab CRM v1.7.11: linked contract action in shooting editor */
.crm-shoot-contract-link-row{display:flex;align-items:flex-end;gap:8px}
.crm-shoot-contract-link-row .crm-shoot-contract-select-wrap{flex:1 1 auto;min-width:0}
.crm-shoot-contract-link-row select{width:100%}
#calendarEditContractBtn{flex:0 0 auto;white-space:nowrap;min-height:42px}
@media(max-width:768px){
 .crm-shoot-contract-link-row{display:flex;flex-direction:column;align-items:stretch;gap:8px}
 .crm-shoot-contract-link-row .crm-shoot-contract-select-wrap{width:100%}
 #calendarEditContractBtn{width:100%;margin:0}
}

/* AlbomLab CRM v1.7.12: centered custom pickers + compact contract edit action */
.crm-picker-overlay{align-items:center!important;justify-content:center!important}
#calendarEditContractBtn{width:auto!important;min-width:0!important;min-height:0!important;height:auto!important;margin:0!important;padding:9px 14px!important;border-radius:8px!important;white-space:nowrap!important;font-size:13px!important;line-height:1.2!important}
#calendarSaveBtn{padding:9px 14px!important;border-radius:8px!important;font-size:13px!important;line-height:1.2!important}
@media(max-width:768px){#calendarEditContractBtn{width:auto!important;align-self:auto!important}}


/* AlbomLab CRM v1.7.14: picker close/backdrop/footer */
.crm-picker-head{grid-template-columns:40px 1fr 40px!important}
.crm-picker-close-x{justify-self:end!important;width:36px!important;height:36px!important;padding:0!important;border:0!important;border-radius:8px!important;background:transparent!important;color:#667382!important;font-size:28px!important;font-weight:300!important;line-height:34px!important;text-align:center!important;cursor:pointer!important}
.crm-picker-close-x:hover{background:#f0f2f4!important;color:#2f3542!important}
.crm-picker-footer{display:grid;grid-template-columns:1fr 1.35fr;gap:10px;margin:12px -14px calc(-14px - env(safe-area-inset-bottom));padding:12px 14px calc(12px + env(safe-area-inset-bottom));background:#f1f3f5;border-top:1px solid #e0e4e8}
.crm-wheel-sheet .crm-picker-footer{margin-left:-18px;margin-right:-18px;padding-left:18px;padding-right:18px}
.crm-picker-footer button{height:44px;border-radius:9px;font:inherit;font-size:14px;font-weight:700;cursor:pointer}
.crm-picker-footer-clear{border:1px solid #d7dde3;background:#fff;color:#ba1a21}
.crm-picker-footer-done{border:1px solid var(--primary);background:var(--primary);color:#fff}
@media(max-width:768px){.crm-picker-footer{margin-left:calc(-1 * max(14px,env(safe-area-inset-left)))!important;margin-right:calc(-1 * max(14px,env(safe-area-inset-right)))!important;padding-left:max(14px,env(safe-area-inset-left))!important;padding-right:max(14px,env(safe-area-inset-right))!important}.crm-wheel-sheet .crm-picker-footer{margin-left:calc(-1 * max(14px,env(safe-area-inset-left)))!important;margin-right:calc(-1 * max(14px,env(safe-area-inset-right)))!important}}
/* v1.7.9: configurable shooting types */
#calendarNotesFormatbar .crm-note-tool.is-active,#calendarNotesFormatbar .crm-note-color.is-active{border:3px solid #263442!important;box-shadow:none!important;outline:none!important}
#calendarNotesFormatbar .crm-note-tool.is-active{font-weight:800!important;background:#fff!important}
#calendarNotesFormatbar .crm-note-separator-tool{width:48px!important;min-width:48px!important;max-width:48px!important;padding:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;font-size:22px!important;font-weight:700!important}
#calendarNotesFormatbar button:focus,#calendarNotesFormatbar button:focus-visible,#calendarNotesFormatbar button:active{outline:none!important;box-shadow:none!important}
#calendarNotesFormatbar .crm-note-tool:not(.is-active),#calendarNotesFormatbar .crm-note-color:not(.is-active){box-shadow:none!important;outline:none!important}
#calendarNotesFormatbar button:not(.is-active):focus,#calendarNotesFormatbar button:not(.is-active):focus-visible,#calendarNotesFormatbar button:not(.is-active):active{background:#fff!important}
#calendarNotesFormatbar .crm-note-tool,#calendarNotesFormatbar .crm-note-tool:hover,#calendarNotesFormatbar .crm-note-tool:focus,#calendarNotesFormatbar .crm-note-tool:focus-visible,#calendarNotesFormatbar .crm-note-tool:active{background:#fff!important;-webkit-tap-highlight-color:transparent!important}
#calendarNotesFormatbar .crm-note-tool.is-active{background:#fff!important}
#calendarEventNotes hr.crm-note-separator{border:0;border-top:1px solid #cfd6dd;margin:14px 0}
#calendarNoteLinkOverlay{z-index:100100!important}

/* v1.7.9 — required shooting type */
.crm-shoot-status-required select{border:2px solid #ba1a21!important;box-shadow:0 0 0 2px rgba(186,26,33,.08)!important}
.crm-shoot-status-required label{color:#ba1a21!important;font-weight:700!important}

/* AlbomLab CRM v1.7.18: occupancy labels */
.crm-occupancy-group{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:1px 0 4px}
.crm-occupancy-btn{min-height:38px;border:1px solid #dfe4ea;border-radius:7px;font-size:11px;font-weight:700;cursor:pointer;padding:7px 5px;box-sizing:border-box;transition:.15s}
.crm-occupancy-btn.occupancy-free{background:#fff;color:#57606f}.crm-occupancy-btn.occupancy-partial{background:#f39c12;color:#fff;border-color:#f39c12}.crm-occupancy-btn.occupancy-full{background:#ba1a21;color:#fff;border-color:#ba1a21}
.crm-occupancy-btn:not(.is-active){opacity:.42;box-shadow:none}.crm-occupancy-btn.is-active{opacity:1;box-shadow:0 0 0 2px #fff,0 0 0 4px #2c3e50}
.crm-calendar-event.occupancy-free{background:#fff!important;color:#57606f!important;border:1px solid #dfe4ea!important}.crm-calendar-event.occupancy-partial{background:#f39c12!important;color:#fff!important}.crm-calendar-event.occupancy-full{background:#ba1a21!important;color:#fff!important}
@media(max-width:768px){.crm-occupancy-group{gap:4px}.crm-occupancy-btn{font-size:9px;padding:6px 2px;min-height:36px}}

/* AlbomLab CRM v1.7.18: desktop full-height month and two-line event cards */
@media(min-width:769px){
 .crm-calendar-shell{height:100%!important;min-height:0!important}
 .crm-calendar-scroll{flex:1!important;min-height:0!important;overflow:hidden!important}
 .crm-calendar-grid{height:100%!important;grid-template-rows:repeat(6,minmax(0,1fr))!important;grid-auto-rows:minmax(0,1fr)!important}
 .crm-calendar-day{min-height:0!important;overflow:hidden!important}
}
.crm-calendar-event{white-space:normal!important;text-overflow:clip!important}
.crm-calendar-event-main,.crm-calendar-event-type{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.crm-calendar-event-main{font-weight:700}
.crm-calendar-event-type{margin-top:2px;font-size:.92em;opacity:.9}
/* AlbomLab CRM v1.8.2: separate Integration menu with Contract Form and Occupancy Schedule */

/* AlbomLab CRM v1.10.4: calendar filters */
.crm-calendar-shell{position:relative}
.crm-calendar-filter-row{display:flex;align-items:center;gap:7px;min-height:38px;position:relative;z-index:45}
.crm-calendar-filter-wrap{position:relative;display:flex;align-items:center;gap:6px}
.crm-calendar-filter-btn{position:static!important;transform:none!important}
.crm-calendar-filter-reset{display:none;width:30px;height:30px;border:0;border-radius:7px;background:#c51a22;color:#fff;font-size:20px;line-height:1;cursor:pointer;align-items:center;justify-content:center}
.crm-calendar-filter-reset.visible{display:inline-flex}
.crm-calendar-filter-panel{display:none;position:absolute;left:0!important;right:auto!important;top:calc(100% + 7px);z-index:80;width:min(680px,calc(100vw - 60px));background:#fff;border:1px solid #d8dee5;border-radius:10px;box-shadow:0 14px 38px rgba(44,62,80,.18);padding:10px}
.crm-calendar-filter-panel.open{display:block}
.crm-calendar-filter-section{border-bottom:1px solid #edf0f3}.crm-calendar-filter-section:last-child{border-bottom:0}
.crm-calendar-filter-section-head{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;border:0;background:#fff;color:#435165;padding:10px 5px;font-size:13px;font-weight:750;text-align:left;cursor:pointer}
.crm-calendar-filter-section-head .right{display:flex;align-items:center;gap:8px}.crm-calendar-filter-section-head .chev{transition:transform .18s ease}.crm-calendar-filter-section.open .chev{transform:rotate(180deg)}
.crm-calendar-filter-section-reset{display:none;border:0;background:#c51a22;color:#fff;border-radius:50%;width:22px;height:22px;line-height:20px;font-size:15px;cursor:pointer;padding:0}.crm-calendar-filter-section.has-value .crm-calendar-filter-section-reset{display:inline-block}
.crm-calendar-filter-options{display:none;padding:0 4px 10px;gap:5px;flex-wrap:wrap}.crm-calendar-filter-section.open .crm-calendar-filter-options{display:flex}
.crm-calendar-toolbar{display:grid!important;grid-template-columns:1fr auto 1fr!important;align-items:center!important;justify-content:stretch!important;position:relative}
.crm-calendar-toolbar-left{grid-column:2!important;margin:0!important;justify-self:center!important;display:flex;align-items:center;gap:6px}.crm-calendar-toolbar-right{grid-column:3;justify-self:end}
.crm-calendar-list-view.active{display:block!important;overflow-y:auto;overflow-x:hidden;touch-action:pan-y;overscroll-behavior-x:none;flex:1;min-height:0;background:#fff;border:1px solid var(--border);border-radius:8px;padding:0 12px 16px}
.crm-calendar-date-heading{position:static;background:#eef2f5;color:#2c3e50;font-size:14px;font-weight:800;padding:10px 12px;margin:0 -12px 8px;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.crm-calendar-year-heading{background:#dfe5ea;color:#24384a;font-size:16px;font-weight:900;padding:12px 14px;margin:14px -12px 0;border-top:1px solid #cbd3da;border-bottom:1px solid #cbd3da;text-align:left}.crm-calendar-year-heading:first-child{margin-top:0}
.crm-calendar-list-event{background:#fff;border:1px solid #d8dee5;border-radius:8px;padding:10px 12px;margin:7px 0;cursor:pointer}.crm-calendar-list-event:hover{background:#f8f9fa}.crm-calendar-list-event-title{font-weight:750;color:#2c3e50;font-size:13px}.crm-calendar-list-event-type{margin-top:3px;color:#747d8c;font-size:11px}
@media(max-width:768px){.crm-day-events-modal{align-items:center!important}.crm-day-events-modal .crm-modal{height:auto!important;min-height:0!important;max-height:calc(100dvh - 24px)!important;margin:12px!important;border-radius:12px!important}.crm-day-events-modal .crm-modal-body{flex:0 1 auto!important;overflow:auto!important}}
@media(max-width:768px){.crm-calendar-filter-row{padding:0 1px}.crm-calendar-filter-panel{position:fixed!important;left:12px!important;right:12px!important;top:auto!important;bottom:18px!important;width:auto!important;max-height:68dvh;overflow:auto}.crm-calendar-toolbar{grid-template-columns:1fr auto 1fr!important}.crm-calendar-toolbar-left{width:auto!important}.crm-calendar-list-view.active{padding-left:10px;padding-right:10px}.crm-calendar-date-heading{margin-left:-10px;margin-right:-10px}}

/* AlbomLab CRM v1.10.4: calendar filter mirrors contract filter */
@media(min-width:769px){
 .crm-calendar-filter-row{min-height:42px!important;display:flex!important;align-items:center!important;overflow-x:auto!important;overflow-y:hidden!important;gap:7px!important;z-index:45}
 .crm-calendar-filter-wrap{display:flex!important;align-items:center!important;gap:7px!important;position:relative!important}
 .crm-calendar-filter-wrap:before{content:"Фильтр";font-size:11px;font-weight:700;color:#747d8c;flex:0 0 auto}
 .crm-calendar-filter-panel{display:contents!important}
 .crm-calendar-filter-section{display:contents!important;border:0!important}
 .crm-calendar-filter-section-head{height:38px!important;width:auto!important;flex:0 0 auto!important;margin:0!important;padding:6px 10px!important;border:1px solid #d8dee5!important;border-radius:7px!important;background:#fff!important;color:#435165!important;font-size:12px!important;font-weight:700!important;cursor:pointer!important}
 .crm-calendar-filter-section-head .right{display:none!important}
 .crm-calendar-filter-section-head .chev{display:none!important}
 .crm-calendar-filter-options{display:none!important;position:static!important;width:auto!important;height:auto!important;min-height:0!important;max-height:none!important;max-width:none!important;opacity:1!important;transform:none!important;overflow:visible!important;flex:0 0 auto!important;margin:0!important;padding:4px!important;gap:5px!important;border:1px solid #d7dee6!important;border-radius:9px!important;background:linear-gradient(180deg,#fff,#f1f4f7)!important;box-shadow:0 3px 10px rgba(44,62,80,.08)!important}
 .crm-calendar-filter-section.open .crm-calendar-filter-options{display:flex!important;align-items:center!important}
 .crm-calendar-filter-section.open .crm-calendar-filter-section-head{background:#2c3e50!important;color:#fff!important;border-color:#2c3e50!important}
 .crm-calendar-filter-options .crm-filter-option{height:30px!important;margin:0!important;padding:4px 10px!important;flex:0 0 auto!important}
 .crm-calendar-filter-btn{display:none!important}
 .crm-calendar-filter-reset{flex:0 0 auto!important}
}
@media(max-width:768px) and (orientation:portrait){
 .crm-calendar-filter-row{display:flex!important;align-items:center!important;justify-content:flex-start!important;position:relative!important;overflow:visible!important;min-height:42px!important}
 .crm-calendar-filter-wrap{position:static!important;display:flex!important;align-items:center!important;gap:7px!important}
 .crm-calendar-filter-btn{display:inline-flex!important;height:34px!important;padding:6px 10px!important}
 .crm-calendar-filter-panel{display:none!important;position:absolute!important;left:0!important;right:0!important;top:calc(100% + 7px)!important;bottom:auto!important;width:auto!important;max-height:62dvh!important;overflow:auto!important;z-index:130!important;margin:0!important;border:1px solid #d8dee5!important;border-radius:10px!important;background:#fff!important;box-shadow:0 14px 38px rgba(44,62,80,.2)!important;padding:10px!important}
 .crm-calendar-filter-panel.open{display:block!important}
 .crm-calendar-filter-section{border-bottom:1px solid #edf0f3!important}
 .crm-calendar-filter-section:last-child{border-bottom:0!important}
 .crm-calendar-filter-section-head{width:100%!important;display:flex!important;align-items:center!important;justify-content:space-between!important;border:0!important;background:#fff!important;color:#435165!important;padding:11px 5px!important;font-size:13px!important;font-weight:750!important;text-align:left!important}
 .crm-calendar-filter-section-head .right{display:flex!important}.crm-calendar-filter-section-head .crm-calendar-filter-section-reset{display:none!important}
 .crm-calendar-filter-options{display:none!important;padding:0 4px 10px!important;gap:5px!important;flex-direction:column!important;flex-wrap:nowrap!important}
 .crm-calendar-filter-section.open .crm-calendar-filter-options{display:flex!important}
 .crm-calendar-filter-options .crm-filter-option{width:100%!important;height:34px!important;text-align:left!important;padding:6px 10px!important}
 .crm-calendar-filter-reset{width:30px!important;height:30px!important}
}

/* AlbomLab CRM v1.10.4: unified filter reset and filtered-list behavior */
.crm-contract-filter-reset{display:none;width:30px;height:30px;border:0;border-radius:7px;background:#c51a22;color:#fff;font-size:20px;line-height:1;cursor:pointer;align-items:center;justify-content:center;flex:0 0 auto}.crm-contract-filter-reset.visible{display:inline-flex}
.crm-calendar-filter-section-head .right,.crm-calendar-filter-section-head .chev,.crm-calendar-filter-section-reset{display:none!important}
.crm-calendar-toolbar.filtered{display:none!important}
@media(min-width:769px){.crm-calendar-filter-wrap:before{display:none!important}.crm-calendar-filter-row:before{content:"Фильтр";font-size:11px;font-weight:700;color:#747d8c;flex:0 0 auto}.crm-calendar-filter-reset{order:0}.crm-calendar-filter-panel{order:1}.crm-calendar-filter-section-head{order:initial}}
@media(max-width:768px){.crm-contract-filter-reset{width:30px;height:30px}.crm-mobile-filter-wrap{display:flex!important;align-items:center;gap:7px}}

/* AlbomLab CRM v1.10.4: calendar view mode */
.crm-calendar-filter-row{justify-content:flex-start}
.crm-calendar-view-toggle{height:34px;padding:6px 12px;white-space:nowrap}
.crm-calendar-filter-panel.types-only .crm-calendar-filter-section{border-bottom:0!important}
.crm-calendar-filter-panel.types-only .crm-calendar-filter-section-head{display:none!important}
.crm-calendar-filter-panel.types-only .crm-calendar-filter-options{display:flex!important}
@media(min-width:769px){.crm-calendar-filter-panel.types-only{display:flex!important;position:static!important;width:auto!important;padding:0!important;border:0!important;box-shadow:none!important;background:transparent!important}.crm-calendar-filter-panel.types-only .crm-calendar-filter-options{padding:4px!important}}
@media(max-width:768px){.crm-calendar-filter-panel.types-only .crm-calendar-filter-options{flex-direction:column!important;padding:0!important}.crm-calendar-filter-panel.types-only .crm-filter-option{width:100%!important}}

/* AlbomLab CRM v1.10.4: interaction lock for open navigation/popovers */
body.crm-ui-blocked{overscroll-behavior:none}

/* AlbomLab CRM v1.10.4: desktop calendar filter correction */
@media(min-width:769px){
 .crm-calendar-filter-row{overflow:visible!important;position:relative!important}
 .crm-calendar-filter-row:before,.crm-calendar-filter-wrap:before{display:none!important;content:none!important}
 .crm-calendar-filter-wrap{position:relative!important;display:flex!important;align-items:center!important;gap:7px!important}
 .crm-calendar-filter-btn{display:inline-flex!important;height:34px!important;padding:6px 10px!important;align-items:center!important;justify-content:center!important}
 .crm-calendar-filter-panel.types-only{display:none!important;position:absolute!important;left:0!important;right:auto!important;top:calc(100% + 7px)!important;width:330px!important;max-width:calc(100vw - 60px)!important;padding:10px!important;border:1px solid #d8dee5!important;border-radius:10px!important;background:#fff!important;box-shadow:0 14px 38px rgba(44,62,80,.18)!important;z-index:130!important}
 .crm-calendar-filter-panel.types-only.open{display:block!important}
 .crm-calendar-filter-panel.types-only .crm-calendar-filter-options{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:5px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
 .crm-calendar-filter-panel.types-only .crm-filter-option{width:100%!important;height:34px!important;text-align:left!important;padding:6px 10px!important}
}

/* AlbomLab CRM v1.10.9: shooting editor spacing, occupancy selection and save lock */
.crm-shoot-body>.crm-shoot-title-field{margin-bottom:18px!important}
@media(min-width:769px){.crm-shoot-body>.crm-shoot-title-field{margin-bottom:30px!important}}
.crm-occupancy-btn.is-active{opacity:1!important;box-shadow:inset 0 0 0 2px #2c3e50!important}
/* v1.10.9: occupancy colors are supplied from calendar integration settings */
.crm-occupancy-btn.occupancy-partial,.crm-occupancy-btn.occupancy-full{transition:opacity .15s,box-shadow .15s}
.crm-shoot-modal.crm-saving{position:relative!important;user-select:none!important}
.crm-shoot-modal.crm-saving:after{content:"Сохранение…";position:absolute;inset:0;z-index:50;background:rgba(255,255,255,.58);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:750;color:#2c3e50;border-radius:inherit;cursor:wait}
/* v1.10.16: compact unsaved dialog on phones + desktop wheel interaction */
@media(max-width:768px){
 #unsavedExitModal{align-items:center!important;justify-content:center!important;padding:16px!important}
 #unsavedExitModal .crm-modal{width:min(92vw,390px)!important;height:auto!important;min-height:0!important;max-height:none!important;border-radius:14px!important;overflow:hidden!important;margin:auto!important}
 #unsavedExitModal .crm-modal-header{padding:10px 12px!important}
 #unsavedExitModal .crm-modal-header h3{font-size:14px!important}
 #unsavedExitModal .crm-modal-body{padding:14px 14px 10px!important;overflow:visible!important;flex:0 0 auto!important;line-height:1.4!important;text-align:center!important}
 #unsavedExitModal .crm-modal-footer{flex-direction:row!important;align-items:stretch!important;justify-content:center!important;gap:8px!important;padding:10px 12px 12px!important}
 #unsavedExitModal .crm-modal-footer .crm-btn{width:auto!important;flex:1 1 0!important;min-width:0!important;white-space:normal!important;padding:9px 8px!important}
}
@media(min-width:769px){
 .crm-wheel{cursor:grab!important;scrollbar-width:thin!important;touch-action:pan-y!important;overscroll-behavior:auto!important}
 .crm-wheel:active{cursor:grabbing!important}
 .crm-wheel::-webkit-scrollbar{display:block!important;width:8px!important}
 .crm-wheel-item{cursor:pointer!important}
}

/* source style 3 id="crm-v1-10-10-fixes" */
@media(max-width:768px){#calendarDayEventsModal{padding:16px!important;align-items:center!important}#calendarDayEventsModal .crm-modal{width:100%!important;height:auto!important;min-height:0!important;max-height:calc(100dvh - 32px)!important;margin:0!important;border-radius:12px!important}#calendarDayEventsModal .crm-modal-body{flex:0 1 auto!important;min-height:0!important;overflow-y:auto!important}#calendarDayEventsModal .crm-modal-footer{flex:0 0 auto!important}#calendarDayEventsModal .crm-footer-buttons{width:100%;display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}#calendarDayEventsModal .crm-footer-buttons .crm-btn{max-width:100%}}

/* source style 4 id="crm-v1-10-16-day-modal-fix" */
/* v1.10.16: center only the day-events card inside the existing viewport overlay */
@media(max-width:768px){
 #calendarDayEventsModal{
   left:50%!important;right:auto!important;
   width:100vw!important;
   padding:12px!important;
   box-sizing:border-box!important;
   transform:translateX(-50%)!important;
   align-items:center!important;justify-content:center!important;
 }
 #calendarDayEventsModal>.crm-modal{
   width:100%!important;min-width:0!important;max-width:560px!important;
   height:auto!important;min-height:0!important;max-height:calc(100dvh - 24px)!important;
   margin:0!important;border-radius:12px!important;
   box-sizing:border-box!important;
 }
 #calendarDayEventsModal .crm-modal-body{
   min-height:0!important;flex:0 1 auto!important;overflow-y:auto!important;overflow-x:hidden!important;
 }
}

/* source style 5 id="crm-v1-10-17-calendar-return-fixes" */
/* v1.15.10: past shootings and return-to-calendar behavior */
.crm-calendar-event.past-event{background:#d9dde2!important;color:#65707c!important;border-color:#cbd1d8!important;text-decoration:none!important}
.crm-calendar-list-event.past-event,.crm-day-event-item.past-event{background:#f1f3f5!important;border-color:#d9dee4!important;color:#69737e!important}
.crm-calendar-list-event.past-event .crm-calendar-list-event-title,.crm-day-event-item.past-event .crm-day-event-title{color:#69737e!important}
.crm-calendar-list-event.past-event .crm-calendar-list-event-type,.crm-day-event-item.past-event .crm-day-event-type,.past-event .crm-day-event-meta{color:#8a939d!important}

/* source style 6 id="albomlab-v11018-mobile-calendar" */
/* AlbomLab CRM v1.15.10: mobile calendar header and stable past-event appearance */
@media(max-width:768px){
  #view-calendar .crm-calendar-filter-row{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    width:100%!important;
    min-height:42px!important;
    position:relative!important;
    padding:0 1px!important;
  }
  #view-calendar .crm-calendar-filter-wrap{flex:0 0 auto!important}
  #view-calendar .crm-calendar-view-toggle{
    margin-left:auto!important;
    background:#fff!important;
    color:#435165!important;
    border:1px solid #d8dee5!important;
    box-shadow:none!important;
  }
  #view-calendar .crm-calendar-view-toggle:hover,
  #view-calendar .crm-calendar-view-toggle:active{
    background:#f7f9fa!important;
    color:#435165!important;
  }

  /* Month title sits visually between Filter and List; arrows are not needed on phone. */
  #view-calendar .crm-calendar-toolbar{
    position:absolute!important;
    top:0!important;
    left:50%!important;
    transform:translateX(-50%)!important;
    width:auto!important;
    min-width:0!important;
    height:42px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    z-index:46!important;
    pointer-events:none!important;
  }
  #view-calendar .crm-calendar-toolbar.filtered{display:none!important}
  #view-calendar .crm-calendar-toolbar-left{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    min-width:0!important;
    margin:0!important;
  }
  #view-calendar .crm-calendar-toolbar-left > button{display:none!important}
  #view-calendar .crm-calendar-month{
    min-width:0!important;
    width:auto!important;
    white-space:nowrap!important;
    font-size:14px!important;
    line-height:34px!important;
  }

  /* A past day never receives a pressed/focused selection frame. */
  #view-calendar .crm-calendar-day.past-day,
  #view-calendar .crm-calendar-day.past-day:active,
  #view-calendar .crm-calendar-day.past-day:focus,
  #view-calendar .crm-calendar-day.past-day:focus-visible{
    outline:none!important;
  }
  #view-calendar .crm-calendar-day.past-day:not(.today){
    box-shadow:none!important;
  }

  /* Past shootings stay grey after opening/closing their editor/day window. */
  #view-calendar .crm-calendar-event.past-event,
  #view-calendar .crm-calendar-event.past-event:hover,
  #view-calendar .crm-calendar-event.past-event:active,
  #view-calendar .crm-calendar-event.past-event:focus{
    background:#d9dde2!important;
    background-color:#d9dde2!important;
    color:#65707c!important;
    border-color:#cbd1d8!important;
    text-decoration:none!important;
  }
}

/* source style 7 id="crm-v1-10-26-no-cell-highlight" */
#view-calendar .crm-calendar-day{-webkit-tap-highlight-color:transparent!important;-webkit-touch-callout:none!important;user-select:none!important;outline:none!important}
#view-calendar .crm-calendar-day:not(.past-day):not(.other-month):not(.today),#view-calendar .crm-calendar-day:not(.past-day):not(.other-month):not(.today):hover,#view-calendar .crm-calendar-day:not(.past-day):not(.other-month):not(.today):active,#view-calendar .crm-calendar-day:not(.past-day):not(.other-month):not(.today):focus,#view-calendar .crm-calendar-day:not(.past-day):not(.other-month):not(.today):focus-visible{background:#fff!important;outline:none!important;box-shadow:none!important}
#view-calendar .crm-calendar-day.past-day:not(.other-month),#view-calendar .crm-calendar-day.past-day:not(.other-month):hover,#view-calendar .crm-calendar-day.past-day:not(.other-month):active,#view-calendar .crm-calendar-day.past-day:not(.other-month):focus,#view-calendar .crm-calendar-day.past-day:not(.other-month):focus-visible,#view-calendar .crm-calendar-day.past-day.blocked-day:not(.other-month),#view-calendar .crm-calendar-day.past-day.blocked-day:not(.other-month):hover{background:#fff1f1!important;outline:none!important;box-shadow:none!important}
#view-calendar .crm-calendar-day.other-month:hover,#view-calendar .crm-calendar-day.other-month:active,#view-calendar .crm-calendar-day.other-month:focus,#view-calendar .crm-calendar-day.other-month:focus-visible{outline:none!important;box-shadow:none!important}
#calendarViewToggle{font-weight:700!important}

/* source style 8 id="crm-v1-10-27-desktop-toolbar" */
/* Desktop: Contracts and Calendar use matching action placement. */
@media(min-width:769px){
  #view-calendar .crm-calendar-shell{position:relative!important}
  #view-calendar .crm-calendar-filter-row{
    display:grid!important;
    grid-template-columns:1fr auto 1fr!important;
    align-items:center!important;
    width:100%!important;
    min-height:40px!important;
    position:relative!important;
    overflow:visible!important;
  }
  #view-calendar .crm-calendar-today-desktop{
    display:inline-flex!important;
    grid-column:1!important;
    justify-self:start!important;
    background:#ba1a21!important;
    border-color:#ba1a21!important;
    color:#fff!important;
    font-weight:700!important;
  }
  #view-calendar .crm-calendar-filter-wrap{
    position:absolute!important;
    left:88px!important;
    top:3px!important;
  }
  #view-calendar #calendarViewToggle{
    grid-column:3!important;
    justify-self:end!important;
    margin:0!important;
    background:#fff!important;
    color:#435165!important;
    border:1px solid #d8dee5!important;
    font-weight:700!important;
    box-shadow:none!important;
  }
  #view-calendar #calendarViewToggle:hover{
    background:#f7f9fa!important;
    color:#435165!important;
  }
  #view-calendar .crm-calendar-toolbar{
    position:absolute!important;
    top:0!important;
    left:50%!important;
    transform:translateX(-50%)!important;
    width:auto!important;
    height:40px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    pointer-events:none!important;
    z-index:45!important;
  }
  #view-calendar .crm-calendar-toolbar.filtered{display:none!important}
  #view-calendar .crm-calendar-toolbar-left{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    pointer-events:auto!important;
  }
  #view-calendar .crm-calendar-toolbar-left > button{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:#fff!important;
    color:#435165!important;
    border:1px solid #d8dee5!important;
    box-shadow:none!important;
    min-width:34px!important;
    height:34px!important;
    padding:0 9px!important;
  }
  #view-calendar .crm-calendar-toolbar-left > button:hover{background:#f7f9fa!important}
  #view-calendar .crm-calendar-month{
    min-width:145px!important;
    text-align:center!important;
    font-weight:700!important;
  }

  #view-contracts .crm-topbar-actions{
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
  }
  #view-contracts .crm-contract-refresh-btn{
    background:#fff!important;
    color:#435165!important;
    border:1px solid #d8dee5!important;
    box-shadow:none!important;
  }
}
/* Mobile calendar remains on the established Filter | month/year | List layout. */
@media(max-width:768px){
  #view-calendar .crm-calendar-today-desktop{display:none!important}
}

/* source style 9 id="crm-v1-10-28-calendar-header-year" */
/* The only Today button is in the top header and is red. */
#view-calendar .crm-calendar-today-top{
  background:#ba1a21!important;
  border-color:#ba1a21!important;
  color:#fff!important;
  font-weight:700!important;
}
#view-calendar .crm-calendar-today-top:hover{background:#a8171d!important;border-color:#a8171d!important;color:#fff!important}

/* Filter | live year | Calendar in list mode. */
#view-calendar .crm-calendar-list-live-year{display:none;font-weight:700;white-space:nowrap;text-align:center}
#view-calendar .crm-calendar-filter-row.crm-list-year-visible{
  display:grid!important;
  grid-template-columns:1fr auto 1fr!important;
  align-items:center!important;
}
#view-calendar .crm-calendar-filter-row.crm-list-year-visible .crm-calendar-filter-wrap{grid-column:1!important;justify-self:start!important;position:relative!important;left:auto!important;top:auto!important}
#view-calendar .crm-calendar-filter-row.crm-list-year-visible .crm-calendar-list-live-year{display:block!important;grid-column:2!important;justify-self:center!important}
#view-calendar .crm-calendar-filter-row.crm-list-year-visible #calendarViewToggle{grid-column:3!important;justify-self:end!important}

/* Desktop month view remains Filter | centered month+arrows | List. */
@media(min-width:769px){
 #view-calendar .crm-calendar-filter-row:not(.crm-list-year-visible) .crm-calendar-filter-wrap{
   position:relative!important;left:auto!important;top:auto!important;grid-column:1!important;justify-self:start!important;
 }
}
/* Remove obsolete duplicated-Today styling from v1.10.27. */
#view-calendar .crm-calendar-today-desktop{display:none!important}

/* source style 10 id="crm-v1-10-29-calendar-top-actions" */
#view-calendar .crm-calendar-today-top{font-weight:400!important}
@media(min-width:769px){
 #view-calendar .crm-calendar-refresh-top{
   background:#fff!important;
   color:#435165!important;
   border:1px solid #d8dee5!important;
   box-shadow:none!important;
 }
 #view-calendar .crm-calendar-refresh-top:hover{
   background:#f7f9fa!important;
   color:#435165!important;
 }
}

/* source style 11 id="crm-v1-10-31-calendar-typography-arrows" */
/* List year uses exactly the same typography as the month/year title. */
#view-calendar .crm-calendar-list-live-year{
  font-size:inherit!important;
  line-height:inherit!important;
}
#view-calendar .crm-calendar-filter-row.crm-list-year-visible .crm-calendar-list-live-year{
  font-size:18px!important;
  line-height:1.2!important;
  font-weight:700!important;
}
/* Desktop month navigation: arrows only, no button frame/fill/highlight. */
@media(min-width:769px){
 #view-calendar .crm-calendar-toolbar-left > button{
   background:transparent!important;
   border:0!important;
   box-shadow:none!important;
   outline:none!important;
   color:#435165!important;
   min-width:28px!important;
   width:28px!important;
   height:34px!important;
   padding:0!important;
   font-size:24px!important;
   font-weight:400!important;
   border-radius:0!important;
   -webkit-tap-highlight-color:transparent!important;
 }
 #view-calendar .crm-calendar-toolbar-left > button:hover,
 #view-calendar .crm-calendar-toolbar-left > button:active,
 #view-calendar .crm-calendar-toolbar-left > button:focus,
 #view-calendar .crm-calendar-toolbar-left > button:focus-visible{
   background:transparent!important;
   border:0!important;
   box-shadow:none!important;
   outline:none!important;
   color:#435165!important;
 }
}

/* source style 12 id="crm-v1-10-32-mobile-calendar-swipe-animation" */
@media(max-width:768px){
 #view-calendar #calendarGridWrap{
   will-change:transform,opacity;
   backface-visibility:hidden;
 }
 #view-calendar #calendarGridWrap.crm-month-swipe-out-left{
   animation:crmMonthOutLeft .14s ease-in forwards;
 }
 #view-calendar #calendarGridWrap.crm-month-swipe-out-right{
   animation:crmMonthOutRight .14s ease-in forwards;
 }
 #view-calendar #calendarGridWrap.crm-month-swipe-in-left{
   animation:crmMonthInLeft .20s ease-out both;
 }
 #view-calendar #calendarGridWrap.crm-month-swipe-in-right{
   animation:crmMonthInRight .20s ease-out both;
 }
}
@keyframes crmMonthOutLeft{from{transform:translateX(0);opacity:1}to{transform:translateX(-22%);opacity:.25}}
@keyframes crmMonthOutRight{from{transform:translateX(0);opacity:1}to{transform:translateX(22%);opacity:.25}}
@keyframes crmMonthInLeft{from{transform:translateX(22%);opacity:.25}to{transform:translateX(0);opacity:1}}
@keyframes crmMonthInRight{from{transform:translateX(-22%);opacity:.25}to{transform:translateX(0);opacity:1}}

/* source style 13 id="crm-v1-10-36-other-month-priority" */
/* Any cell belonging to the previous/next month always has one neutral light-gray appearance. */
#view-calendar .crm-calendar-day.other-month,
#view-calendar .crm-calendar-day.other-month.past-day,
#view-calendar .crm-calendar-day.other-month.blocked-day,
#view-calendar .crm-calendar-day.other-month.today,
#view-calendar .crm-calendar-day.other-month:hover,
#view-calendar .crm-calendar-day.other-month:active,
#view-calendar .crm-calendar-day.other-month:focus,
#view-calendar .crm-calendar-day.other-month:focus-visible{
  background:#f8f9fa!important;
  color:#a4b0be!important;
  outline:none!important;
  box-shadow:none!important;
}
/* The date number in an adjacent-month cell must not inherit the red past/blocked number colour. */
#view-calendar .crm-calendar-day.other-month .crm-calendar-day-number,
#view-calendar .crm-calendar-day.other-month.past-day .crm-calendar-day-number,
#view-calendar .crm-calendar-day.other-month.blocked-day .crm-calendar-day-number{
  color:#a4b0be!important;
}
/* Past-day pink/red styling remains only for cells of the currently displayed month. */
#view-calendar .crm-calendar-day.past-day:not(.other-month),
#view-calendar .crm-calendar-day.past-day.blocked-day:not(.other-month){
  background:#fff1f1!important;
}

/* source style 14 id="crm-v1-10-38-list-year-same-as-month" */
#view-calendar .crm-calendar-filter-row.crm-list-year-visible .crm-calendar-list-live-year{
  font-family:inherit!important;
  font-size:20px!important;
  line-height:1.2!important;
  font-weight:700!important;
  letter-spacing:normal!important;
  color:#2c3e50!important;
}

/* source style 15 id="crm-v1-11-1-calendar-system-states" */
#view-calendar .crm-calendar-shell{position:relative!important}
#view-calendar .crm-calendar-loading-overlay{display:none;position:absolute;inset:0;z-index:80;align-items:center;justify-content:center;flex-direction:column;gap:12px;background:rgba(248,249,250,.92);color:#566273;font-weight:600}
#view-calendar .crm-calendar-loading-overlay.active{display:flex}
#view-calendar .crm-calendar-is-loading{pointer-events:none}

/* source style 16 id="crm-v1-11-4-contracts-table-structure" */
#view-contracts .crm-contracts-table-wrapper{
  overflow-x:auto!important;
  -webkit-overflow-scrolling:touch!important;
}
#view-contracts #contractsMainTable{
  table-layout:fixed!important;
  width:100%!important;
  min-width:1342px!important;
}
#view-contracts #contractsMainTable th{
  text-align:center!important;
  vertical-align:middle!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
#view-contracts #contractsMainTable td{
  text-align:center!important;
  vertical-align:middle!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
#view-contracts #contractsMainTable th[data-col="customer"]{text-align:center!important}
#view-contracts #contractsMainTable td[data-col="customer"]{text-align:left!important}

/* Identical column geometry on desktop and phone. */
#view-contracts #contractsMainTable [data-col="number"]{width:58px!important}
#view-contracts #contractsMainTable [data-col="date"]{width:112px!important}
#view-contracts #contractsMainTable [data-col="customer"]{width:300px!important;min-width:300px!important}
#view-contracts #contractsMainTable [data-col="edu"]{width:140px!important}
#view-contracts #contractsMainTable [data-col="org"]{width:117px!important;min-width:117px!important}
#view-contracts #contractsMainTable [data-col="class"]{width:78px!important}
#view-contracts #contractsMainTable [data-col="status"]{width:218px!important;min-width:218px!important;max-width:218px!important;text-align:center!important}
#view-contracts #contractsMainTable [data-col="albums"]{width:156px!important;min-width:156px!important;max-width:156px!important}
#view-contracts #contractsMainTable [data-col="sum"]{width:100px!important}
#view-contracts #contractsMainTable [data-col="paid"]{width:100px!important}
#view-contracts #contractsMainTable [data-col="left"]{width:100px!important}

/* Neutralize old mobile squeezing/grid rules for the contracts table itself. */
@media(max-width:768px){
 #view-contracts .crm-contracts-table-wrapper{width:100%!important;max-width:100%!important}
 #view-contracts #contractsMainTable{display:table!important;width:1493px!important;min-width:1493px!important;max-width:none!important}
 #view-contracts #contractsMainTable thead{display:table-header-group!important}
 #view-contracts #contractsMainTable tbody{display:table-row-group!important}
 #view-contracts #contractsMainTable tr{display:table-row!important}
 #view-contracts #contractsMainTable th,
 #view-contracts #contractsMainTable td{display:table-cell!important}
}

/* source style 17 id="crm-v1-11-9-root-ui-fixes" */
/* ROOT FIX: final-priority rules are physically present in the source.
   Previous 1.11.6-1.11.8 CSS is intentionally not used in the standalone build. */

/* ---------- Loading: contracts ---------- */
#view-contracts .crm-contracts-table-wrapper{
  position:relative!important;
}
#view-contracts .crm-contracts-table-wrapper.crm-is-loading{
  min-height:420px!important;
  overflow:hidden!important;
}
#view-contracts .crm-contracts-loading-overlay{
  display:none!important;
  position:absolute!important;
  inset:0!important;
  z-index:500!important;
  background:#f8f9fa!important;
  color:#566273!important;
  align-items:center!important;
  justify-content:center!important;
  flex-direction:column!important;
  gap:12px!important;
  text-align:center!important;
}
#view-contracts .crm-contracts-loading-overlay.active{
  display:flex!important;
}
#view-contracts .crm-contracts-loading-overlay .crm-spinner{
  display:block!important;
  position:static!important;
  flex:0 0 auto!important;
  margin:0!important;
}
#view-contracts .crm-contracts-loading-overlay .crm-overlay-loading-text{
  display:block!important;
  position:static!important;
  float:none!important;
  width:auto!important;
  min-width:0!important;
  max-width:90%!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  color:#566273!important;
  font-size:16px!important;
  font-weight:600!important;
  line-height:1.3!important;
  text-align:center!important;
  white-space:nowrap!important;
}

/* ---------- Loading: calendar ---------- */
#view-calendar .crm-calendar-shell{
  position:relative!important;
}
#view-calendar .crm-calendar-loading-overlay{
  display:none!important;
  position:absolute!important;
  inset:0!important;
  z-index:500!important;
  background:#f8f9fa!important;
  color:#566273!important;
  align-items:center!important;
  justify-content:center!important;
  flex-direction:column!important;
  gap:12px!important;
  text-align:center!important;
}
#view-calendar .crm-calendar-loading-overlay.active{
  display:flex!important;
}
#view-calendar .crm-calendar-loading-overlay .crm-spinner{
  display:block!important;
  position:static!important;
  flex:0 0 auto!important;
  margin:0!important;
}
#view-calendar .crm-calendar-loading-overlay .crm-overlay-loading-text{
  display:block!important;
  position:static!important;
  float:none!important;
  width:auto!important;
  min-width:0!important;
  max-width:90%!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  color:#566273!important;
  font-size:16px!important;
  font-weight:600!important;
  line-height:1.3!important;
  text-align:center!important;
  white-space:nowrap!important;
}

/* ---------- Calendar filter on phone ---------- */
@media(max-width:768px){
  #view-calendar .crm-calendar-filter-row{
    position:relative!important;
    overflow:visible!important;
    z-index:150!important;
  }
  #view-calendar .crm-calendar-filter-wrap{
    position:static!important;
  }

  /* Override ALL old .types-only rules, including the 330px width. */
  #view-calendar #calendarFilterPanel.crm-calendar-filter-panel.types-only{
    display:none!important;
    position:absolute!important;
    left:0!important;
    right:0!important;
    top:calc(100% + 8px)!important;
    bottom:auto!important;
    width:100%!important;
    min-width:100%!important;
    max-width:100%!important;
    height:auto!important;
    max-height:min(62dvh,520px)!important;
    margin:0!important;
    padding:10px!important;
    box-sizing:border-box!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    border:1px solid #d8dee5!important;
    border-radius:10px!important;
    background:#fff!important;
    box-shadow:0 14px 38px rgba(44,62,80,.20)!important;
    z-index:10050!important;
  }
  #view-calendar #calendarFilterPanel.crm-calendar-filter-panel.types-only.open{
    display:block!important;
  }
  #view-calendar #calendarFilterPanel .crm-calendar-filter-section,
  #view-calendar #calendarFilterPanel .crm-calendar-filter-options{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    box-sizing:border-box!important;
    gap:5px!important;
  }
  #view-calendar #calendarFilterPanel .crm-filter-option{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:auto!important;
    min-height:42px!important;
    margin:0!important;
    padding:8px 10px!important;
    box-sizing:border-box!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    text-align:left!important;
    line-height:1.25!important;
  }

  #view-contracts .crm-contracts-table-wrapper.crm-is-loading{
    min-height:calc(100dvh - 285px)!important;
  }
}

/* source style 18 id="crm-v1-11-10-calendar-list-mobile-match" */
@media(max-width:768px){
  #view-calendar .crm-calendar-filter-row.crm-list-year-visible .crm-calendar-filter-wrap{
    position:static!important;
    left:auto!important;
    top:auto!important;
  }
  #view-calendar .crm-calendar-filter-row.crm-list-year-visible #calendarFilterPanel.crm-calendar-filter-panel.types-only{
    display:none!important;
    position:absolute!important;
    left:0!important;
    right:0!important;
    top:calc(100% + 8px)!important;
    bottom:auto!important;
    width:100%!important;
    min-width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  #view-calendar .crm-calendar-filter-row.crm-list-year-visible #calendarFilterPanel.crm-calendar-filter-panel.types-only.open{
    display:block!important;
  }
  #view-calendar .crm-calendar-filter-row.crm-list-year-visible .crm-calendar-list-live-year{
    font-size:14px!important;
    line-height:34px!important;
    font-weight:700!important;
    min-width:0!important;
    width:auto!important;
    white-space:nowrap!important;
  }
}
@media(min-width:769px){
  #view-calendar .crm-calendar-filter-row.crm-list-year-visible .crm-calendar-list-live-year{
    font-size:18px!important;
    line-height:1.2!important;
    font-weight:700!important;
  }
}

/* source style 19 id="crm-v1-11-13-contracts-first-paint" */
/* Do not paint the static/default contracts table before the first API load. */
#view-contracts #contractsMainTable.crm-contracts-initial-hidden{
  visibility:hidden!important;
}
#view-contracts .crm-contracts-table-wrapper:has(#contractsMainTable.crm-contracts-initial-hidden){
  min-height:420px!important;
}
@media(max-width:768px){
  #view-contracts .crm-contracts-table-wrapper:has(#contractsMainTable.crm-contracts-initial-hidden){
    min-height:calc(100dvh - 285px)!important;
  }
}

/* source style 20 id="crm-v1-11-15-completed-contracts" */
#view-contracts .crm-hide-completed-control{
 display:inline-flex;align-items:center;gap:7px;white-space:nowrap;
 color:#566273;font-size:12px;font-weight:700;cursor:pointer;user-select:none;
}
#view-contracts .crm-hide-completed-control input{
 width:16px;height:16px;margin:0;accent-color:#c51a22;cursor:pointer;
}
#view-contracts .crm-hide-completed-desktop{
 margin-left:8px!important;
}
#view-contracts .crm-hide-completed-mobile{display:none!important}

@media(max-width:768px){
 #view-contracts .crm-hide-completed-desktop{display:none!important}
 #view-contracts .crm-mobile-filter-wrap{
   display:flex!important;
   align-items:center!important;
   flex-wrap:nowrap!important;
   gap:8px!important;
 }
 #view-contracts .crm-hide-completed-mobile{
   display:inline-flex!important;
   align-items:center!important;
   justify-content:center!important;
   margin-left:0!important;
   white-space:nowrap!important;
 }
 #view-contracts .crm-hide-completed-mobile.active{
   background:#c51a22!important;
   border-color:#c51a22!important;
   color:#fff!important;
 }
}

/* source style 21 id="crm-v1-12-1-unified-shield" */
#crmInteractionShield.crm-interaction-shield{display:none;position:absolute;inset:0;z-index:900;background:rgba(20,27,34,.32);pointer-events:auto}
#crmInteractionShield.crm-interaction-shield.open{display:block!important}
.crm-sidebar{z-index:1000!important}
#mobileFilterPopover.open,#columnsPopover.open,#calendarFilterPanel.open{z-index:1100!important}
body.crm-ui-blocked{overflow:hidden!important;overscroll-behavior:none!important}

/* source style 22 id="crm-v1-12-4-popover-reset" */
/* Filters and Columns are normal popovers: no global overlay, no click interception. */
#view-contracts #mobileFilterPopover.open,
#view-contracts #columnsPopover.open,
#view-calendar #calendarFilterPanel.open{
  pointer-events:auto!important;
}

/* Restore the known-good v1.11.10 mobile calendar filter geometry. */
@media(max-width:768px){
  #view-calendar .crm-calendar-filter-row{
    position:relative!important;
    overflow:visible!important;
  }
  #view-calendar .crm-calendar-filter-wrap{
    position:static!important;
    left:auto!important;
    top:auto!important;
  }
  #view-calendar #calendarFilterPanel.crm-calendar-filter-panel.types-only{
    display:none!important;
    position:absolute!important;
    left:0!important;
    right:0!important;
    top:calc(100% + 8px)!important;
    bottom:auto!important;
    width:100%!important;
    min-width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
    z-index:130!important;
  }
  #view-calendar #calendarFilterPanel.crm-calendar-filter-panel.types-only.open{
    display:block!important;
  }
}

/* source style 23 id="crm-v1-13-1-notifications" */
#view-settings .crm-settings-accordion{margin:24px 0;border:1px solid var(--border);border-radius:10px;overflow:hidden;background:#fff}
#view-settings .crm-settings-accordion-head{width:100%;min-height:48px;padding:12px 15px;border:0;background:#f8f9fa;color:#2c3e50;display:flex;align-items:center;justify-content:space-between;gap:12px;font:inherit;font-size:16px;font-weight:700;text-align:left;cursor:pointer}
#view-settings .crm-settings-accordion-chevron{font-size:18px;transition:transform .2s}
#view-settings .crm-settings-accordion.open .crm-settings-accordion-chevron{transform:rotate(180deg)}
#view-settings .crm-settings-accordion-body{display:none;padding:0 15px 18px}
#view-settings .crm-settings-accordion.open .crm-settings-accordion-body{display:block}
#view-settings .crm-settings-subtitle{margin:20px 0 12px;font-size:14px;color:#2c3e50}
#view-settings .crm-settings-small-title{font-size:11px;color:#57606f;margin-bottom:10px;font-weight:500}
#view-settings .crm-notification-types{margin-bottom:20px}
#view-settings .crm-notification-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 10px}
#view-settings .crm-settings-check-row{display:flex;align-items:center;gap:8px;margin-bottom:12px}
#view-settings .crm-settings-accordion .crm-settings-email-block{margin:0;padding:15px}
@media(max-width:768px){
 #view-settings .crm-settings-accordion-body{padding:0 12px 16px}
 #view-settings .crm-notification-grid{grid-template-columns:1fr}
 #view-settings .crm-config-table{min-width:0!important}
 #view-settings .crm-config-table th,#view-settings .crm-config-table td{padding:8px 6px!important}
}

/* source style 24 id="crm-v1-13-2-notifications-tab" */
#view-notifications .crm-notifications-page-card{max-width:none}
#view-notifications #settingsNotificationsSection{display:block!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important}
#view-notifications .crm-settings-subtitle{margin:20px 0 12px;font-size:14px;color:#2c3e50}
#view-notifications .crm-settings-small-title{font-size:11px;color:#57606f;margin-bottom:10px;font-weight:500}
#view-notifications .crm-notification-types{margin-bottom:20px}
#view-notifications .crm-notification-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 10px}
#view-notifications .crm-settings-check-row{display:flex;align-items:center;gap:8px;margin-bottom:12px}
#view-notifications .crm-settings-email-block{margin:0;padding:15px;border:1px solid var(--border);border-radius:8px;background:#f8f9fa}
@media(max-width:768px){
#view-notifications .crm-notification-grid{grid-template-columns:1fr}
#view-notifications .crm-config-table{min-width:0!important}
#view-notifications .crm-config-table th,#view-notifications .crm-config-table td{padding:8px 6px!important}
}

/* source style 25 id="crm-v1-13-3-notifications-mobile-table-fix" */
@media(max-width:768px){
  #view-notifications .crm-config-table{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    outline:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    overflow:visible!important;
  }
  #view-notifications .crm-config-table thead{display:none!important}
  #view-notifications .crm-config-table tbody{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    outline:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  #view-notifications .crm-config-table tbody tr{
    width:100%!important;
    box-sizing:border-box!important;
  }
}

/* source style 26 id="crm-v1-14-1-auth" */
.crm-secret-field{position:relative;display:block;width:100%}
.crm-secret-field>input{width:100%!important;padding-right:42px!important;box-sizing:border-box!important}
.crm-secret-eye{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:30px;height:30px;border:0;background:transparent;color:#57606f;font-size:20px;line-height:1;cursor:pointer;padding:0;z-index:2}
.crm-secret-field:has(#authPassword[style*="display: none"]),.crm-secret-field:has(#authPassword[style*="display:none"]){display:none!important}

/* source style 27 id="crm-v1-14-3-sidebar-click-fix" */
#crmInteractionShield.crm-interaction-shield{z-index:900!important}
#sidebar.crm-sidebar{z-index:1000!important;pointer-events:auto!important}
#sidebar.crm-sidebar.open{pointer-events:auto!important}

/* source style 28 id="crm-v1-15-1-data-retention" */
.crm-data-retention-card{background:#f8f9fa;border:1px solid var(--border);border-radius:8px;padding:15px;margin-bottom:25px}.crm-data-retention-card select{max-width:260px}.crm-account-delete-zone{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--border);padding-top:15px;margin-top:15px}.crm-account-delete-zone>div{flex:1}.crm-account-delete-btn,.crm-account-delete-confirm{background:#ba1a21!important}.crm-account-delete-warning{background:#fff1f1;border:1px solid #e3a3a6;color:#7d171c;border-radius:7px;padding:12px 14px;margin-bottom:16px;line-height:1.5}@media(max-width:768px){.crm-account-delete-zone{align-items:stretch;flex-direction:column}.crm-account-delete-btn{width:100%}.crm-data-retention-card select{max-width:none;width:100%}}

/* source style 29 id="crm-v1-15-7-data-retention-layout" */
@media(min-width:769px){
  .crm-data-retention-card{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:28px!important;align-items:center!important}
  .crm-data-retention-card>.crm-form-group{margin:0!important;padding-right:28px!important;border-right:1px solid var(--border)!important}
  .crm-account-delete-zone{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;border-top:0!important;padding-top:0!important;margin-top:0!important}
}
.crm-account-delete-footer{display:flex!important;justify-content:center!important;align-items:center!important}
.crm-account-delete-footer .crm-account-delete-confirm{margin:0 auto!important}
@media(max-width:768px){
  .crm-account-delete-zone{align-items:stretch!important;flex-direction:column!important}
  .crm-account-delete-btn{width:100%!important}
  .crm-data-retention-card select{max-width:none!important;width:100%!important}

  /* Полностью повторяем мобильную геометрию окна "Съемки: дата". */
  #deleteAccountModal.crm-modal-overlay{
    align-items:center!important;
  }
  #deleteAccountModal>.crm-modal{
    height:auto!important;
    min-height:0!important;
    max-height:calc(100dvh - 24px)!important;
    margin:12px!important;
    border-radius:12px!important;
  }
  #deleteAccountModal .crm-modal-body{
    flex:0 1 auto!important;
    overflow:auto!important;
  }
}

/* source style 30 id="crm-v1-15-8-delete-account-mobile-width" */
@media(max-width:768px){
  #deleteAccountModal>.crm-modal{
    width:calc(100% - 24px)!important;
    min-width:0!important;
    max-width:calc(100% - 24px)!important;
    margin:12px!important;
    box-sizing:border-box!important;
  }
}

/* source style 31 id="crm-v1-15-9-auth-mobile-viewport" */
@media(max-width:768px){
  #authModal{
    position:fixed!important;
    top:0!important;
    right:0!important;
    bottom:0!important;
    left:0!important;
    inset:0!important;
    transform:none!important;
    translate:none!important;
    margin:0!important;
    padding:18px!important;
    width:100vw!important;
    min-width:100vw!important;
    max-width:100vw!important;
    height:100dvh!important;
    min-height:100dvh!important;
    max-height:100dvh!important;
    box-sizing:border-box!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:auto!important;
  }
  #authModal>.crm-auth-card{
    position:relative!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    transform:none!important;
    translate:none!important;
    width:100%!important;
    max-width:350px!important;
    height:auto!important;
    min-height:0!important;
    margin:auto!important;
    box-sizing:border-box!important;
  }
}

/* source style 32 id="crm-v1-15-10-auth-mobile-root-fix" */
@media(max-width:768px){
  #authModal{
    left:calc((100% - 100vw) / 2)!important;
    right:auto!important;
    width:100vw!important;
    min-width:100vw!important;
    max-width:100vw!important;
    transform:none!important;
    translate:none!important;
    margin:0!important;
    box-sizing:border-box!important;
  }
}

/* source style 33 id="crm-v1-16-1-employees" */
.crm-employees-hint{font-size:12px;color:#747d8c;margin:-4px 0 10px}.crm-employees-table-wrap{overflow-x:auto}.crm-employees-table{width:100%;border-collapse:collapse;table-layout:fixed}.crm-employees-table th{font-size:12px;color:#647180;text-align:left;padding:7px 8px;border-bottom:1px solid var(--border)}.crm-employees-table td{padding:7px 8px;border-bottom:1px solid #edf0f3;vertical-align:middle}.crm-employees-table th:nth-child(1),.crm-employees-table td:nth-child(1){width:84px}.crm-employees-table th:nth-child(2),.crm-employees-table td:nth-child(2){width:125px}.crm-employees-table th:last-child,.crm-employees-table td:last-child{width:42px;text-align:center}.crm-employees-table input[type=text]{width:100%;box-sizing:border-box}.crm-employee-color-cell{display:flex;align-items:center;gap:7px}.crm-employee-color-input{width:38px!important;height:34px!important;padding:0!important;border:0!important;background:transparent!important;cursor:pointer}.crm-employee-avatar-input{text-align:center;font-weight:800}.crm-employee-remove{border:0;background:transparent;color:#ba1a21;font-size:24px;line-height:1;cursor:pointer}.crm-employee-add-btn{margin-top:10px}.crm-shoot-link-employee-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.crm-shoot-employees-field{position:relative}.crm-employee-picker-btn{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px}.crm-employee-picker-chevron{font-size:18px;color:#747d8c}.crm-employee-picker-popover{display:none;position:absolute;left:0;right:0;top:calc(100% + 5px);z-index:1000010;background:#fff;border:1px solid #d8dee5;border-radius:9px;box-shadow:0 12px 30px rgba(44,62,80,.18);padding:7px;max-height:240px;overflow:auto}.crm-employee-picker-popover.open{display:block}.crm-employee-picker-row{display:grid;grid-template-columns:30px minmax(0,1fr) 28px;align-items:center;gap:9px;padding:7px;border-radius:7px;cursor:pointer}.crm-employee-picker-row:hover{background:#f5f7f9}.crm-employee-picker-row input{justify-self:end}.crm-employee-avatar{width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:12px;font-weight:800;line-height:1;flex:0 0 26px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08)}.crm-employee-avatar-stack{display:flex;align-items:center;justify-content:flex-end;gap:4px;margin-left:auto;min-width:0}.crm-calendar-list-card-main{display:flex;align-items:flex-start;gap:10px}.crm-calendar-list-card-content{min-width:0;flex:1}.crm-calendar-list-event .crm-employee-avatar-stack{align-self:center;max-width:38%;flex-wrap:wrap}.crm-employee-avatar-wrap{position:relative;display:inline-flex}.crm-employee-avatar-popover{display:none;position:absolute;right:0;top:32px;z-index:130;background:#fff;border:1px solid #d8dee5;border-radius:8px;box-shadow:0 10px 26px rgba(44,62,80,.18);padding:8px 10px;min-width:170px;color:#2c3e50}.crm-employee-avatar-popover.open{display:block}.crm-employee-popover-person{display:flex;align-items:center;gap:8px;padding:4px 0;white-space:nowrap}.crm-employee-popover-person .crm-employee-avatar{width:22px;height:22px;flex-basis:22px;font-size:10px}
@media(max-width:768px){.crm-shoot-link-employee-row{grid-template-columns:1fr 1fr;gap:8px}.crm-employees-table th:nth-child(1),.crm-employees-table td:nth-child(1){width:66px}.crm-employees-table th:nth-child(2),.crm-employees-table td:nth-child(2){width:100px}.crm-calendar-list-event .crm-employee-avatar-stack{max-width:42%}}

/* source style 34 id="crm-v1-16-5-employees-ui" */
.crm-employee-avatar-input::placeholder{color:transparent!important}

/* source style 35 id="crm-v1-16-6-day-list-employees" */
.crm-day-event-item .crm-calendar-list-card-main{align-items:center!important}
.crm-day-event-item .crm-employee-avatar-wrap{margin-left:auto;flex:0 0 auto}
.crm-day-event-item .crm-employee-avatar-stack{justify-content:flex-end;flex-wrap:wrap}

/* source style 36 id="crm-v1-16-7-employee-avatars-static" */
.crm-employee-avatar-wrap{pointer-events:none!important;cursor:default!important}
.crm-employee-avatar-popover{display:none!important}

/* source style 37 id="crm-v1-16-8-employee-default-filter" */
.crm-employees-table th:nth-child(4),.crm-employees-table td:nth-child(4){width:112px;text-align:center}.crm-employee-default-input{margin:0 auto!important}.crm-calendar-employee-filter-wrap{position:relative;display:flex;align-items:center}.crm-calendar-employee-filter-panel{display:none;position:absolute;left:0;top:calc(100% + 6px);z-index:1100;min-width:210px;width:max-content;max-width:300px;background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:0 10px 26px rgba(44,62,80,.18);padding:6px}.crm-calendar-employee-filter-panel.open{display:block!important}.crm-calendar-employee-filter-option{display:flex;width:100%;align-items:center;gap:8px;border:0;background:#fff;padding:8px 9px;border-radius:6px;text-align:left;cursor:pointer;color:#2c3e50;font-size:12px}.crm-calendar-employee-filter-option:hover,.crm-calendar-employee-filter-option.active{background:#eef2f5}.crm-calendar-employee-filter-btn.active{box-shadow:inset 0 0 0 2px var(--primary)}.crm-calendar-list-event .crm-employee-avatar-stack,.crm-day-event-item .crm-employee-avatar-stack{flex-wrap:nowrap!important;flex-direction:row!important;white-space:nowrap!important}.crm-calendar-list-event .crm-employee-avatar-wrap,.crm-day-event-item .crm-employee-avatar-wrap{flex:0 0 auto!important;max-width:none!important}
@media(max-width:768px){.crm-calendar-employee-filter-panel{position:fixed!important;left:12px!important;right:12px!important;top:auto!important;bottom:18px!important;width:auto!important;max-width:none!important;max-height:60dvh;overflow:auto}.crm-employees-table th:nth-child(4),.crm-employees-table td:nth-child(4){width:92px}}

/* source style 38 id="crm-v1-16-9-employee-filter-match" */
/* Фильтр сотрудников является частью той же левой группы, что и основной фильтр. */
#view-calendar .crm-calendar-filter-wrap{display:flex!important;align-items:center!important;gap:7px!important}
#view-calendar .crm-calendar-employee-filter-wrap{position:relative!important;display:flex!important;align-items:center!important;flex:0 0 auto!important}
#view-calendar .crm-calendar-employee-filter-btn{white-space:nowrap!important}
#view-calendar .crm-calendar-employee-filter-panel{left:0!important;right:auto!important;top:calc(100% + 6px)!important}
#view-calendar .crm-calendar-filter-row.crm-list-year-visible .crm-calendar-filter-wrap{display:flex!important;grid-column:1!important;justify-self:start!important}
@media(max-width:768px){
 #view-calendar .crm-calendar-filter-wrap{gap:6px!important}
 #view-calendar .crm-calendar-employee-filter-panel{position:fixed!important;left:12px!important;right:12px!important;top:auto!important;bottom:18px!important;width:auto!important;max-width:none!important}
}

/* source style 39 id="crm-v1-16-10-calendar-filter-behavior" */
/* Выбранный сотрудник остаётся обычной светлой кнопкой; сброс расположен справа общей кнопкой ×. */
#view-calendar .crm-calendar-employee-filter-btn.active{
  background:#fff!important;
  color:var(--text)!important;
  box-shadow:none!important;
  border-color:var(--border)!important;
}

/* source style 40 id="crm-v1-16-11-employee-filter-collapse-fix" */
/* Фильтр сотрудников должен полностью исчезать при закрытии, как обычный фильтр. */
#view-calendar #calendarEmployeeFilterPanel.crm-calendar-employee-filter-panel{
  display:none!important;
}
#view-calendar #calendarEmployeeFilterPanel.crm-calendar-employee-filter-panel.open{
  display:block!important;
}

/* source style 41 id="crm-v1-16-12-calendar-filter-desktop-slider" */
/* ПК: оба фильтра календаря используют тот же раскрывающийся inline-блок, что фильтры договоров. */
@media(min-width:769px){
  #view-calendar .crm-calendar-filter-wrap{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:7px!important;
    position:relative!important;
    min-width:0!important;
  }
  #view-calendar .crm-calendar-filter-btn,
  #view-calendar .crm-calendar-employee-filter-btn{
    flex:0 0 auto!important;
    height:38px!important;
    margin:0!important;
  }
  #view-calendar .crm-calendar-filter-btn:has(+ #calendarFilterPanel.open),
  #view-calendar .crm-calendar-employee-filter-btn:has(+ #calendarEmployeeFilterPanel.open){
    background:#2c3e50!important;
    color:#fff!important;
    border-color:#2c3e50!important;
  }
  #view-calendar #calendarFilterPanel.crm-calendar-filter-panel.types-only,
  #view-calendar #calendarEmployeeFilterPanel.crm-calendar-employee-filter-panel{
    display:none!important;
    position:static!important;
    inset:auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    height:auto!important;
    max-height:none!important;
    margin:0!important;
    padding:4px!important;
    box-sizing:border-box!important;
    overflow:visible!important;
    border:1px solid #d7dee6!important;
    border-radius:9px!important;
    background:linear-gradient(180deg,#ffffff,#f1f4f7)!important;
    box-shadow:0 3px 10px rgba(44,62,80,.08)!important;
    transform:none!important;
  }
  #view-calendar #calendarFilterPanel.crm-calendar-filter-panel.types-only.open,
  #view-calendar #calendarEmployeeFilterPanel.crm-calendar-employee-filter-panel.open{
    display:flex!important;
    align-items:center!important;
    gap:5px!important;
  }
  #view-calendar #calendarFilterPanel .crm-calendar-filter-section,
  #view-calendar #calendarFilterPanel .crm-calendar-filter-options{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    flex-wrap:nowrap!important;
    gap:5px!important;
    width:auto!important;
    margin:0!important;
    padding:0!important;
  }
  #view-calendar #calendarFilterPanel .crm-filter-option,
  #view-calendar #calendarEmployeeFilterPanel .crm-calendar-employee-filter-option{
    width:auto!important;
    min-width:0!important;
    min-height:30px!important;
    margin:0!important;
    padding:7px 10px!important;
    white-space:nowrap!important;
    border:1px solid #d7dee6!important;
    border-radius:7px!important;
    background:#fff!important;
    color:#536273!important;
    font-size:12px!important;
    font-weight:700!important;
  }
  #view-calendar #calendarFilterPanel .crm-filter-option.active,
  #view-calendar #calendarEmployeeFilterPanel .crm-calendar-employee-filter-option.active{
    background:#c91b24!important;
    border-color:#c91b24!important;
    color:#fff!important;
  }
  #view-calendar .crm-calendar-employee-filter-wrap{
    display:flex!important;
    align-items:center!important;
    gap:7px!important;
    position:static!important;
    flex:0 0 auto!important;
  }
  #view-calendar #calendarEmployeeFilterPanel .crm-employee-avatar{
    width:24px!important;
    height:24px!important;
    min-width:24px!important;
    font-size:11px!important;
  }
}

/* source style 42 id="crm-v1-16-13-calendar-filter-overlay-fix" */
@media(min-width:769px){
  /* Раскрытие фильтров не участвует в потоке и не меняет высоту строки календаря. */
  #view-calendar .crm-calendar-filter-row{
    min-height:42px!important;
    height:42px!important;
    overflow:visible!important;
    position:relative!important;
  }
  #view-calendar .crm-calendar-filter-wrap{
    position:relative!important;
    height:42px!important;
    min-height:42px!important;
    overflow:visible!important;
  }
  #view-calendar #calendarFilterPanel.crm-calendar-filter-panel.types-only,
  #view-calendar #calendarEmployeeFilterPanel.crm-calendar-employee-filter-panel{
    position:absolute!important;
    top:0!important;
    left:0;
    z-index:500!important;
    height:42px!important;
    min-height:42px!important;
    max-height:42px!important;
    box-sizing:border-box!important;
  }
  /* Месячная навигация сохраняет свою высоту, но не конфликтует с раскрытым слайдером. */
  #view-calendar .crm-calendar-shell.crm-calendar-filter-slider-open .crm-calendar-toolbar{
    visibility:hidden!important;
    pointer-events:none!important;
  }
}

/* source style 43 id="crm-v1-16-15-contract-desktop-filter-slider" */
@media(min-width:769px){
 #view-contracts .crm-contract-tools{overflow:visible!important;min-height:42px!important}
 #view-contracts .crm-exclusive-filters{position:relative!important;overflow:visible!important;min-height:42px!important;gap:10px!important}
 #view-contracts .crm-filter-caption,#view-contracts #contractFilterReset{display:none!important}
 #view-contracts .crm-filter-tab{height:42px!important;padding:8px 16px!important;border-radius:9px!important;font-size:13px!important;position:relative!important;z-index:12!important}
 #view-contracts .crm-filter-tab.open{background:#c51a22!important;color:#fff!important;border-color:#c51a22!important}
 #view-contracts .crm-filter-options{display:none!important;position:absolute!important;top:0!important;height:42px!important;min-height:42px!important;align-items:center!important;gap:6px!important;padding:4px!important;margin:0!important;border:1px solid #d7dee6!important;border-radius:9px!important;background:linear-gradient(180deg,#fff,#f1f4f7)!important;box-shadow:0 3px 10px rgba(44,62,80,.08)!important;z-index:30!important;white-space:nowrap!important;overflow:visible!important}
 #view-contracts .crm-filter-options.open{display:flex!important}
 #view-contracts .crm-filter-option{height:32px!important;padding:5px 11px!important;font-size:12px!important}
}

/* source style 44 id="crm-v1-16-16-contract-desktop-filter-single-row" */
@media(min-width:769px){
 #view-contracts .crm-filter-options.open{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  width:max-content!important;
  max-width:none!important;
  height:42px!important;
  min-height:42px!important;
  max-height:42px!important;
  overflow:visible!important;
 }
 #view-contracts .crm-filter-options.open .crm-filter-option{flex:0 0 auto!important;white-space:nowrap!important}
}

/* source style 45 id="crm-v1-16-18-contracts-independent-horizontal-scroll" */
/* Desktop: filters and contracts table are independent horizontal scroll areas. */
@media(min-width:769px){
  #view-contracts,
  #view-contracts .crm-workspace{
    min-width:0!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }
  #view-contracts .crm-contract-tools{
    min-width:0!important;
    max-width:100%!important;
  }
  #view-contracts .crm-exclusive-filters{
    min-width:0!important;
    max-width:100%!important;
  }
  #view-contracts .crm-filter-options.open{
    max-width:calc(100vw - 280px)!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    overscroll-behavior-x:contain!important;
    scrollbar-width:thin!important;
  }
  #view-contracts .crm-filter-options.open::-webkit-scrollbar{
    display:block!important;
    height:7px!important;
  }
  #view-contracts .crm-contracts-table-wrapper{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:auto!important;
    overflow-y:auto!important;
    overscroll-behavior-x:contain!important;
    -webkit-overflow-scrolling:touch!important;
  }
  #view-contracts #contractsMainTable{
    width:1342px!important;
    min-width:1342px!important;
    max-width:none!important;
  }
}

/* source style 46 id="crm-v1-16-19-calendar-mobile-unified-filter" */
/* Mobile calendar: one Filter button, with two collapsible sections like contracts. */
@media(max-width:768px){
  #view-calendar .crm-calendar-filter-row{
    display:flex!important;align-items:center!important;justify-content:flex-start!important;
    position:relative!important;overflow:visible!important;min-height:42px!important;
  }
  #view-calendar .crm-calendar-filter-wrap{display:flex!important;position:static!important;align-items:center!important;gap:7px!important}
  #view-calendar .crm-calendar-filter-btn{display:inline-flex!important;height:34px!important;padding:6px 10px!important}
  #view-calendar .crm-calendar-employee-filter-wrap{display:none!important}
  #view-calendar #calendarFilterPanel{
    display:none!important;position:absolute!important;left:0!important;right:0!important;
    top:calc(100% + 7px)!important;bottom:auto!important;width:100%!important;max-width:none!important;box-sizing:border-box!important;
    max-height:68dvh!important;overflow-y:auto!important;overflow-x:hidden!important;z-index:130!important;
    margin:0!important;padding:10px!important;border:1px solid #d8dee5!important;border-radius:10px!important;
    background:#fff!important;box-shadow:0 14px 38px rgba(44,62,80,.2)!important;
  }
  #view-calendar #calendarFilterPanel.open{display:block!important}
  #view-calendar #calendarFilterPanel .crm-calendar-filter-section{display:block!important;border-bottom:1px solid #edf0f3!important}
  #view-calendar #calendarFilterPanel .crm-calendar-filter-section:last-child{border-bottom:0!important}
  #view-calendar #calendarFilterPanel .crm-calendar-filter-section-head{
    width:100%!important;height:auto!important;display:flex!important;align-items:center!important;justify-content:space-between!important;
    margin:0!important;padding:11px 5px!important;border:0!important;border-radius:0!important;background:#fff!important;
    color:#435165!important;font-size:13px!important;font-weight:750!important;text-align:left!important;cursor:pointer!important;
  }
  #view-calendar #calendarFilterPanel .crm-calendar-filter-section-head .chev{display:inline-block!important;transition:transform .18s ease!important}
  #view-calendar #calendarFilterPanel .crm-calendar-filter-section.open .crm-calendar-filter-section-head .chev{transform:rotate(180deg)!important}
  #view-calendar #calendarFilterPanel .crm-calendar-filter-options{
    display:none!important;position:static!important;width:100%!important;height:auto!important;max-height:none!important;
    padding:0 4px 10px!important;margin:0!important;border:0!important;border-radius:0!important;background:transparent!important;
    box-shadow:none!important;overflow:visible!important;flex-direction:column!important;flex-wrap:nowrap!important;gap:5px!important;
  }
  #view-calendar #calendarFilterPanel .crm-calendar-filter-section.open .crm-calendar-filter-options{display:flex!important}
  #view-calendar #calendarFilterPanel .crm-filter-option,
  #view-calendar #calendarFilterPanel .crm-calendar-employee-filter-option{
    width:100%!important;height:36px!important;min-height:36px!important;display:flex!important;align-items:center!important;
    gap:8px!important;text-align:left!important;padding:6px 10px!important;white-space:normal!important;
  }
  #view-calendar #calendarFilterPanel .crm-calendar-employee-filter-option{border:1px solid #d8dee5!important;border-radius:7px!important;background:#fff!important}
  #view-calendar #calendarFilterPanel .crm-calendar-employee-filter-option.active{background:#c51a22!important;color:#fff!important;border-color:#c51a22!important}
}

/* source style 47 id="crm-v1-16-21-filter-behavior" */
/* ПК: фильтры календаря повторяют поведение фильтров договоров — кнопка сохраняет размер/текст,
   открытый раздел красный, варианты раскрываются справа в одной строке. */
@media(min-width:769px){
  #view-calendar .crm-calendar-filter-btn:has(+ #calendarFilterPanel.open),
  #view-calendar .crm-calendar-employee-filter-btn:has(+ #calendarEmployeeFilterPanel.open){
    background:#c51a22!important;
    color:#fff!important;
    border-color:#c51a22!important;
  }
}

/* source style 48 id="crm-v1-16-24-calendar-desktop-filter-controls" */
@media(min-width:769px){
  /* Управляющие кнопки — отдельные неизменяемые выключатели. */
  #view-calendar .crm-calendar-filter-btn,
  #view-calendar .crm-calendar-employee-filter-btn{
    flex:0 0 auto!important;
    width:auto!important;
    min-width:0!important;
    white-space:nowrap!important;
  }
  #view-calendar .crm-calendar-filter-btn:has(+ #calendarFilterPanel.open),
  #view-calendar .crm-calendar-employee-filter-btn:has(+ #calendarEmployeeFilterPanel.open){
    background:#c51a22!important;
    color:#fff!important;
    border-color:#c51a22!important;
    box-shadow:none!important;
  }
  /* В рамке остаются только реальные значения, без «Все ...». */
  #view-calendar #calendarFilterPanel .crm-filter-option.active,
  #view-calendar #calendarEmployeeFilterPanel .crm-calendar-employee-filter-option.active{
    background:#c51a22!important;
    color:#fff!important;
    border-color:#c51a22!important;
  }
}

/* source style 49 id="crm-v1-16-25-calendar-desktop-filter-layout-fix" */
@media(min-width:769px){
  /* Панели идут непосредственно справа от своей управляющей кнопки и занимают место только по горизонтали. */
  #view-calendar .crm-calendar-filter-row,
  #view-calendar .crm-calendar-filter-wrap{
    height:42px!important;
    min-height:42px!important;
    overflow:visible!important;
  }
  #view-calendar #calendarFilterPanel.crm-calendar-filter-panel.types-only,
  #view-calendar #calendarEmployeeFilterPanel.crm-calendar-employee-filter-panel{
    position:static!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    transform:none!important;
    flex:0 0 auto!important;
  }
  /* Кнопка сотрудника остаётся отдельной и после раскрытого блока типов съёмки. */
  #view-calendar .crm-calendar-employee-filter-wrap{
    position:static!important;
    display:flex!important;
    align-items:center!important;
    gap:7px!important;
    flex:0 0 auto!important;
  }
  /* На ПК крест не используется: закрытие и сброс — повторным нажатием управляющей кнопки. */
  #view-calendar #calendarFilterReset{display:none!important}
  /* Пока открыт любой фильтр, заголовок месяца не рисуется под его содержимым. */
  #view-calendar .crm-calendar-shell:has(#calendarFilterPanel.open) .crm-calendar-toolbar,
  #view-calendar .crm-calendar-shell:has(#calendarEmployeeFilterPanel.open) .crm-calendar-toolbar{
    visibility:hidden!important;
    pointer-events:none!important;
  }
}

/* source style 50 id="crm-v1-16-26-calendar-desktop-exclusive-filter" */
@media(min-width:769px){
  /* При открытом фильтре типов кнопку сотрудников не дублируем рядом с содержимым. */
  #view-calendar .crm-calendar-filter-wrap:has(> #calendarFilterPanel.open) > .crm-calendar-employee-filter-wrap{
    display:none!important;
  }
}

/* source style 51 id="crm-v1-16-28-calendar-filter-open-state" */


/* source style 52 id="crm-v1-16-29-calendar-notes-save-layout" */
\n.crm-calendar-notes-footer{display:none;flex:0 0 auto;padding:10px 15px;border-top:1px solid var(--border);background:#dcdde1!important;justify-content:flex-end;align-items:center}\n.crm-calendar-notes.fullscreen .crm-calendar-notes-footer{display:flex!important}\n@media(min-width:769px){\n  .crm-calendar-notes.fullscreen{\n    inset:auto!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;\n    width:min(calc(100vw - 36px),760px)!important;max-width:760px!important;\n    height:min(94dvh,920px)!important;max-height:94dvh!important;\n    margin:0!important;border-radius:12px!important;overflow:hidden!important;\n  }\n}\n@media(max-width:768px){\n  .crm-calendar-notes.fullscreen{display:flex!important;flex-direction:column!important}\n  .crm-calendar-notes.fullscreen .crm-calendar-notes-footer{padding:10px max(15px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(15px,env(safe-area-inset-left))!important}\n}\n

/* source style 53 id="crm-v1-16-30-calendar-notes-layout" */
/* Развернутый блокнот занимает геометрию редактора съемки, но штатный footer остается снаружи и доступен. */
#calendarEventModal>.crm-modal.crm-shoot-modal{position:relative!important;overflow:hidden!important}
#calendarEventModal>.crm-modal.crm-shoot-modal.crm-notes-expanded #calendarNotesCard.fullscreen{
  position:absolute!important;
  inset:0 0 var(--calendar-shoot-footer-height,68px) 0!important;
  width:auto!important;max-width:none!important;
  height:auto!important;max-height:none!important;
  margin:0!important;
  transform:none!important;
  border:0!important;border-radius:0!important;
  z-index:20!important;
  background:#fff!important;
  display:flex!important;flex-direction:column!important;
  overflow:hidden!important;
  box-shadow:none!important;
  box-sizing:border-box!important;
}
#calendarEventModal>.crm-modal.crm-shoot-modal.crm-notes-expanded #calendarNotesCard.fullscreen .crm-notes-head{flex:0 0 auto!important}
#calendarEventModal>.crm-modal.crm-shoot-modal.crm-notes-expanded #calendarNotesCard.fullscreen #calendarNotesFormatbar{flex:0 0 auto!important}
#calendarEventModal>.crm-modal.crm-shoot-modal.crm-notes-expanded #calendarNotesCard.fullscreen .crm-notes-editor{
  flex:1 1 auto!important;min-height:0!important;height:auto!important;overflow:auto!important;box-sizing:border-box!important;
}
#calendarEventModal>.crm-modal.crm-shoot-modal.crm-notes-expanded>.crm-modal-footer{
  position:relative!important;z-index:30!important;display:flex!important;
}
.crm-calendar-notes-footer{display:none!important}
@media(max-width:768px){
  #calendarEventModal>.crm-modal.crm-shoot-modal.crm-notes-expanded #calendarNotesCard.fullscreen{
    inset:0 0 var(--calendar-shoot-footer-height,76px) 0!important;
    padding:0!important;
  }
  #calendarEventModal>.crm-modal.crm-shoot-modal.crm-notes-expanded #calendarNotesCard.fullscreen .crm-notes-editor{margin:8px!important;width:auto!important;max-width:none!important}
}

/* source style 54 id="crm-v1-17-2-employee-public-links" */
.crm-employee-public-row td{padding:0 8px 12px!important;border-top:0!important;background:#fbfcfd}.crm-employee-public-link-line{display:grid;grid-template-columns:auto minmax(220px,1fr) auto auto;gap:8px;align-items:center;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:#f8f9fa}.crm-employee-public-label{font-size:12px;font-weight:700;color:#57606f;white-space:nowrap}.crm-employee-public-url{width:100%;min-width:0;padding:8px 10px;border:1px solid var(--border);border-radius:6px;background:#fff;color:#57606f;font-size:11px}.crm-employee-public-link-line .crm-btn{padding:7px 10px;font-size:11px}
@media(max-width:768px){.crm-employee-public-link-line{grid-template-columns:1fr 1fr}.crm-employee-public-label,.crm-employee-public-url{grid-column:1/-1}.crm-employee-public-link-line .crm-btn{width:100%}}

/* source style 55 id="crm-v1-17-3-employee-settings-layout" */
.crm-employees-table th{text-align:center!important}
.crm-employees-table th:nth-child(1),.crm-employees-table td:nth-child(1){width:72px!important;text-align:center!important}
.crm-employees-table th:nth-child(2),.crm-employees-table td:nth-child(2){width:72px!important;text-align:center!important}
.crm-employees-table th:nth-child(3),.crm-employees-table td:nth-child(3){width:auto!important}
.crm-employees-table th:nth-child(4),.crm-employees-table td:nth-child(4){width:96px!important;text-align:center!important}
.crm-employee-public-link-line{grid-template-columns:minmax(220px,1fr) auto auto!important}
.crm-employee-public-label{display:none!important}
@media(max-width:768px){
 .crm-employees-table th:nth-child(1),.crm-employees-table td:nth-child(1){width:64px!important}
 .crm-employees-table th:nth-child(2),.crm-employees-table td:nth-child(2){width:58px!important}
 .crm-employees-table th:nth-child(4),.crm-employees-table td:nth-child(4){width:82px!important}
 .crm-employee-public-link-line{grid-template-columns:1fr 1fr!important}
 .crm-employee-public-url{grid-column:1/-1!important}
}

/* source style 56 id="crm-v1-17-12-day-footer-single-row" */
#calendarDayEventsModal>.crm-modal>.crm-modal-footer{
  flex-direction:row!important;align-items:center!important;justify-content:space-between!important;flex-wrap:nowrap!important;gap:10px!important;
}
#calendarDayEventsModal>.crm-modal>.crm-modal-footer>div:first-child{flex:0 0 auto!important}
#calendarDayEventsModal .crm-footer-buttons{width:auto!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;flex-wrap:nowrap!important;gap:8px!important;margin-left:auto!important}
@media(max-width:768px){
 #calendarDayEventsModal>.crm-modal>.crm-modal-footer{padding:10px 12px!important;gap:6px!important}
 #calendarDayEventsModal .crm-footer-buttons{width:auto!important;gap:6px!important}
 #calendarDayEventsModal>.crm-modal>.crm-modal-footer .crm-btn{white-space:nowrap!important;padding:9px 10px!important;font-size:12px!important}
}

/* source style 57 id="crm-v1-18-2-shoot-contacts" */
.crm-shoot-contacts-section{margin:0 0 14px!important}
.crm-shoot-contacts-section .crm-entry-table-wrap{margin-bottom:6px}
.crm-shoot-location-field{margin-bottom:14px!important}
.crm-shoot-location-field input{width:100%}
@media(max-width:768px){.crm-shoot-contacts-section{margin-bottom:10px!important}.crm-shoot-contacts-section .crm-entry-table th,.crm-shoot-contacts-section .crm-entry-table td{padding:5px!important}.crm-shoot-contacts-section input{min-width:0!important;padding:8px!important;font-size:13px!important}.crm-shoot-location-field{margin-bottom:10px!important}}

/* source style 58 id="crm-v1-18-5-contracts-desktop-fill" */
/* Desktop: original column widths are hard minimums. Extra viewport width is distributed proportionally. */
@media(min-width:769px){
  #view-contracts #contractsMainTable{width:100%!important;max-width:none!important;table-layout:fixed!important}
}

/* source style 59 id="crm-v1-18-6-shoot-contacts-mobile" */
@media(max-width:768px){
 #calendarEventContactsSection>.crm-data-section-title>span:last-child{display:none!important}
 #calendarEventContactsSection>.crm-data-section-title::after{
   content:'+ контакт';font-size:10px;font-weight:500;color:#7b8794;cursor:pointer;
 }
 #calendarEventContactsSection>.crm-add-contact-btn{display:none!important}
 #calendarEventContactsSection .crm-entry-table-wrap{margin:0!important;border-bottom:0!important}
 #calendarEventContactsSection .crm-contacts-table tr:last-child{border-bottom:0!important}
 #calendarEventContactsSection .crm-entry-table{border-bottom:0!important}
}

/* source style 60 id="crm-v1-18-6-shoot-contact-header-button" */
@media(max-width:768px){
 #calendarEventContactsSection>.crm-data-section-title::after{display:none!important}
 #calendarEventContactsSection .crm-mobile-contact-add{display:inline!important;border:0;background:transparent;padding:0;margin:0;font-size:10px;font-weight:500;color:#7b8794;line-height:1.2}
}
@media(min-width:769px){#calendarEventContactsSection .crm-mobile-contact-add{display:none!important}}

/* source style 61 id="crm-v1-18-7-shoot-contacts-desktop-clean" */
@media(min-width:769px){
 #calendarEventContactsSection .crm-entry-table thead{display:none!important}
}

/* source style 62 id="crm-v1-18-10-mobile-calendar-filter-reset" */
@media(max-width:768px){
 #view-calendar #calendarFilterReset.crm-mobile-filter-open{
  display:inline-flex!important;
  flex:0 0 auto!important;
 }
}

/* source style 63 id="crm-v2-0-account-limit-button" */
.crm-account-limit-btn{display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;text-decoration:none!important;min-width:120px!important;align-self:stretch!important}
@media(max-width:768px){
 .crm-account-limit-btn{width:100%!important;min-width:0!important;min-height:0!important;padding:10px 8px!important;font-size:12px!important;line-height:1.2!important}
}

/* source style 64 id="crm-v2-0-1-install-app" */
.crm-install-app-overlay{display:none;position:fixed!important;left:0!important;top:0!important;right:0!important;bottom:0!important;width:100vw!important;height:100dvh!important;min-width:100vw!important;min-height:100dvh!important;z-index:2147483000!important;background:rgba(20,28,36,.52);align-items:center;justify-content:center;padding:18px!important;margin:0!important;transform:none!important;box-sizing:border-box!important}
.crm-install-app-overlay.open{display:flex}.crm-install-app-dialog{width:min(390px,100%);background:#fff;border-radius:14px;box-shadow:0 20px 60px rgba(0,0,0,.28);padding:22px;color:#2c3e50}
.crm-install-app-icon{width:72px;height:72px;border-radius:16px;display:block;margin:0 auto 14px}.crm-install-app-title{text-align:center;font-size:19px;font-weight:750;margin-bottom:8px}.crm-install-app-text{font-size:13px;line-height:1.5;color:#66717d;text-align:center;margin-bottom:16px}.crm-install-app-ios{display:none;background:#f4f6f8;border:1px solid #dfe4ea;border-radius:9px;padding:11px 12px;margin:0 0 15px;font-size:13px;line-height:1.55;color:#435165}.crm-install-app-actions{display:flex;gap:8px}.crm-install-app-actions .crm-btn{flex:1;padding:10px 12px;font-size:13px}
@media(max-width:768px){.crm-install-app-overlay{padding:max(14px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left))}.crm-install-app-dialog{padding:20px}}

/* source style 65 id="crm-v2-0-6-fixes" */
.crm-pin-input{-webkit-text-security:disc!important}
body.crm-notes-editing #crmNotesQuickFooter{display:flex!important}
#crmNotesQuickFooter{display:none;position:fixed;left:0;right:0;bottom:0;z-index:100030;background:#dcdde1;border-top:1px solid var(--border);padding:10px max(15px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(15px,env(safe-area-inset-left));box-sizing:border-box;flex-direction:column;align-items:flex-start}
#crmNotesQuickFooter .crm-sticky-totals{width:100%}
#crmNotesQuickFooter .crm-footer-buttons{width:100%}
body.crm-notes-editing #clientNotesCard.fullscreen{padding-bottom:150px!important}
@media(max-width:768px){body.crm-notes-editing #clientNotesCard.fullscreen .crm-notes-editor{margin-bottom:0!important}}

/* source style 66 id="crm-v2-0-7-fixes" */
/* Contract notes: the same real footer remains in place while notes are expanded. */
#crmNotesQuickFooter{display:none!important}
body.crm-notes-editing #crmNotesQuickFooter{display:none!important}
@media(max-width:768px){
 body.crm-notes-editing #contractModal>.crm-modal>.crm-modal-footer.crm-notes-live-footer{
  position:fixed!important;left:0!important;right:0!important;bottom:0!important;z-index:100040!important;
  width:100%!important;margin:0!important;box-sizing:border-box!important;
  padding-bottom:max(10px,env(safe-area-inset-bottom))!important
 }
 body.crm-notes-editing #clientNotesCard.fullscreen{padding-bottom:0!important}
 body.crm-notes-editing #clientNotesCard.fullscreen .crm-notes-editor{margin-bottom:0!important}
}
@media(min-width:769px){
 #contractModal>.crm-modal.crm-contract-notes-expanded{position:relative!important;overflow:hidden!important}
 #contractModal>.crm-modal.crm-contract-notes-expanded #clientNotesCard.desktop-fullscreen{
  position:absolute!important;inset:0 0 var(--contract-notes-footer-height,82px) 0!important;
  width:auto!important;height:auto!important;max-width:none!important;max-height:none!important;
  margin:0!important;padding:0!important;border:0!important;border-radius:0!important;transform:none!important;
  z-index:80!important;background:#fff!important;display:flex!important;flex-direction:column!important;overflow:hidden!important
 }
 #contractModal>.crm-modal.crm-contract-notes-expanded #clientNotesCard.desktop-fullscreen .crm-notes-head{flex:0 0 auto!important;margin:0!important}
 #contractModal>.crm-modal.crm-contract-notes-expanded #clientNotesCard.desktop-fullscreen .crm-notes-formatbar{flex:0 0 auto!important;margin:0!important}
 #contractModal>.crm-modal.crm-contract-notes-expanded #clientNotesCard.desktop-fullscreen .crm-notes-editor{
  flex:1 1 auto!important;min-height:0!important;width:auto!important;max-width:none!important;height:auto!important;
  margin:12px 16px 0!important;box-sizing:border-box!important;overflow:auto!important
 }
 #contractModal>.crm-modal.crm-contract-notes-expanded>.crm-modal-footer{position:relative!important;z-index:90!important;display:flex!important}
}
.crm-calendar-month-picker-btn{border:0;background:transparent;padding:4px 8px;margin:0;font:inherit;color:inherit;cursor:pointer;border-radius:7px}
.crm-calendar-month-picker-btn:hover{background:#eef1f4}
.crm-shoot-type-field{display:flex!important;align-items:center!important;white-space:normal!important;height:auto!important;min-height:42px!important}
.crm-shoot-status-required .crm-shoot-type-field{border-color:#ba1a21!important;box-shadow:0 0 0 1px rgba(186,26,33,.12)}
.crm-type-picker-list{max-height:min(55dvh,430px);overflow:auto;padding:8px 0}
.crm-type-picker-option{display:flex;align-items:center;gap:12px;width:100%;padding:12px 8px;border:0;border-bottom:1px solid #edf0f2;background:#fff;text-align:left;font:inherit;color:#2f3542;cursor:pointer}
.crm-type-picker-option:last-child{border-bottom:0}.crm-type-picker-option input{width:20px;height:20px;accent-color:var(--primary);flex:0 0 auto}

/* source style 67 id="crm-v2-0-8-fixes" */
/* v2.0.8: mobile notes return to the stable fixed quick footer; real contract footer stays home. */
@media(max-width:768px){
 body.crm-notes-editing #crmNotesQuickFooter{
  display:flex!important;position:fixed!important;left:0!important;right:0!important;bottom:0!important;
  z-index:100050!important;width:100%!important;margin:0!important;box-sizing:border-box!important;
  padding-bottom:max(10px,env(safe-area-inset-bottom))!important
 }
 body.crm-notes-editing #clientNotesCard.fullscreen{
  padding-bottom:var(--crm-notes-quick-footer-height,150px)!important
 }
 body.crm-notes-editing #clientNotesCard.fullscreen .crm-notes-editor{margin-bottom:0!important}
 #view-calendar .crm-calendar-month.crm-calendar-month-picker-btn{
  min-width:118px!important;max-width:150px!important;width:auto!important;white-space:nowrap!important;
  overflow:hidden!important;text-overflow:ellipsis!important;font-size:12px!important;line-height:30px!important;
  padding:2px 4px!important
 }
}
@media(min-width:769px){
 #view-calendar .crm-calendar-month.crm-calendar-month-picker-btn{
  min-width:170px!important;max-width:230px!important;width:auto!important;white-space:nowrap!important;
  font-size:16px!important;line-height:34px!important;padding:2px 8px!important
 }
}
.crm-wheel-item.crm-wheel-click-selected{font-weight:700!important;color:#2c3e50!important}

/* source style 68 id="crm-v2-0-9-fixes" */
/* Compact clickable month title; navigation remains available through the month/year picker. */
#view-calendar .crm-calendar-toolbar-left > button:not(#calendarMonthTitle){display:none!important}
#view-calendar #calendarMonthTitle.crm-calendar-month-picker-btn{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-width:0!important;max-width:none!important;width:auto!important;
  padding:2px 6px!important;margin:0!important;border:0!important;background:transparent!important;
  white-space:nowrap!important;overflow:visible!important;text-overflow:clip!important;
  font-family:inherit!important;font-size:20px!important;line-height:1.2!important;font-weight:700!important;
  letter-spacing:normal!important;color:#2c3e50!important;box-shadow:none!important
}
#view-calendar #calendarMonthTitle.crm-calendar-month-picker-btn:hover{background:transparent!important}
@media(max-width:768px){
 #view-calendar #calendarMonthTitle.crm-calendar-month-picker-btn{
   font-size:16px!important;line-height:1.2!important;font-weight:700!important;padding:1px 3px!important
 }
}

/* source style 69 id="crm-v2-0-10-calendar-month-header-fix" */
/* Month title uses exactly the same typography as the live year in list mode. */
#view-calendar .crm-calendar-toolbar,
#view-calendar .crm-calendar-toolbar-left,
#view-calendar #calendarMonthTitle.crm-calendar-month-picker-btn{
  pointer-events:auto!important;
}
#view-calendar #calendarMonthTitle.crm-calendar-month-picker-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  padding:2px 6px!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  color:#2c3e50!important;
  box-shadow:none!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:clip!important;
  font-family:inherit!important;
  font-weight:700!important;
  cursor:pointer!important;
  position:relative!important;
  z-index:2!important;
}
@media(min-width:769px){
  #view-calendar .crm-calendar-toolbar-left{gap:8px!important}
  #view-calendar .crm-calendar-toolbar-left > button:not(#calendarMonthTitle){
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:34px!important;
    min-width:34px!important;
    height:34px!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    color:#435165!important;
    font-size:24px!important;
    line-height:1!important;
    cursor:pointer!important;
  }
  #view-calendar #calendarMonthTitle.crm-calendar-month-picker-btn{
    font-size:18px!important;
    line-height:1.2!important;
  }
}
@media(max-width:768px){
  #view-calendar .crm-calendar-toolbar-left{gap:0!important;pointer-events:auto!important}
  #view-calendar .crm-calendar-toolbar-left > button:not(#calendarMonthTitle){display:none!important}
  #view-calendar #calendarMonthTitle.crm-calendar-month-picker-btn{
    font-size:14px!important;
    line-height:34px!important;
    min-width:0!important;
    max-width:145px!important;
    padding:0 3px!important;
    pointer-events:auto!important;
    touch-action:manipulation!important;
  }
}

/* source style 70 id="crm-v2-0-11-fixes" */
/* Keep the month title above the mobile toolbar layers and make the whole label tappable. */
@media(max-width:768px){
 #view-calendar .crm-calendar-toolbar-left{position:relative!important;z-index:30!important;overflow:visible!important}
 #view-calendar #calendarMonthTitle.crm-calendar-month-picker-btn{
  position:relative!important;z-index:31!important;display:inline-flex!important;
  pointer-events:auto!important;touch-action:manipulation!important;-webkit-tap-highlight-color:transparent!important
 }
}

/* source style 71 id="crm-v2-0-12-mobile-month-picker-fix" */
/* Portrait phone: make the month/year label visibly actionable. */
@media (max-width:768px) and (orientation:portrait){
  #view-calendar #calendarMonthTitle.crm-calendar-month-picker-btn{
    text-decoration:underline!important;
    text-decoration-thickness:1px!important;
    text-underline-offset:3px!important;
    cursor:pointer!important;
    pointer-events:auto!important;
    touch-action:none!important;
    position:relative!important;
    z-index:1002!important;
  }
  #view-calendar .crm-calendar-toolbar,
  #view-calendar .crm-calendar-toolbar-left{
    pointer-events:auto!important;
    position:relative!important;
    z-index:1001!important;
  }
}

/* source style 72 id="crm-v2-0-13-mobile-calendar-toolbar-row" */
@media(max-width:768px){
 #view-calendar .crm-calendar-filter-row{
  display:grid!important;
  grid-template-columns:1fr auto 1fr!important;
  align-items:center!important;
  gap:8px!important;
  width:100%!important;
  min-height:44px!important;
  overflow:visible!important;
 }
 #view-calendar .crm-calendar-filter-wrap{grid-column:1!important;justify-self:start!important;min-width:0!important}
 #view-calendar #calendarMonthTitle.crm-calendar-month-picker-btn{
  grid-column:2!important;justify-self:center!important;
  margin:0!important;max-width:none!important;width:auto!important;
  font-size:14px!important;line-height:34px!important;
  white-space:nowrap!important;pointer-events:auto!important;
 }
 #view-calendar #calendarViewToggle{grid-column:3!important;justify-self:end!important;margin:0!important}
 #view-calendar .crm-calendar-toolbar{display:none!important}
 #view-calendar #calendarListLiveYear{display:none!important}
}

/* source style 73 id="crm-v2-0-14-calendar-list-year-restore" */
/* v2.0.14: in list mode restore the live year; the clickable month belongs only to calendar mode. */
@media(max-width:768px){
 #view-calendar .crm-calendar-filter-row.crm-list-year-visible #calendarMonthTitle{display:none!important}
 #view-calendar .crm-calendar-filter-row.crm-list-year-visible #calendarListLiveYear{
  display:block!important;grid-column:2!important;justify-self:center!important;
  font-size:14px!important;line-height:34px!important;font-weight:700!important;
  white-space:nowrap!important;text-decoration:none!important;pointer-events:none!important
 }
}
@media(min-width:769px){
 #view-calendar .crm-calendar-filter-row.crm-list-year-visible #calendarListLiveYear{
  display:block!important;font-size:18px!important;line-height:1.2!important;font-weight:700!important;
  white-space:nowrap!important;text-decoration:none!important;pointer-events:none!important
 }
}

/* source style 74 id="crm-leads-old-status-editor-fix" */
@media(max-width:768px){
 .crm-app .crm-leads-table select.lead-status-select{
  -webkit-appearance:none!important;appearance:none!important;
  width:86px!important;min-width:86px!important;height:48px!important;
  padding:6px 10px!important;border:1px solid var(--border)!important;
  border-radius:5px!important;background:#fff!important;
  font-size:22px!important;line-height:1!important;text-align:center!important;
  text-align-last:center!important;color:#2c3e50!important;
 }
}

/* source style 75 id="crm-leads-status-editor-compact-v2016" */
/* Компактный редактор метки: одинаковая высота строки в просмотре и редактировании */
.crm-app .crm-leads-table select.lead-status-select{
 -webkit-appearance:none!important;
 appearance:none!important;
 box-sizing:border-box!important;
 width:44px!important;
 min-width:44px!important;
 max-width:44px!important;
 height:34px!important;
 min-height:34px!important;
 padding:0!important;
 margin:0 auto!important;
 border:1px solid var(--border)!important;
 border-radius:5px!important;
 background:#fff!important;
 font-size:18px!important;
 line-height:32px!important;
 text-align:center!important;
 text-align-last:center!important;
 color:#2c3e50!important;
 vertical-align:middle!important;
}
.crm-app .crm-leads-table select.lead-status-select option{font-size:16px!important}
@media(max-width:768px){
 .crm-app .crm-leads-table select.lead-status-select{
  width:44px!important;min-width:44px!important;max-width:44px!important;
  height:34px!important;min-height:34px!important;
  padding:0!important;font-size:18px!important;line-height:32px!important;
 }
}

/* source style 76 id="crm-leads-stable-layout-v2019" */
/* v2.0.20 — лиды: одинаковая геометрия просмотра/редактирования и без резинового сдвига */
#view-leads,
#view-leads .crm-workspace{
 max-width:100%!important;
 overflow-x:hidden!important;
 overscroll-behavior:none!important;
}
#view-leads .crm-contracts-table-wrapper{
 max-width:100%!important;
 min-width:0!important;
 overscroll-behavior:none!important;
 -webkit-overflow-scrolling:auto!important;
}
#view-leads .crm-leads-table tbody tr{
 height:54px!important;
 min-height:54px!important;
 max-height:54px!important;
}
#view-leads .crm-leads-table tbody td{
 height:54px!important;
 min-height:54px!important;
 max-height:54px!important;
 box-sizing:border-box!important;
 padding-top:6px!important;
 padding-bottom:6px!important;
 vertical-align:middle!important;
 overflow:hidden!important;
}
#view-leads .crm-leads-table input.lead-comment-input{
 display:block!important;
 width:100%!important;
 height:34px!important;
 min-height:34px!important;
 max-height:34px!important;
 box-sizing:border-box!important;
 padding:0 7px!important;
 margin:0!important;
}
#view-leads .crm-leads-table select.lead-status-select{
 width:44px!important;min-width:44px!important;max-width:44px!important;
 height:34px!important;min-height:34px!important;max-height:34px!important;
 box-sizing:border-box!important;margin:0 auto!important;padding:0!important;
}
#view-leads .crm-leads-table .lead-comment-td{
 line-height:1.25!important;
}
/* Никакой анимации/сдвига при переходе в режим заметок. */
#view-leads *,#view-leads *::before,#view-leads *::after{
 transition-property:background-color,color,border-color,opacity!important;
}
@media(max-width:768px){
 html,body,.crm-app,#view-leads{
  max-width:100vw!important;
  overflow-x:hidden!important;
  overscroll-behavior:none!important;
 }
 #view-leads .crm-contracts-table-wrapper{
  width:100%!important;max-width:100%!important;
  overscroll-behavior:none!important;
  -webkit-overflow-scrolling:auto!important;
 }
 #view-leads .crm-leads-table tbody tr,
 #view-leads .crm-leads-table tbody td{
  height:56px!important;min-height:56px!important;max-height:56px!important;
 }
 #view-leads.crm-leads-editing #leads-count-container{display:none!important}
}

/* source style 77 */
#archiveMainTable{table-layout:fixed!important}
#archiveMainTable th,#archiveMainTable td{box-sizing:border-box!important;overflow:hidden;text-overflow:ellipsis}

/* source style 78 id="crm-empty-table-width-v2022" */
#view-contracts .crm-contracts-table-wrapper,
#view-leads .crm-contracts-table-wrapper,
#view-archive .crm-contracts-table-wrapper,
#archiveTableWrapper{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
#view-contracts .crm-workspace,
#view-leads .crm-workspace,
#view-archive .crm-workspace{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
#view-contracts .crm-table,
#view-leads .crm-leads-table,
#archiveMainTable{
  box-sizing:border-box!important;
}
#archiveTableWrapper{
  overflow-x:auto!important;
  overscroll-behavior-x:none!important;
  -webkit-overflow-scrolling:touch;
}
#view-archive{overflow-x:hidden!important}
#view-archive .crm-workspace{overflow-x:hidden!important}
#archiveMainTable{max-width:none!important}
/* Empty/loading rows must occupy the same table geometry as populated rows. */
#view-contracts .crm-empty-table-cell,
#view-leads .crm-empty-table-cell,
#archiveMainTable .crm-empty-table-cell{
  box-sizing:border-box!important;
}
#archiveMainTable .crm-table-state{
  width:100%!important;
  min-width:100%!important;
  position:static!important;
  text-align:center!important;
}

/* source style 79 id="crm-loading-and-touch-v2023" */
.crm-data-loading-host{position:relative!important}
.crm-data-loading-host.crm-is-loading{overflow:hidden!important;min-height:220px!important}
.crm-data-loading-overlay{display:none!important;position:absolute!important;inset:0!important;z-index:500!important;background:#f8f9fa!important;align-items:center!important;justify-content:center!important;flex-direction:column!important;gap:12px!important;color:#566273!important;font-weight:600!important;text-align:center!important}
.crm-data-loading-overlay.active{display:flex!important}
.crm-data-loading-overlay .crm-spinner{display:block!important;position:static!important;margin:0!important}
.crm-data-loading-overlay .crm-overlay-loading-text{font-size:16px!important;font-weight:600!important;line-height:1.3!important;white-space:nowrap!important}
#leadsTableWrapper.crm-is-loading #leadsMainTable,
#archiveTableWrapper.crm-is-loading #archiveMainTable{visibility:hidden!important}
@media(max-width:768px){
 #view-contracts,#view-contracts .crm-workspace,#view-archive,#view-archive .crm-workspace{overscroll-behavior:none!important}
 #view-contracts .crm-contracts-table-wrapper{overscroll-behavior-y:none!important}
 #archiveTableWrapper{overscroll-behavior-x:none!important}
}

/* source style 80 id="crm-v2024-empty-contracts-fill" */
@media(min-width:769px){
 #view-contracts .crm-contracts-table-wrapper{width:100%!important;max-width:100%!important}
 #view-contracts #contractsMainTable.crm-empty-contracts-table{width:100%!important;min-width:100%!important;table-layout:fixed!important}
}

/* source style 81 id="crm-v2-1-1-statistics" */
.crm-stat-workspace{height:100%;min-height:0;overflow:auto;padding-bottom:28px!important}
.crm-stat-tabs{display:flex;gap:8px;margin-bottom:16px;position:sticky;top:0;z-index:3;background:var(--bg,#f5f6f8);padding:2px 0 10px}
.crm-stat-loading{display:none;align-items:center;justify-content:center;gap:10px;min-height:180px;color:#747d8c}.crm-stat-loading.active{display:flex}
.crm-stat-content{display:block}.crm-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}
.crm-stat-card{background:#fff;border:1px solid var(--border);border-radius:12px;padding:15px;min-width:0}.crm-stat-card-label{font-size:11px;font-weight:700;text-transform:uppercase;color:#7b8794;margin-bottom:7px}.crm-stat-card-value{font-size:22px;font-weight:800;color:#2c3e50;line-height:1.15}.crm-stat-card-sub{font-size:11px;color:#7b8794;margin-top:5px}.crm-stat-card.positive .crm-stat-card-value{color:#198754}.crm-stat-card.negative .crm-stat-card-value{color:#ba1a21}
.crm-stat-sections{display:grid;grid-template-columns:1fr 1fr;gap:14px}.crm-stat-section{background:#fff;border:1px solid var(--border);border-radius:12px;padding:14px;min-width:0}.crm-stat-section.full{grid-column:1/-1}.crm-stat-title{font-size:15px;font-weight:800;color:#34495e;margin-bottom:12px}.crm-stat-row{display:grid;grid-template-columns:minmax(100px,1fr) minmax(80px,2fr) auto;gap:9px;align-items:center;margin:9px 0;font-size:12px}.crm-stat-row-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crm-stat-bar{height:8px;background:#edf0f3;border-radius:999px;overflow:hidden}.crm-stat-bar>i{display:block;height:100%;background:#7b8794;border-radius:999px}.crm-stat-row-val{font-weight:700;white-space:nowrap}.crm-stat-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:10px}.crm-stat-table{width:100%;border-collapse:collapse;min-width:720px}.crm-stat-table th,.crm-stat-table td{padding:10px 11px;border-bottom:1px solid var(--border);text-align:right;font-size:12px;white-space:nowrap}.crm-stat-table th{background:#f5f7f9;color:#5d6877;font-size:10px;text-transform:uppercase}.crm-stat-table th:first-child,.crm-stat-table td:first-child{text-align:left}.crm-stat-table tr:last-child td{border-bottom:0}.crm-stat-empty{text-align:center;padding:55px 15px;color:#7b8794}
@media(max-width:900px){.crm-stat-grid{grid-template-columns:1fr 1fr}.crm-stat-sections{grid-template-columns:1fr}.crm-stat-section.full{grid-column:auto}}
@media(max-width:520px){.crm-stat-workspace{padding-left:14px!important;padding-right:14px!important}.crm-stat-tabs{gap:6px}.crm-stat-tabs .crm-btn{flex:1;padding:9px 6px;font-size:11px}.crm-stat-grid{gap:8px}.crm-stat-card{padding:11px}.crm-stat-card-value{font-size:18px}.crm-stat-card-label{font-size:9px}.crm-stat-row{grid-template-columns:minmax(80px,1fr) minmax(55px,1.2fr) auto;gap:6px;font-size:11px}}

/* source style 82 id="crm-v2-1-2-statistics-trends" */
.crm-stat-chart-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.crm-stat-chart{background:#fff;border:1px solid var(--border);border-radius:12px;padding:14px;min-width:0}
.crm-stat-chart-title{font-size:15px;font-weight:800;color:#34495e;margin-bottom:10px}
.crm-stat-chart-svg{display:block;width:100%;height:auto;min-height:220px;overflow:visible}
.crm-stat-chart-axis{stroke:#aeb7c2;stroke-width:1}.crm-stat-chart-gridline{stroke:#e7ebef;stroke-width:1}.crm-stat-chart-line{fill:none;stroke:#596579;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.crm-stat-chart-point{fill:#fff;stroke:#596579;stroke-width:3}.crm-stat-chart-text{fill:#6b7685;font-size:11px}.crm-stat-chart-value{fill:#34495e;font-size:10px;font-weight:700}
@media(max-width:900px){.crm-stat-chart-grid{grid-template-columns:1fr}}
@media(max-width:520px){.crm-stat-chart{padding:10px}.crm-stat-chart-svg{min-height:190px}.crm-stat-chart-text{font-size:10px}.crm-stat-chart-value{font-size:9px}}

/* source style 83 id="crm-v2-1-3-statistics-layout" */
.crm-stat-workspace{position:relative!important}
.crm-stat-tabs{z-index:20!important;background:#f8f9fa!important;margin-bottom:12px!important}
.crm-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important;margin-bottom:14px!important}
.crm-stat-card{padding:12px 14px!important}
.crm-stat-card-label{margin-bottom:5px!important}.crm-stat-card-sub{margin-top:4px!important}
@media(max-width:900px){.crm-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:520px){
 #view-statistics .crm-stat-workspace{padding-top:0!important}
 #view-statistics .crm-stat-tabs{top:0!important;margin:0 -14px 10px!important;padding:10px 14px!important;background:#f8f9fa!important;box-shadow:0 1px 0 rgba(0,0,0,.04)}
 #view-statistics .crm-stat-tabs .crm-btn{font-size:11px!important;padding:9px 5px!important}
 #view-statistics .crm-stat-grid{gap:7px!important;margin-bottom:10px!important}
 #view-statistics .crm-stat-card{padding:10px 11px!important;min-height:76px!important}
 #view-statistics .crm-stat-card-value{font-size:17px!important}
 #view-statistics .crm-stat-card-sub{font-size:10px!important;line-height:1.2!important}
}

/* source style 84 id="crm-standalone-v214" */
html,body{width:100%;height:100%;margin:0;padding:0;overflow:hidden;background:#f4f6f8;font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif;-webkit-text-size-adjust:100%;text-size-adjust:100%;touch-action:manipulation}
.crm-app{width:100%;height:100dvh!important;min-height:100dvh!important;max-height:100dvh!important;font-family:inherit!important}
.crm-app button,.crm-app input,.crm-app select,.crm-app textarea,.crm-app [contenteditable=true],
.crm-modal,.crm-modal button,.crm-modal input,.crm-modal select,.crm-modal textarea,
#authModal,#pinModal,.crm-install-app-overlay,.crm-calendar-month-picker-overlay{font-family:inherit!important}
@supports(height:100svh){.crm-app{height:100svh!important;min-height:100svh!important;max-height:100svh!important}}
@media(max-width:768px){
 html,body{height:100dvh!important;min-height:100dvh!important;max-height:100dvh!important;overscroll-behavior:none}
 .crm-app{height:100dvh!important;min-height:100dvh!important;max-height:100dvh!important}
 .crm-app input,.crm-app select,.crm-app textarea,.crm-app [contenteditable=true]{font-size:16px!important}
}

/* source style 85 id="crm-standalone-v216-fixes" */
html,body{overscroll-behavior:none!important;touch-action:pan-x pan-y!important}
#view-contracts .crm-workspace{position:relative!important}
#view-contracts #contractsLoadingOverlay{position:absolute!important;left:15px!important;right:15px!important;top:64px!important;bottom:15px!important;width:auto!important;height:auto!important;z-index:500!important;border-radius:9px!important;background:#f8f9fa!important}
#view-contracts .crm-contracts-table-wrapper.crm-is-loading #contractsMainTable{visibility:hidden!important}
#view-statistics .crm-stat-section{max-width:100%!important;overflow:hidden!important}
#view-statistics .crm-stat-table-wrap{width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:auto!important;overscroll-behavior-x:contain!important;-webkit-overflow-scrolling:touch}
#view-statistics .crm-stat-table{width:max-content!important;min-width:100%!important}
@media(max-width:768px){
 html,body{position:fixed!important;inset:0!important;width:100%!important;height:100dvh!important;min-height:100dvh!important;max-height:100dvh!important;overflow:hidden!important;overscroll-behavior:none!important;-webkit-text-size-adjust:100%!important;text-size-adjust:100%!important}
 .crm-app,.crm-main-content,.crm-view-container{width:100%!important;max-width:100%!important;overscroll-behavior:none!important}
 #view-contracts .crm-workspace,#view-archive .crm-workspace,#view-statistics .crm-stat-workspace{overscroll-behavior:none!important}
 #view-statistics .crm-stat-section.full{width:100%!important;max-width:100%!important;min-width:0!important}
}

/* AlbomLab CRM v2.1.7 */
#view-contracts #contractsMainTable th[data-col="status"],#view-contracts #contractsMainTable td[data-col="status"]{text-align:center!important}
#view-contracts #contractsMainTable td[data-col="status"]>*{margin-left:auto!important;margin-right:auto!important}
#view-contracts #contractsMainTable th[data-col="albums"],#view-contracts #contractsMainTable td[data-col="albums"]{text-align:center!important}
#view-statistics .crm-stat-workspace{width:100%!important;max-width:100%!important;min-width:0!important;overflow-y:auto!important;overflow-x:hidden!important}
#view-statistics .crm-stat-content,#view-statistics .crm-stat-sections,#view-statistics .crm-stat-chart-grid{width:100%!important;max-width:100%!important;min-width:0!important}
#view-statistics .crm-stat-table-wrap{box-sizing:border-box!important}
@media(max-width:768px){#view-contracts .crm-contracts-table-wrapper,#archiveTableWrapper{overscroll-behavior:none!important}}


/* AlbomLab CRM v2.1.8 — mobile contract columns + statistics recovery */
#view-contracts #contractsMainTable th[data-col="status"],
#view-contracts #contractsMainTable td[data-col="status"]{
  width:218px!important;min-width:218px!important;max-width:218px!important;
  text-align:center!important;box-sizing:border-box!important;
}
#view-contracts #contractsMainTable td[data-col="status"] .crm-status-quick{
  display:block!important;width:100%!important;max-width:100%!important;
  margin:0 auto!important;padding:5px 9px!important;box-sizing:border-box!important;
  text-align:center!important;text-align-last:center!important;
  font-size:10px!important;font-weight:750!important;line-height:1.1!important;
}
#view-contracts #contractsMainTable th[data-col="albums"],
#view-contracts #contractsMainTable td[data-col="albums"]{
  width:156px!important;min-width:156px!important;max-width:156px!important;
  text-align:center!important;box-sizing:border-box!important;
}
#view-statistics .crm-stat-workspace{position:relative!important}
#view-statistics .crm-stat-content{display:block!important;min-height:1px!important}
@media(max-width:768px){
 #view-contracts #contractsMainTable th[data-col="status"],#view-contracts #contractsMainTable td[data-col="status"]{width:218px!important;min-width:218px!important;max-width:218px!important}
 #view-contracts #contractsMainTable th[data-col="albums"],#view-contracts #contractsMainTable td[data-col="albums"]{width:156px!important;min-width:156px!important;max-width:156px!important}
 #view-contracts #contractsMainTable td[data-col="status"] .crm-status-quick{font-size:10px!important}
}


/* v2.1.11 — Android soft keyboard / visible viewport */
@media(max-width:768px){
  #authModal{height:var(--crm-visible-height,100dvh)!important;min-height:0!important;max-height:var(--crm-visible-height,100dvh)!important;overflow-y:auto!important;overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important}
  html.crm-keyboard-open #authModal{align-items:flex-start!important;justify-content:flex-start!important;padding-top:12px!important;padding-bottom:12px!important}
  html.crm-keyboard-open #authModal>.crm-auth-card{margin:auto!important;max-height:calc(var(--crm-visible-height,100dvh) - 24px)!important;overflow-y:auto!important;overscroll-behavior:contain!important}
  #authModal input{scroll-margin-top:90px!important;scroll-margin-bottom:140px!important}
  #authModal .crm-btn{touch-action:manipulation!important}
}

/* v2.1.12 — synchronous edge-menu shield */
@media(max-width:768px){
  body.crm-edge-gesture-active{overscroll-behavior-x:none!important;touch-action:pan-y!important}
  #crmInteractionShield.crm-interaction-shield.open{display:block!important;pointer-events:auto!important}
  #sidebar.crm-sidebar.crm-edge-preview{will-change:transform}
}

/* v2.1.12 — synchronous edge-menu shield */
@media(max-width:768px){
 body.crm-edge-gesture-active{overscroll-behavior-x:none!important;touch-action:pan-y!important}
 #crmInteractionShield.crm-interaction-shield.open{display:block!important;pointer-events:auto!important}
 #sidebar.crm-sidebar.crm-edge-preview{will-change:transform}
}


/* AlbomLab CRM v2.1.14 — attachments */
.crm-attachments{margin:14px 0;padding:12px 14px;border:1px solid var(--border);border-radius:8px;background:#fbfcfd}.crm-attachments-head{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px;font-weight:700}.crm-attachment-count{display:inline-flex;min-width:20px;height:20px;padding:0 6px;align-items:center;justify-content:center;border-radius:10px;background:#e9edf0;font-size:11px}.crm-attachment-add{padding:6px 10px!important;font-size:11px!important}.crm-attachment-list{margin-top:8px}.crm-attachment-row{display:grid;grid-template-columns:minmax(0,1fr) auto 28px;gap:8px;align-items:center;padding:7px 0;border-top:1px solid #e6e9ed}.crm-attachment-name{min-width:0;border:0;background:transparent;padding:0;text-align:left;color:var(--primary);font:inherit;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.crm-attachment-size{font-size:10px;color:#7b8794;white-space:nowrap}.crm-attachment-delete{width:28px;height:28px;border:0;background:transparent;color:#ba1a21;font-size:20px;cursor:pointer}.crm-attachment-empty{padding:9px 0 2px;color:#8a949e;font-size:11px}.crm-calendar-attachments{margin:0 16px 12px}.crm-simple-dialog{display:none;align-items:center;justify-content:center}.crm-simple-dialog.open{display:flex}.crm-trial-shoot-dialog{width:min(480px,calc(100vw - 28px));height:auto!important;max-height:90dvh!important}.crm-trial-shoot-dialog .crm-modal-header h3{margin:0}.crm-trial-shoot-dialog .crm-modal-body{font-size:14px;line-height:1.55}.crm-trial-shoot-dialog .crm-modal-footer{justify-content:flex-end;gap:8px}
@media(max-width:768px){.crm-attachments{margin:10px 0;padding:10px 12px}.crm-calendar-attachments{margin:0 10px 10px}.crm-attachments-head{align-items:center}.crm-attachment-add{white-space:nowrap}.crm-trial-shoot-dialog{width:calc(100vw - 20px)}}

/* AlbomLab CRM v2.1.17 — attachment preview */
.crm-attachment-preview-overlay{z-index:100700!important;align-items:center;justify-content:center;padding:18px}.crm-attachment-preview-overlay.open{display:flex!important}.crm-attachment-preview-modal{width:min(1000px,96vw)!important;height:min(88dvh,900px)!important;max-width:none!important;display:flex!important;flex-direction:column!important;border-radius:12px!important;overflow:hidden}.crm-attachment-preview-modal .crm-modal-header{flex:0 0 auto}.crm-attachment-preview-modal .crm-modal-header h3{margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crm-attachment-preview-body{flex:1 1 auto!important;min-height:0!important;padding:0!important;display:flex;align-items:center;justify-content:center;background:#eef1f4;overflow:auto}.crm-attachment-preview-image{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.crm-attachment-preview-pdf{display:block;width:100%;height:100%;min-height:0;border:0;background:#fff}.crm-attachment-preview-footer{flex:0 0 auto;justify-content:flex-end;gap:8px}.crm-attachment-name{text-decoration:underline;text-decoration-color:rgba(44,62,80,.25);text-underline-offset:2px}
@media(max-width:768px){.crm-attachment-preview-overlay{padding:0!important}.crm-attachment-preview-modal{width:100vw!important;height:100dvh!important;max-height:none!important;border-radius:0!important}.crm-attachment-preview-footer{padding-bottom:max(12px,env(safe-area-inset-bottom))!important}}
\n/* v2.1.17 attachment preview + Android share target */
.crm-attachment-preview-footer{justify-content:center!important;padding:14px 20px max(14px,env(safe-area-inset-bottom))!important}.crm-attachment-preview-save{width:min(420px,90%)!important;min-height:48px!important;font-size:16px!important}.crm-share-target-overlay{z-index:100800!important;align-items:center;justify-content:center;padding:18px}.crm-share-target-modal{width:min(720px,96vw)!important;max-height:min(88dvh,850px)!important;display:flex!important;flex-direction:column!important}.crm-share-target-modal .crm-modal-body{overflow:auto!important}.crm-share-file-name{font-weight:700;margin-bottom:12px;overflow-wrap:anywhere}.crm-share-tabs{display:flex;gap:8px;margin-bottom:12px}.crm-share-tab{flex:1;background:#7d8795!important}.crm-share-tab.active{background:var(--primary)!important}.crm-share-search{width:100%;margin-bottom:12px}.crm-share-target-list{display:flex;flex-direction:column;gap:8px}.crm-share-target-item{width:100%;text-align:left;border:1px solid #d8dee5;background:#fff;border-radius:10px;padding:12px 14px;color:#2c3e50;cursor:pointer}.crm-share-target-item b{display:block}.crm-share-target-item span{display:block;margin-top:3px;font-size:13px;color:#6f7884}.crm-share-target-empty{text-align:center;color:#7d8795;padding:24px 8px}@media(max-width:768px){.crm-share-target-overlay{padding:0!important}.crm-share-target-modal{width:100vw!important;height:100dvh!important;max-height:none!important;border-radius:0!important}.crm-attachment-preview-save{width:90%!important}}

/* AlbomLab CRM v2.1.18 — app install/share settings */
.crm-app-settings-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px;background:#f8f9fa;border:1px solid var(--border);border-radius:8px;margin-bottom:25px}.crm-app-settings-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.crm-app-settings-actions .crm-btn{white-space:nowrap}@media(max-width:640px){.crm-app-settings-card{align-items:stretch;flex-direction:column}.crm-app-settings-actions{display:grid;grid-template-columns:1fr}.crm-app-settings-actions .crm-btn{width:100%}}

/* v2.1.23 — iOS auth keyboard: keep card in visible screen instead of pinning it to document top */
@media(max-width:768px){
 #authModal{top:0!important;bottom:0!important;height:100dvh!important;min-height:100dvh!important;max-height:100dvh!important;align-items:center!important;justify-content:center!important;padding:18px!important}
 html.crm-keyboard-open #authModal{top:0!important;align-items:center!important;justify-content:center!important;padding:12px 18px!important}
 html.crm-keyboard-open #authModal>.crm-auth-card{margin:auto!important;max-height:calc(100dvh - 24px)!important}
}
