:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;color:#192019;background:#f4f6f2;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}.shell{min-height:100vh;display:grid;grid-template-columns:240px 1fr}aside{position:sticky;top:0;height:100vh;background:#182a22;color:#fff;padding:22px 16px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;padding:4px 8px 26px}.brand strong{display:block;font-size:18px}.brand small{opacity:.6}.logo,.login-logo{width:42px;height:42px;border-radius:14px;background:#f09a3e;display:grid;place-items:center;font-weight:800;color:#fff}nav{display:flex;flex-direction:column;gap:4px}nav a{color:#dbe4de;text-decoration:none;padding:10px 12px;border-radius:10px}nav a:hover,nav a.active{background:#284638;color:#fff}.profile{margin-top:auto;border-top:1px solid #ffffff18;padding:16px 8px 0;display:flex;flex-direction:column;gap:4px}.profile span{font-size:12px;opacity:.65}.profile button{margin-top:8px;text-align:left;border:0;background:transparent;color:#ffcfab;padding:0;cursor:pointer}main{padding:26px 32px;min-width:0}header{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}header h1{font-size:28px;margin:0}header p{margin:4px 0 0;color:#6f776f}.toast{background:#fff3df;border:1px solid #ffd29a;padding:10px 14px;border-radius:10px}.card{background:#fff;border:1px solid #e5e9e3;border-radius:16px;padding:18px;margin-bottom:18px;box-shadow:0 2px 8px #16251808}.card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.card h2{font-size:18px;margin:0}.card h3{font-size:15px}.btn{border:1px solid #d8ded8;background:#fff;border-radius:9px;padding:8px 11px;cursor:pointer;color:#26312a;text-decoration:none;display:inline-block}.btn:hover{background:#f6f8f5}.btn.primary{background:#24583f;color:#fff;border-color:#24583f}.btn.danger{background:#9c3d35;color:#fff;border-color:#9c3d35}.btn.link{font-size:13px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:18px}.grid.stats{grid-template-columns:repeat(4,minmax(0,1fr))}.stat{background:#fff;border:1px solid #e5e9e3;border-radius:16px;padding:20px}.stat strong{font-size:30px;display:block}.stat span{color:#6f776f}.toolbar{display:flex;gap:8px;margin-bottom:14px}.toolbar input,.chat-form input{flex:1}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:14px}th{text-align:left;color:#69726b;font-size:12px;font-weight:600;padding:9px;border-bottom:1px solid #e9ede8}td{padding:11px 9px;border-bottom:1px solid #eef1ed;vertical-align:middle}td small{display:block;color:#818981;margin-top:3px}.warn-row{background:#fff8ec}.actions{display:flex;gap:5px;flex-wrap:wrap}.actions .btn{font-size:12px;padding:6px 8px}.status{display:inline-block;padding:4px 8px;border-radius:999px;background:#eef2ee;font-size:12px}.s-отменён,.s-cancelled,.s-заблокирован{background:#f8e9e7;color:#8b332d}.s-выполнено,.s-completed,.s-активен,.s-posted,.s-done{background:#e8f4ed;color:#246140}.empty{padding:28px;text-align:center;color:#7c857e}.muted{color:#7c857e}.attention{display:grid;gap:8px}.attention>div{display:flex;justify-content:space-between;border-bottom:1px solid #eef1ed;padding:8px 0}.attention span{color:#6f776f}.modal-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#0d1610aa;display:grid;place-items:center;padding:20px;z-index:20}.modal{background:#fff;border-radius:16px;padding:20px;max-width:760px;width:100%;max-height:90vh;overflow:auto}.icon{border:0;background:transparent;font-size:24px;cursor:pointer}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid.wide{grid-template-columns:1fr 1fr}.field{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#657067}.field input,input,select{border:1px solid #d9dfd9;border-radius:9px;padding:10px;background:#fff;color:#1b241e;min-width:0}.field input:focus,input:focus,select:focus{outline:2px solid #2d6a4d33;border-color:#2d6a4d}.form-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px;margin-top:6px}.span2{grid-column:1/-1}.item-row{display:grid;grid-template-columns:1fr 100px 110px 30px;gap:8px;margin-bottom:8px}.event-list{display:grid;gap:8px}.event{display:grid;grid-template-columns:170px 1fr 160px;gap:14px;padding:12px;border-bottom:1px solid #eef1ed}.event time{color:#476153}.event div span{display:block;color:#7b847d;margin-top:3px}.event small{text-align:right;color:#8a918c}.chat{height:56vh;overflow:auto;background:#f8faf7;border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:8px}.msg{align-self:flex-start;max-width:70%;background:#fff;border:1px solid #e1e6e0;border-radius:12px 12px 12px 4px;padding:8px 11px}.msg.mine{align-self:flex-end;background:#eaf3ec;border-radius:12px 12px 4px}.msg b{font-size:12px;color:#42624f}.msg p{margin:4px 0}.msg small{font-size:10px;color:#8a918c}.chat-form{display:flex;gap:8px;margin-top:10px}.login-page{min-height:100vh;display:grid;place-items:center;background:linear-gradient(145deg,#162a20,#315b45)}.login-card{width:min(390px,calc(100% - 32px));background:#fff;padding:30px;border-radius:18px;display:flex;flex-direction:column;gap:13px;box-shadow:0 25px 70px #0004}.login-card h1{margin:5px 0 -10px}.login-card p{color:#7b847d;margin:0 0 8px}.login-card label{display:flex;flex-direction:column;gap:6px;font-size:13px}.login-logo{width:52px;height:52px}.error{background:#faecea;color:#8c322b;padding:9px;border-radius:8px;font-size:13px}.center{min-height:100vh;display:grid;place-items:center}@media(max-width:950px){.shell{grid-template-columns:76px 1fr}.brand>div:not(.logo),.profile b,.profile span{display:none}aside{padding:18px 10px}nav a{font-size:0;text-align:center}nav a:first-letter{font-size:16px}.grid.stats{grid-template-columns:1fr 1fr}main{padding:20px}}@media(max-width:650px){.shell{display:block}aside{position:static;height:auto}.brand,.profile{display:none}nav{flex-direction:row;overflow:auto}nav a{font-size:12px;white-space:nowrap}main{padding:14px}.grid,.grid.stats{grid-template-columns:1fr 1fr}.form-grid,.form-grid.wide{grid-template-columns:1fr}.span2{grid-column:auto}.item-row{grid-template-columns:1fr 90px}.event{grid-template-columns:1fr}.event small{text-align:left}}.directory-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.directory{border:1px solid #e7ebe6;border-radius:12px;padding:12px}.directory h3{margin:0;font-size:14px}.dir-item{padding:7px 0;border-bottom:1px solid #f0f2ef;font-size:13px}@media(max-width:800px){.directory-grid{grid-template-columns:1fr}}textarea{font:inherit;border:1px solid #d9dfd9;border-radius:9px;padding:10px;background:#fff;color:#1b241e;min-width:0;resize:vertical}textarea:focus{outline:2px solid #2d6a4d33;border-color:#2d6a4d}.order-item{display:grid;grid-template-columns:minmax(260px,1fr) 130px 130px 34px;gap:10px;align-items:start;margin-bottom:12px;padding:12px;border:1px solid #edf0ec;border-radius:12px;background:#fbfcfa}.order-item .field{min-width:0}.order-item small{font-size:12px;margin-top:2px}.stock-ok{color:#2d6a4d}.stock-bad{color:#a13d34}.order-remove{align-self:end;margin-bottom:4px}@media(max-width:650px){.order-item{grid-template-columns:1fr 1fr}.order-product{grid-column:1/-1}.order-remove{align-self:end}}.filters-toolbar{flex-wrap:wrap;align-items:center}.filters-toolbar>input{min-width:180px}.filters-toolbar select{min-width:180px}.check-filter{display:flex;align-items:center;gap:7px;color:#59645c;font-size:13px;white-space:nowrap}.check-filter input{width:auto}.link-button{border:0;background:transparent;padding:0;color:#24583f;cursor:pointer;text-align:left;font:inherit}.link-button:hover{text-decoration:underline}.client-card{display:grid;gap:16px}.client-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.client-summary>div{border:1px solid #edf0ec;border-radius:10px;padding:10px;background:#fbfcfa}.client-summary span{display:block;font-size:12px;color:#768078;margin-bottom:4px}.client-summary b{font-size:14px;word-break:break-word}.client-section{border-top:1px solid #edf0ec;padding-top:12px}.client-section h3{margin:0 0 10px}.prewrap{white-space:pre-wrap;background:#f8faf7;border-radius:9px;padding:10px;color:#3b463e}.note-form{display:flex;gap:8px;align-items:flex-end}.note-form textarea{flex:1}.notes-list{display:grid;gap:8px;margin-top:10px}.note{border:1px solid #e7ebe6;border-radius:10px;padding:10px;background:#fff}.note small{display:block;color:#818981;margin-top:6px}@media(max-width:650px){.client-summary{grid-template-columns:1fr}.note-form{align-items:stretch;flex-direction:column}}.action-select{min-width:210px;padding:9px 11px;border:1px solid var(--border,#d9dee8);border-radius:10px;background:#fff;font:inherit;cursor:pointer}.action-select:disabled{opacity:.6;cursor:not-allowed}.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.task-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.task-summary>div{border:1px solid #e7ebe6;border-radius:12px;padding:10px 12px;background:#fbfcfa}.task-summary span{display:block;color:#788179;font-size:12px}.task-summary b{display:block;font-size:22px;margin-top:2px}.task-summary .danger-stat{background:#fff0ee;border-color:#f0c7c2}.task-summary .danger-stat b,.task-summary .danger-stat span{color:#9b3029}.task-filters input{min-width:220px}.task-overdue{background:#fff0ee}.task-overdue td{border-bottom-color:#f0d5d1}.task-due-overdue{color:#9b3029;font-weight:700}.task-due-overdue small{color:#a43c34}.readonly-value{border:1px solid #e4e8e3;border-radius:9px;padding:10px;background:#f8faf7;color:#455047}.field textarea{border:1px solid #d9dfd9;border-radius:9px;padding:10px;background:#fff;color:#1b241e;font:inherit;resize:vertical}.field textarea:focus{outline:2px solid #2d6a4d33;border-color:#2d6a4d}@media(max-width:650px){.task-summary{grid-template-columns:1fr 1fr}}.header-actions{display:flex;align-items:center;gap:10px}.notifications-wrap{position:relative}.notification-bell{position:relative;width:42px;height:42px;border:1px solid #dfe5de;border-radius:12px;background:#fff;cursor:pointer;font-size:18px}.notification-bell>span{position:absolute;right:-5px;top:-6px;min-width:19px;height:19px;border-radius:999px;background:#a33b32;color:#fff;font-size:10px;display:grid;place-items:center;padding:0 4px;border:2px solid #f5f7f4}.notifications-panel{position:absolute;right:0;top:50px;width:min(390px,calc(100vw - 32px));background:#fff;border:1px solid #e2e7e1;border-radius:14px;box-shadow:0 18px 50px #1b2b201f;z-index:30;overflow:hidden}.notifications-head{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-bottom:1px solid #edf0ec}.notifications-head button{border:0;background:transparent;color:#24583f;cursor:pointer;font-size:12px}.notifications-list{max-height:420px;overflow:auto}.notification-item{display:flex;width:100%;flex-direction:column;gap:3px;text-align:left;padding:11px 14px;border:0;border-bottom:1px solid #f0f2ef;background:#fff;cursor:pointer}.notification-item:hover{background:#f8faf7}.notification-item.unread{background:#f0f8f2}.notification-item strong{font-size:13px;color:#26312a}.notification-item span{font-size:12px;color:#59645c}.notification-item small{font-size:10px;color:#8a918c}.notifications-empty{padding:24px;text-align:center;color:#7c857e;font-size:13px}.stat.stat-danger{background:#fff3f1;border-color:#efcdc8}.stat.stat-danger strong,.stat.stat-danger span{color:#983b33}.dashboard-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.dashboard-list{display:grid}.dashboard-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid #eef1ed}.dashboard-row:last-child{border-bottom:0}.dashboard-row>div{min-width:0}.dashboard-row b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-row span{display:block;color:#788179;font-size:12px;margin-top:3px}.dashboard-row.overdue{background:#fff3f1;margin:0 -8px;padding:10px 8px;border-radius:8px;border-bottom-color:transparent}.order-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.order-summary>div{border:1px solid #e7ebe6;border-radius:12px;padding:10px 12px;background:#fbfcfa}.order-summary span{display:block;color:#788179;font-size:12px}.order-summary b{display:block;font-size:22px;margin-top:2px}.order-summary .danger-stat{background:#fff0ee;border-color:#f0c7c2}.order-summary .danger-stat b,.order-summary .danger-stat span{color:#9b3029}.order-filters input[type=date]{min-width:135px}.compact-field{display:flex;align-items:center;gap:6px;font-size:12px;color:#69726b}.compact-field input{padding:9px}.order-detail{display:grid;gap:16px}.order-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.order-detail-grid>div{border:1px solid #edf0ec;border-radius:10px;padding:10px;background:#fbfcfa}.order-detail-grid span{display:block;font-size:12px;color:#768078;margin-bottom:4px}.order-detail-grid b{font-size:14px;word-break:break-word}.detail-note{border:1px solid #e7ebe6;border-radius:10px;padding:12px;background:#fbfcfa}.detail-note p{margin:6px 0 0;white-space:pre-wrap}.detail-note.danger-note{background:#fff3f1;border-color:#efcdc8}.calendar-toolbar{align-items:center;flex-wrap:wrap}.calendar-overdue{background:#fff0ee;border-radius:10px}.calendar-overdue time,.calendar-overdue b{color:#9b3029}@media(max-width:900px){.dashboard-columns{grid-template-columns:1fr}.order-summary{grid-template-columns:1fr 1fr}}@media(max-width:650px){header{align-items:flex-start}.order-detail-grid{grid-template-columns:1fr}.notifications-panel{position:fixed;right:14px;top:72px;left:14px;width:auto}.order-summary{grid-template-columns:1fr 1fr}}.management-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.compact-action{min-width:165px}.user-blocked{opacity:.66;background:#fafafa}.permissions-table td:not(:first-child){font-size:13px}.audit-filters{gap:8px}.audit-filters select{min-width:190px}.audit-failed{background:#fff4f2}.audit-details summary{cursor:pointer;color:#24583f;font-size:12px;white-space:nowrap}.audit-details div{margin-top:7px;max-width:420px}.audit-details pre{white-space:pre-wrap;word-break:break-word;margin:6px 0 0;background:#f5f7f4;border-radius:8px;padding:8px;font-size:11px;max-height:180px;overflow:auto}.audit-details small{word-break:break-all}@media(max-width:650px){.management-tabs .btn{flex:1}.compact-action{min-width:150px}}.product-detail{display:grid;gap:16px}.movement-positive{color:#246140}.movement-negative{color:#9b3029}.stock-doc-line{display:grid;grid-template-columns:minmax(260px,1fr) 160px 40px;gap:8px;align-items:center;margin-bottom:8px}.notice{padding:10px 12px;border-radius:10px;background:#fff7e7;border:1px solid #f0dfb5;color:#765b1f;font-size:13px}.calendar-tag{display:block;margin-top:4px;font-size:10px;color:#607166}.event-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:6px}.event-actions button{border:0;background:transparent;padding:0;color:#24583f;font-size:11px;cursor:pointer}.event-actions .danger-link{color:#9b3029}.task-filters select{min-width:165px}@media(max-width:650px){.stock-doc-line{grid-template-columns:1fr 110px 36px}.event-actions{justify-content:flex-start}}.history-list{display:grid;gap:0;border:1px solid #e7ebe6;border-radius:11px;overflow:hidden;background:#fff}.history-row{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:10px 12px;border-bottom:1px solid #eef1ed}.history-row:last-child{border-bottom:0}.history-row b{display:block;font-size:13px}.history-row small{display:block;color:#7a837d;font-size:11px;margin-top:3px}.history-row time{color:#778079;font-size:11px;white-space:nowrap}.detail-actions{flex-wrap:wrap}.detail-actions .btn{white-space:nowrap}@media(max-width:650px){.history-row{flex-direction:column;gap:4px}.history-row time{white-space:normal}.detail-actions .btn{width:100%}}.task-focus,.order-focus,.product-focus{outline:2px solid #e29a45;outline-offset:-2px;background:#fff8e9!important;animation:focusPulse 1.1s ease-out 2}.task-focus.task-overdue{background:#fff0ee!important}@keyframes focusPulse{0%{box-shadow:0 0 #e29a4570}70%{box-shadow:0 0 0 8px #e29a4500}to{box-shadow:none}}.dashboard-button{width:100%;border:0;background:transparent;font:inherit;text-align:left;cursor:pointer;color:inherit}.dashboard-button:hover{background:#f8faf7}.dashboard-button.overdue:hover{background:#fff0ee}.attention-button{display:flex;justify-content:space-between;gap:12px;width:100%;border:0;border-bottom:1px solid #eef1ed;background:transparent;padding:8px 0;text-align:left;cursor:pointer;color:inherit;font:inherit}.attention-button:hover{background:#f8faf7}.attention-button span{color:#6f776f}.dashboard-finance{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.dashboard-finance>div,.analytics-metric{border:1px solid #e7ebe6;border-radius:12px;padding:12px;background:#fbfcfa}.dashboard-finance span,.analytics-metric span{display:block;color:#788179;font-size:12px}.dashboard-finance b,.analytics-metric b{display:block;font-size:20px;margin-top:4px}.analytics-note{background:#f8faf7;border:1px solid #e6ebe5;border-radius:10px;padding:10px 12px;color:#687169;font-size:12px}.analytics-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.analytics-metric b{font-size:24px}.analytics-metric.good{background:#f0f8f2}.money-positive{color:#246140}.money-negative{color:#9b3029}.order-finance-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.order-finance-summary>div{border:1px solid #e7ebe6;border-radius:10px;padding:10px;background:#fbfcfa}.order-finance-summary span{display:block;font-size:11px;color:#788179}.order-finance-summary b{display:block;margin-top:3px;font-size:15px}.analytics-filters{margin-bottom:10px}@media(max-width:900px){.dashboard-finance,.order-finance-summary,.analytics-stats{grid-template-columns:1fr 1fr}}@media(max-width:650px){.dashboard-finance,.analytics-stats,.order-finance-summary{grid-template-columns:1fr}}.notification-tabs{display:flex;gap:6px;padding:8px 10px;border-bottom:1px solid #edf0ec;background:#fbfcfa}.notification-tabs button{border:0;background:transparent;color:#6c766f;padding:7px 9px;border-radius:8px;cursor:pointer;font-size:12px}.notification-tabs button.active{background:#eaf3ec;color:#24583f;font-weight:700}.notification-tabs button span{display:inline-grid;place-items:center;min-width:18px;height:18px;margin-left:4px;padding:0 5px;border-radius:999px;background:#24583f;color:#fff;font-size:10px}.notification-item.read{opacity:.72;background:#fff}.notification-item.read:hover{opacity:1}.task-summary .today-stat{background:#eef6ff;border-color:#cfdef0}.task-summary .today-stat b,.task-summary .today-stat span{color:#2c5f8e}.task-default-note{margin:-4px 0 12px;padding:9px 11px;border-radius:9px;background:#f8faf7;border:1px solid #e7ebe6;color:#6b756e;font-size:12px}.order-status{font-weight:700;border:1px solid transparent;white-space:nowrap}.order-status-new{background:#eaf3ff;color:#2f6195;border-color:#d3e4f7}.order-status-awaiting_payment{background:#fff4d8;color:#866414;border-color:#f2dfaa}.order-status-in_progress{background:#efeaff;color:#5d4898;border-color:#ddd3fb}.order-status-shipping{background:#fff0dd;color:#9a5d18;border-color:#f3d7b5}.order-status-completed{background:#e8f4ed;color:#246140;border-color:#cfe6d8}.order-status-cancellation_pending{background:#fff0e7;color:#9b4e28;border-color:#efd1bf}.order-status-cancelled{background:#f8e9e7;color:#8b332d;border-color:#eccdca}.task-status{font-weight:700;border:1px solid transparent;white-space:nowrap}.task-status-new{background:#eaf3ff;color:#2f6195;border-color:#d3e4f7}.task-status-in_progress{background:#fff2d9;color:#8a5e11;border-color:#edd6a7}.task-status-done{background:#e8f4ed;color:#246140;border-color:#cfe6d8}.task-status-cancelled{background:#f8e9e7;color:#8b332d;border-color:#eccdca}.task-priority{display:inline-block;padding:4px 8px;border-radius:999px;font-size:12px;font-weight:650;border:1px solid transparent}.task-priority-low{background:#f2f4f2;color:#69726b;border-color:#e1e5e1}.task-priority-normal{background:#eef4f7;color:#4b6673;border-color:#dce7eb}.task-priority-high{background:#fff0dd;color:#955c18;border-color:#efd4b1}.task-priority-urgent{background:#f8e9e7;color:#942f28;border-color:#ecc9c5}.task-title-button{border:0;background:transparent;padding:0;margin:0;cursor:pointer;text-align:left;color:inherit;font:inherit}.task-title-button:hover b{text-decoration:underline;color:#24583f}.field small{color:#7d867f;font-size:11px;line-height:1.35}.task-history-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding:0 0 12px;border-bottom:1px solid #edf0ec}.task-history-head>div{display:flex;flex-direction:column;gap:5px}.task-history-head>div:last-child{align-items:flex-end}.task-history-head span,.task-history-head small{color:#6f786f;font-size:12px}.task-history-scroll{margin-top:12px;max-height:390px;overflow:auto;border:1px solid #e5eae4;border-radius:12px;background:#fafbf9}.task-history-entry{padding:12px 14px;border-bottom:1px solid #e9ede8;background:#fff}.task-history-entry:last-child{border-bottom:0}.task-history-entry.history-rescheduled{background:#fffaf0}.task-history-entry.history-status_changed{background:#f6f8ff}.task-history-entry.history-comment{background:#f5faf6}.task-history-meta{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.task-history-meta b{font-size:12px}.task-history-meta span{font-size:11px;color:#7a837c;text-align:right}.task-history-note{margin-top:7px;white-space:pre-wrap;word-break:break-word;font-size:13px;line-height:1.45;color:#303a33}.task-history-add{margin-top:14px}.task-history-add textarea,.form-grid textarea{border:1px solid #d9dfd9;border-radius:9px;padding:10px;background:#fff;color:#1b241e;font:inherit;resize:vertical}.task-history-add textarea:focus,.form-grid textarea:focus{outline:2px solid #2d6a4d33;border-color:#2d6a4d}.task-history-hint{margin-top:6px;color:#7a837c;font-size:11px}.task-history-add .form-actions{margin-top:10px}.readonly-value{min-height:39px;border:1px solid #e2e6e1;background:#f8faf7;border-radius:9px;padding:10px;color:#39443d}@media(max-width:750px){.task-history-head{flex-direction:column}.task-history-head>div:last-child{align-items:flex-start}.task-history-meta{flex-direction:column;gap:3px}.task-history-meta span{text-align:left}.task-history-scroll{max-height:45vh}}.task-status-overdue{background:#f8e9e7;color:#8b332d;border-color:#eccdca}.calendar-task-link{border:0;background:transparent;padding:0;color:inherit;font:inherit;text-align:left;cursor:pointer}.calendar-task-link:hover b{color:#24583f;text-decoration:underline}.workday-head-actions{display:flex;gap:8px;align-items:center}.workday-head-actions select{min-width:220px}.workday-intro{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.workday-intro>div{display:flex;flex-direction:column;gap:4px}.workday-intro>div:last-child{text-align:right}.workday-intro b{font-size:16px;text-transform:capitalize}.workday-intro span{font-size:12px;color:#748078}.workday-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:16px}.workday-stats>div{border:1px solid #e5eae4;background:#fbfcfa;border-radius:12px;padding:12px}.workday-stats span{display:block;color:#778079;font-size:12px}.workday-stats b{display:block;font-size:25px;margin-top:2px}.workday-stats .danger{background:#fff0ee;border-color:#eccbc7}.workday-stats .danger span,.workday-stats .danger b{color:#96372f}.workday-stats .good{background:#edf7f0;border-color:#d3e8da}.workday-stats .good span,.workday-stats .good b{color:#276342}.workday-next{margin-top:12px;padding:10px 12px;border:1px solid #dce8df;border-radius:10px;background:#f5faf6;display:flex;gap:12px;align-items:center}.workday-next>span{font-size:11px;color:#758078;text-transform:uppercase;letter-spacing:.03em}.workday-next button{border:0;background:transparent;padding:0;color:#24583f;cursor:pointer;text-align:left;font:inherit}.workday-columns{display:grid;grid-template-columns:minmax(0,2fr) minmax(320px,1fr);gap:18px}.workday-task-list{display:grid;gap:8px}.workday-task{display:grid;grid-template-columns:86px minmax(220px,1fr) auto;gap:12px;align-items:center;border:1px solid #e8ece7;border-radius:12px;padding:11px 12px;background:#fff}.workday-task-overdue{background:#fff3f1;border-color:#edcfca}.workday-task-closed{opacity:.65;background:#f8faf7}.workday-time{display:flex;flex-direction:column}.workday-time b{font-size:14px}.workday-time span{font-size:10px;color:#a03c34;margin-top:2px}.workday-task-title{border:0;background:transparent;padding:0;font:inherit;font-weight:700;color:#263129;cursor:pointer;text-align:left}.workday-task-title:hover{color:#24583f;text-decoration:underline}.workday-task-meta{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-top:6px}.workday-task-meta>span:not(.status):not(.task-priority){font-size:11px;color:#7a837c}.workday-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.workday-actions .btn{font-size:11px;padding:6px 8px}.workday-upcoming{display:grid;gap:7px}.workday-upcoming>button{border:1px solid #e8ece7;background:#fff;border-radius:10px;padding:10px;display:flex;justify-content:space-between;gap:10px;text-align:left;cursor:pointer;color:inherit;font:inherit}.workday-upcoming>button:hover{background:#f8faf7}.workday-upcoming b,.workday-upcoming span{display:block}.workday-upcoming span{color:#7b847d;font-size:11px;margin-top:3px}.workday-activity-columns{grid-template-columns:1fr 1fr}.workday-activity,.workday-history{max-height:430px;overflow:auto;border:1px solid #e7ebe6;border-radius:11px}.workday-activity>button,.workday-history>button{width:100%;border:0;border-bottom:1px solid #edf0ec;background:#fff;padding:10px 12px;display:flex;justify-content:space-between;gap:12px;text-align:left;color:inherit;font:inherit}.workday-activity>button:not(:disabled):hover,.workday-history>button:hover{background:#f8faf7;cursor:pointer}.workday-activity>button:disabled{cursor:default}.workday-activity>button.failed{background:#fff4f2}.workday-activity b,.workday-activity span,.workday-history b,.workday-history span,.workday-history small{display:block}.workday-activity b,.workday-history b{font-size:12px}.workday-activity span,.workday-history span{font-size:11px;color:#6f7971;margin-top:2px}.workday-history small{font-size:11px;color:#838b85;margin-top:5px;white-space:pre-wrap;max-width:620px;line-height:1.35}.workday-activity time,.workday-history time{font-size:11px;color:#7c857e;white-space:nowrap}@media(max-width:1050px){.workday-columns,.workday-activity-columns{grid-template-columns:1fr}.workday-task{grid-template-columns:80px 1fr}.workday-actions{grid-column:1/-1;justify-content:flex-start;padding-left:92px}}@media(max-width:650px){.workday-head-actions{align-items:stretch;flex-direction:column}.workday-head-actions select{min-width:0}.workday-intro{flex-direction:column}.workday-intro>div:last-child{text-align:left}.workday-stats{grid-template-columns:1fr 1fr}.workday-task{grid-template-columns:1fr}.workday-actions{grid-column:auto;padding-left:0}.workday-time{flex-direction:row;gap:6px;align-items:center}.workday-next{align-items:flex-start;flex-direction:column}}.team-actions{display:flex;gap:7px;flex-wrap:wrap}.team-period{display:flex;justify-content:space-between;gap:14px;align-items:flex-end;flex-wrap:wrap}.team-presets{display:flex;gap:6px;flex-wrap:wrap}.team-presets button{border:1px solid #dce2dc;background:#fff;border-radius:9px;padding:8px 10px;cursor:pointer;color:#536057}.team-presets button.active{background:#24583f;color:#fff;border-color:#24583f}.team-dates{display:flex;gap:8px;flex-wrap:wrap}.team-dates label{display:flex;align-items:center;gap:6px;font-size:12px;color:#6c766f}.team-dates input{padding:8px}.team-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}.team-summary>div,.team-employee-summary>div{border:1px solid #e6ebe5;border-radius:12px;padding:11px 12px;background:#fbfcfa}.team-summary span,.team-employee-summary span{display:block;color:#788179;font-size:11px}.team-summary b,.team-employee-summary b{display:block;font-size:21px;margin-top:3px}.team-summary .good,.team-employee-summary .good{background:#edf7f0;border-color:#d3e8da}.team-summary .danger,.team-employee-summary .danger{background:#fff0ee;border-color:#eccbc7}.team-summary .danger span,.team-summary .danger b,.team-employee-summary .danger span,.team-employee-summary .danger b{color:#96372f}.team-table tbody tr{cursor:pointer}.team-table tbody tr:hover{background:#f8faf7}.team-table tr.selected-row{background:#eef7f1}.team-table tr.team-has-overdue:not(.selected-row){background:#fff9f7}.team-person{border:0;background:transparent;padding:0;text-align:left;color:inherit;cursor:pointer;font:inherit;min-width:170px}.team-person b,.team-person span{display:block}.team-person span{font-size:11px;color:#7b847d;margin-top:3px}.team-rate{display:inline-block;padding:4px 7px;border-radius:999px;background:#f0f3f0;font-weight:700;font-size:12px}.team-rate.good{background:#e8f4ed;color:#246140}.team-rate.bad{background:#f8e9e7;color:#8b332d}.team-overdue{display:inline-grid;min-width:25px;height:25px;place-items:center;padding:0 7px;border-radius:999px;background:#f8e9e7;color:#8b332d;font-weight:800}.team-employee-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}.team-employee-summary b{font-size:18px}.team-last-login{margin-top:11px;color:#748078;font-size:12px}.team-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.team-list,.team-scroll{max-height:430px;overflow:auto;border:1px solid #e7ebe6;border-radius:11px}.team-list>button,.team-scroll>button,.team-scroll>div{width:100%;border:0;border-bottom:1px solid #edf0ec;background:#fff;padding:10px 12px;display:flex;flex-direction:column;align-items:flex-start;gap:3px;text-align:left;color:inherit;font:inherit}.team-list>button{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:12px}.team-list>button:hover,.team-scroll>button:hover{background:#f8faf7;cursor:pointer}.team-list b,.team-list span,.team-scroll b,.team-scroll span,.team-scroll small{display:block}.team-list b,.team-scroll b{font-size:12px}.team-list span,.team-scroll span{font-size:11px;color:#6f7971;margin-top:2px}.team-list time{font-size:11px;color:#8a4a42;white-space:nowrap}.team-completed time{color:#456551}.team-scroll small{font-size:10px;color:#858d87;margin-top:2px}.team-scroll>div.failed{background:#fff4f2}.team-activity-columns .card{min-width:0}@media(max-width:1180px){.team-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.team-employee-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:900px){.team-columns{grid-template-columns:1fr}.team-period{align-items:stretch;flex-direction:column}.team-dates{justify-content:flex-start}}@media(max-width:650px){.team-summary,.team-employee-summary{grid-template-columns:1fr 1fr}.team-dates{flex-direction:column}.team-dates label{justify-content:space-between}.team-dates input{flex:1}.team-actions{justify-content:flex-start}}@media print{aside,header,.team-actions,.team-presets,.team-dates{display:none!important}.shell{display:block}.shell main{padding:0}.card{box-shadow:none;break-inside:avoid}.team-scroll,.team-list{max-height:none;overflow:visible}.team-table{font-size:11px}}.payment-status{font-weight:700;border:1px solid transparent;white-space:nowrap}.payment-status-unpaid{background:#fff0ee;color:#96372f;border-color:#edcfca}.payment-status-partial{background:#fff4d8;color:#866414;border-color:#f2dfaa}.payment-status-paid{background:#e8f4ed;color:#246140;border-color:#cfe6d8}.payment-status-refunded{background:#efeaff;color:#5d4898;border-color:#ddd3fb}.client-status{font-weight:700;border:1px solid transparent}.client-status-new{background:#eaf3ff;color:#2f6195;border-color:#d3e4f7}.client-status-active{background:#e8f4ed;color:#246140;border-color:#cfe6d8}.client-status-vip{background:#fff4d8;color:#866414;border-color:#f2dfaa}.client-status-paused{background:#f1f1ee;color:#62685f;border-color:#dedfd9}.client-status-lost{background:#f8e9e7;color:#8b332d;border-color:#eccdca}.order-summary-wide{grid-template-columns:repeat(6,minmax(0,1fr))}.order-summary .warning-stat{background:#fff8e7;border-color:#f1dfad}.order-summary .warning-stat b,.order-summary .warning-stat span{color:#856413}.client-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}.client-kpi-grid>div{border:1px solid #e7ebe6;border-radius:10px;padding:10px;background:#fbfcfa}.client-kpi-grid span{display:block;font-size:11px;color:#788179}.client-kpi-grid b{display:block;font-size:16px;margin-top:3px}.client-focus,.order-focus{background:#eef7f1}.analytics-presets{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}.analytics-presets button,.analytics-tabs button{border:1px solid #dce2dc;background:#fff;border-radius:9px;padding:8px 10px;cursor:pointer;color:#536057}.analytics-presets button.active,.analytics-tabs button.active{background:#24583f;color:#fff;border-color:#24583f}.analytics-stats-wide{grid-template-columns:repeat(4,minmax(0,1fr))}.payment-kpis{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.payment-kpis>div{border:1px solid #e6ebe5;border-radius:12px;padding:12px;background:#fbfcfa}.payment-kpis span,.payment-kpis small{display:block;color:#788179;font-size:11px}.payment-kpis b{display:block;font-size:23px;margin:3px 0}.payment-kpis .warning{background:#fff8e7;border-color:#f1dfad}.payment-kpis .warning b{color:#856413}.payment-kpis .danger{background:#fff0ee;border-color:#eccbc7}.payment-kpis .danger b{color:#96372f}.analytics-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 14px}.analytics-columns{display:grid;grid-template-columns:1.25fr 1fr;gap:18px}.analytics-bars{display:grid;gap:8px}.analytics-bar-row{display:grid;grid-template-columns:58px minmax(90px,1fr) 110px 62px;gap:9px;align-items:center;font-size:12px}.analytics-bar-row>div{height:10px;border-radius:999px;background:#edf1ed;overflow:hidden}.analytics-bar-row i{display:block;height:100%;background:#4f7d64;border-radius:999px}.analytics-bar-row b{text-align:right;font-size:12px}.analytics-bar-row small{color:#7c857e}.pipeline-grid{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));gap:8px}.pipeline-grid>div{border:1px solid #e7ebe6;border-radius:11px;padding:10px;background:#fbfcfa}.pipeline-grid b{display:block;font-size:24px;margin-top:8px}.pipeline-grid small{display:block;color:#7c857e;margin-top:3px}.dashboard-finance-wide{grid-template-columns:repeat(6,minmax(0,1fr))}.dashboard-finance .finance-warning{background:#fff8e7;border-color:#f1dfad}.dashboard-finance .finance-warning b{color:#856413}.dashboard-finance .finance-danger{background:#fff0ee;border-color:#eccbc7}.dashboard-finance .finance-danger b{color:#96372f}@media(max-width:1200px){.order-summary-wide,.client-kpi-grid,.dashboard-finance-wide{grid-template-columns:repeat(3,minmax(0,1fr))}.pipeline-grid{grid-template-columns:repeat(4,minmax(120px,1fr))}.analytics-stats-wide{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){.analytics-columns{grid-template-columns:1fr}.client-kpi-grid,.order-summary-wide,.dashboard-finance-wide{grid-template-columns:repeat(2,minmax(0,1fr))}.pipeline-grid{grid-template-columns:repeat(2,minmax(120px,1fr))}}@media(max-width:650px){.analytics-stats-wide,.payment-kpis,.client-kpi-grid,.order-summary-wide,.dashboard-finance-wide,.pipeline-grid{grid-template-columns:1fr}.analytics-bar-row{grid-template-columns:48px minmax(70px,1fr) 90px}.analytics-bar-row small{display:none}.client-filters select{min-width:150px}}.procurement-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:14px}.procurement-stat{border:1px solid #e2e8e2;background:#fff;border-radius:12px;padding:12px 14px}.procurement-stat span{display:block;font-size:11px;color:#758077}.procurement-stat b{display:block;font-size:22px;margin-top:4px}.procurement-stat.danger{background:#fff0ee;border-color:#eccbc7}.procurement-stat.danger b{color:#96372f}.procurement-tabs{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:14px}.procurement-tabs button{border:1px solid #dce2dc;background:#fff;border-radius:9px;padding:9px 12px;cursor:pointer;color:#536057;font:inherit;font-weight:700}.procurement-tabs button.active{background:#24583f;color:#fff;border-color:#24583f}.procurement-tabs button span{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;margin-left:5px;border-radius:999px;background:#ffffff38;font-size:10px}.purchase-status{font-weight:700;border:1px solid transparent}.purchase-status-draft{background:#f1f1ee;color:#62685f;border-color:#dedfd9}.purchase-status-ordered{background:#eaf3ff;color:#2f6195;border-color:#d3e4f7}.purchase-status-partial{background:#fff4d8;color:#866414;border-color:#f2dfaa}.purchase-status-received{background:#e8f4ed;color:#246140;border-color:#cfe6d8}.purchase-status-cancelled{background:#f8e9e7;color:#8b332d;border-color:#eccdca}.inventory-status{font-weight:700;border:1px solid transparent}.inventory-status-draft{background:#fff4d8;color:#866414;border-color:#f2dfaa}.inventory-status-posted{background:#e8f4ed;color:#246140;border-color:#cfe6d8}.inventory-status-cancelled{background:#f8e9e7;color:#8b332d;border-color:#eccdca}.supplier-active{background:#e8f4ed;color:#246140}.supplier-archived{background:#f1f1ee;color:#62685f}.muted-row{opacity:.65}.purchase-overdue{background:#fff3f1}.danger-text{display:block;color:#96372f;font-weight:700;margin-top:4px}.purchase-line{display:grid;grid-template-columns:minmax(220px,1.8fr) minmax(110px,.6fr) minmax(130px,.7fr) 38px;gap:8px;align-items:center;margin-bottom:8px}.purchase-line select,.purchase-line input{width:100%}.purchase-form-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px}.purchase-detail h3,.inventory-detail h3{margin:15px 0 8px}.procurement-actions{flex-wrap:wrap;margin-top:14px}.receive-list{display:grid;gap:9px;margin-bottom:12px}.receive-list label{display:grid;grid-template-columns:minmax(0,1fr) 130px;gap:12px;align-items:center;border:1px solid #e5eae4;border-radius:10px;padding:10px}.receive-list span,.receive-list small{display:block}.receive-list small{color:#7a837c;margin-top:2px}.receive-list input{width:100%}.inventory-create{display:flex;gap:8px;align-items:center}.inventory-create input{min-width:260px}.inventory-toolbar{margin:12px 0}.inventory-table-wrap{max-height:56vh;overflow:auto}.inventory-table-wrap input{width:110px}.inventory-diff{background:#fff8e7}.dashboard-procurement{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.dashboard-procurement>div{border:1px solid #e5eae4;border-radius:10px;padding:10px;background:#fbfcfa}.dashboard-procurement span{display:block;font-size:11px;color:#788179}.dashboard-procurement b{display:block;font-size:18px;margin-top:3px}.dashboard-procurement .danger{background:#fff0ee;border-color:#eccbc7}.dashboard-procurement .danger b{color:#96372f}@media(max-width:1200px){.procurement-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:850px){.purchase-line{grid-template-columns:1fr 1fr}.purchase-line select{grid-column:1/-1}.purchase-line .icon{justify-self:end}.inventory-create{align-items:stretch;flex-direction:column}.inventory-create input{min-width:0}.dashboard-procurement{grid-template-columns:1fr}}@media(max-width:600px){.procurement-summary{grid-template-columns:1fr 1fr}.purchase-line{grid-template-columns:1fr}.purchase-line select{grid-column:auto}.receive-list label{grid-template-columns:1fr}.procurement-tabs{display:grid;grid-template-columns:1fr 1fr}}
