:root{--bg-0: #f3f6f7;--bg-1: #d7e4e9;--ink: #1b2a34;--muted: #5f7280;--line: #d0dde4;--panel: #ffffffc9;--accent: #0d5b78;--accent-2: #1f7a8c;--danger: #9b2d2d;--danger-soft: #ffe9e8}*{box-sizing:border-box}body{margin:0;min-height:100vh;min-height:100dvh;color:var(--ink);font-family:Avenir Next,SF Pro Text,Segoe UI,sans-serif;background:radial-gradient(1100px 520px at 12% -5%,#fef8df 0%,transparent 55%),radial-gradient(900px 480px at 96% 4%,#dbe7ff 0%,transparent 54%),linear-gradient(135deg,var(--bg-0),var(--bg-1))}.page-shell{max-width:1920px;margin:0 auto;padding:calc(14px + env(safe-area-inset-top)) calc(18px + env(safe-area-inset-right)) calc(14px + env(safe-area-inset-bottom)) calc(18px + env(safe-area-inset-left));animation:rise .42s ease-out}.page-shell[data-tab=nalozi] .hero{margin-bottom:8px;padding:10px 14px}.page-shell[data-tab=nalozi] .tab-row{margin-bottom:8px}.page-shell[data-tab=nalozi]>.panel{padding:10px;border-radius:14px}.nalozi-bar{display:flex;align-items:center;gap:6px;flex-wrap:nowrap;margin-bottom:6px;overflow-x:auto}.nalozi-bar-secondary{margin-bottom:4px;overflow:visible}.nalozi-bar-left{display:flex;align-items:baseline;gap:10px;margin-right:auto;min-width:0}.nalozi-title{font-size:1.1rem;margin:0;white-space:nowrap}.nalozi-subtitle{font-size:.82rem;color:var(--muted);white-space:nowrap}.nalozi-bar-filters{display:flex;align-items:center;gap:5px;flex-wrap:nowrap}.nalozi-bar-actions{display:flex;align-items:center;gap:4px;margin-left:auto;flex-wrap:nowrap}.nalozi-snapshot-hint{font-size:.78rem;color:var(--muted);white-space:nowrap}.info-banner-compact{margin-bottom:4px;padding:5px 10px;font-size:.82rem}.kpi-inline{white-space:nowrap;font-size:.78rem;color:#3a5568;margin-bottom:4px}.kpi-inline strong{font-weight:700;color:#1a3040}.compact-action.active{border-color:#2c7289;box-shadow:inset 0 0 0 1px #2c7289}.clickable-banner{width:100%;text-align:left;border:1px solid #b8d0bb;border-radius:10px;background:#e9f5ea;color:inherit;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:10px}.clickable-banner .banner-dismiss{font-size:1rem;font-weight:700;opacity:.75}.dashboard-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.dashboard-kpi-grid{display:flex;flex-wrap:nowrap;gap:10px;margin-top:8px;overflow-x:auto}.dashboard-kpi-card{display:flex;flex-wrap:nowrap;white-space:nowrap;align-items:center;gap:6px;border:1px solid #cddbe6;border-radius:10px;background:#f8fbfd;padding:6px 10px;font-size:.82rem}.dashboard-kpi-card small{color:#4f6073}.dashboard-two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px}.dashboard-suggestion-list{margin:0;padding-left:18px;display:grid;gap:6px}.impact-modal{max-width:720px}.impact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:8px 0}.impact-grid>div{border:1px solid #d2dde6;border-radius:10px;padding:8px 10px;background:#f9fcff}.impact-grid p{margin:4px 0}.page-shell[data-tab=nalozi] .orders-table-wrap{max-height:calc(100vh - 250px)}.hero{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:14px;padding:14px 16px;border-radius:16px;border:1px solid #ffffff;background:linear-gradient(135deg,#ffffffb6,#f3f9fc80);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 20px 34px #2237461a}.hero-brand{display:flex;align-items:center;gap:14px}.brand-logo{width:auto;height:56px;max-width:240px;flex:0 0 auto;object-fit:contain;object-position:left center;display:block}.login-shell{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:calc(24px + env(safe-area-inset-top)) calc(24px + env(safe-area-inset-right)) calc(24px + env(safe-area-inset-bottom)) calc(24px + env(safe-area-inset-left))}.login-card{width:min(480px,100%);border-radius:24px;border:1px solid rgba(255,255,255,.7);background:#ffffffeb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 8px 32px #1f3d4d1f,0 2px 8px #1f3d4d14;padding:40px 36px 32px;text-align:center}.login-card h1{font-size:1.6rem;margin:0 0 4px}.login-card .hint{color:var(--muted);font-size:.88rem;margin:0 0 20px}.login-card .form-grid{text-align:left}.login-card .primary{width:100%;padding:12px;font-size:.95rem;border-radius:12px;margin-top:4px}.login-card .ghost{margin-top:12px;font-size:.85rem;color:var(--muted)}.login-card .ghost:hover{color:var(--accent)}.login-logo{width:min(160px,44vw);height:auto;margin:0 auto 28px;display:block}.remember-me{display:flex;flex-direction:row;align-items:center;gap:6px;font-size:.85rem;cursor:pointer}.remember-me input[type=checkbox]{width:auto;margin:0}.eyebrow{margin:0;color:#406173;letter-spacing:.08em;text-transform:uppercase;font-size:.74rem;font-weight:700}.hero h1{margin:6px 0 0;font-size:clamp(1.7rem,2.2vw,2.5rem);line-height:1.08}.hero p{margin:8px 0 0;color:#456474;font-size:.95rem}.hero-actions{display:flex;gap:8px;align-items:flex-end}.hero-actions label{min-width:180px}.tab-row{display:inline-grid;grid-auto-flow:column;gap:6px;padding:5px;margin-bottom:12px;border:1px solid #d5e1e7;border-radius:14px;background:#f2f6f8bf}.tab{border:1px solid transparent;background:transparent;border-radius:10px;padding:9px 13px;color:#3a5564;font-weight:600;transition:all .18s ease;cursor:pointer;white-space:nowrap}.tab:hover{background:#fffc}.tab.active{background:linear-gradient(180deg,#fff,#f8fcff);border-color:#d7e4eb;color:#153547;box-shadow:0 4px 10px #1f3d4d1c}.kpi-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.kpi-card{border:1px solid #dae5ea;border-radius:14px;background:#ffffffbf;padding:4px 10px;display:flex;flex-wrap:nowrap;white-space:nowrap;align-items:center;gap:6px;box-shadow:0 10px 20px #22374612}.kpi-card.warning{background:linear-gradient(160deg,#fff6f4,#fff0ec);border-color:#f2d4ce}.kpi-label{font-size:.78rem;color:#4e6776;text-transform:uppercase;letter-spacing:.05em;font-weight:700}.kpi-card strong{font-size:1.04rem}.panel{border:1px solid #ffffff;border-radius:18px;padding:14px;background:var(--panel);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 22px 36px #1c324111}.panel h2{margin:0 0 12px;font-size:1.08rem}.subhead{margin-top:16px;margin-bottom:8px;font-size:.96rem}.panel.accent{background:linear-gradient(160deg,#f8fefe,#edf8fbcc);border-color:#cfe3ea}.split-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,1fr);gap:14px}.performance-grid{display:flex;flex-direction:column;gap:14px}.performance-log{min-width:0;overflow:hidden}.performance-log-header{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:8px}.performance-log-header h2,.performance-log-header .range-controls{margin:0}.row-new-entry{background:#eff6ff}.row-new-entry td{border-bottom:2px solid var(--accent, #2563eb)}.performance-kpi{width:100%}.kp-summary-bar{display:flex;align-items:center;gap:16px;padding:10px 16px;background:#f0f6fa;border-radius:12px;margin-bottom:10px;flex-wrap:wrap}.kp-stat{display:flex;flex-direction:column;align-items:center;min-width:60px}.kp-stat-value{font-weight:700;font-size:1.1rem;color:#0d5b78}.kp-stat-label{font-size:.72rem;color:#6b7c88;text-transform:uppercase;letter-spacing:.5px}.kp-filters{display:flex;align-items:flex-end;gap:12px;padding:8px 0;flex-wrap:wrap;margin-bottom:8px}.kp-filters label{display:flex;flex-direction:column;font-size:.78rem;color:#6b7c88;gap:2px}.kp-filters select,.kp-filters input[type=date],.kp-filters input[type=text]{padding:4px 8px;border:1px solid #d0dce4;border-radius:6px;font-size:.85rem}.kp-view-toggle{display:flex;gap:0;margin-left:auto}.kp-chart{display:flex;flex-direction:column;gap:1px;max-height:70vh;overflow-y:auto}.kp-chart-row{display:grid;grid-template-columns:110px 1fr 100px 60px 50px;gap:6px;align-items:center;cursor:pointer;padding:3px 8px;border-radius:6px;font-size:.85rem;transition:background .15s}.kp-chart-row:hover{background:#e8f0f5}.kp-chart-row.expanded{background:#dce7ed;font-weight:600}.kp-chart-label{font-size:.82rem;color:#3a4e5c;text-align:right;white-space:nowrap}.kp-chart-track{height:20px;background:#edf5f8;border-radius:5px;overflow:hidden}.kp-chart-bar{height:100%;background:linear-gradient(90deg,#1f7a8c,#0d5b78);border-radius:5px;min-width:2px;transition:width .3s ease}.kp-chart-bar.machine{background:linear-gradient(90deg,#2a7a56,#1a5c3a)}.kp-chart-value{font-size:.82rem;font-weight:600;text-align:right;white-space:nowrap}.kp-chart-pal{font-size:.75rem;color:#6b7c88;text-align:right;white-space:nowrap}.kp-chart-count{font-size:.72rem;color:#90a4ae;text-align:right;white-space:nowrap}.kp-detail{padding:4px 8px 8px 120px;animation:fadeIn .15s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.kp-table{font-size:.82rem}.kp-table th{font-size:.75rem;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap}.kp-table td.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;width:1%}.kp-total-row{border-top:2px solid #0d5b78;background:#f0f6fa}.kp-bulk-bar{display:flex;align-items:center;gap:12px;padding:8px 14px;background:#e8f4e8;border:1px solid #a3d9a3;border-radius:8px;margin-bottom:8px;font-size:.85rem;font-weight:500}.kp-row-sent{opacity:.5;background:#f0f8f0}.kp-sent-badge{color:#2a7a56;font-size:.78rem;font-weight:600}.kp-select-cell{width:30px;text-align:center}.kp-edit-product{width:100%;min-width:120px;padding:2px 4px;border:1px solid #d0dce4;border-radius:4px;font-size:.82rem;background:#fff}.kp-edit-product:focus{border-color:#1f7a8c;outline:none}.kp-shift-badge{display:inline-block;width:20px;height:20px;line-height:20px;text-align:center;border-radius:50%;font-size:.72rem;font-weight:700}.kp-shift-badge.shift-1{background:#e0eef4;color:#0d5b78}.kp-shift-badge.shift-2{background:#fce8d0;color:#8a5a1e}.table-wrap{overflow:auto;border:1px solid #dce7ed;border-radius:14px;background:#ffffffdb}.orders-table-wrap{max-height:calc(100vh - 310px);overflow:auto}.orders-table-wrap table{table-layout:auto}.table-wrap.compact-mobile table{min-width:0}.table-wrap.compact-mobile th,.table-wrap.compact-mobile td{padding:8px 7px;font-size:.84rem}.controls-panel{margin-bottom:12px}.controls-inline{display:flex;gap:6px;align-items:flex-end;flex-wrap:wrap}.import-center{display:grid;gap:12px}.import-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.stat-card{border:1px solid #d4e2ea;border-radius:10px;background:linear-gradient(180deg,#f8fbfd,#f2f7fa);padding:10px 12px;display:grid;gap:3px}.stat-card strong{font-size:.75rem;color:#4d6978;text-transform:uppercase;letter-spacing:.04em}.stat-card span{font-size:1.05rem;font-weight:700;color:#173746}.columns-toolbar{margin-top:0;margin-left:auto;position:relative;display:flex;gap:6px;align-items:center;justify-content:flex-end;flex-wrap:nowrap}.columns-btn{min-width:170px}.columns-btn.active{background:#e7f1f7;border-color:#9db7c6}.columns-popover{position:absolute;top:calc(100% + 8px);right:0;z-index:14;width:min(700px,calc(100vw - 56px));max-height:min(62vh,520px);overflow:auto;border:1px solid #cfdee6;border-radius:12px;background:#fff;box-shadow:0 16px 34px #1f3d4d2e;padding:10px}.columns-popover-head{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:10px}.columns-popover-actions{display:inline-flex;gap:6px;flex-wrap:wrap}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.column-toggle-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:6px}.column-item{display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid #d6e2e8;border-radius:8px;padding:4px 6px;background:#f9fcfe;cursor:grab}.column-item.dragging{opacity:.6}.column-item.drop-target{border-color:#7aa9be;background:#eaf4f9}.column-drag-handle{font-weight:700;color:#6a8594;letter-spacing:.03em;-webkit-user-select:none;user-select:none}.column-item-actions{display:inline-flex;gap:4px}.column-item-actions .icon-btn{width:24px;height:24px;font-size:.8rem}.toggle-inline{display:inline-flex;align-items:center;gap:6px;font-weight:600}th.resizable-th{position:relative;overflow:hidden;text-overflow:ellipsis}.th-resize-handle{position:absolute;right:0;top:0;bottom:0;width:5px;cursor:col-resize;background:transparent;z-index:2}.th-resize-handle:hover,.th-resize-handle.resizing{background:var(--accent);opacity:.4}.table-wrap table td,.table-wrap table th{word-wrap:break-word;overflow-wrap:break-word}tr.dragging{opacity:.5}tr.drop-target td{border-top:2px solid var(--accent)}.compact-form{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));margin-bottom:10px}.compact-form>label{overflow:hidden;min-width:0}.compact-form>label>input,.compact-form>label>select{width:100%;min-width:0;box-sizing:border-box}.compact-form>button[type=submit]{align-self:end;justify-self:start;width:auto;padding:6px 24px}.compact-button{width:fit-content;min-width:140px;justify-self:start;align-self:end}.row-actions{display:flex;gap:6px;flex-wrap:wrap}.table-actions{display:inline-flex;align-items:center;gap:6px;flex-wrap:nowrap}.table-actions input:not([type=checkbox]){min-width:180px}.table-actions input[type=checkbox]{min-width:0}.mb-select{min-width:150px;max-width:220px;font-size:.78rem;height:30px}.icon-btn{width:30px;height:30px;padding:0;display:inline-grid;place-items:center;font-size:.92rem;line-height:1}.grd-btn{width:auto;min-width:38px;padding:0 6px;font-size:.75rem}.mini-badge{display:inline-flex;align-items:center;height:20px;padding:0 6px;border-radius:999px;border:1px solid #d2b989;background:#fff7e6;color:#7a5506;font-size:.68rem;font-weight:700;white-space:nowrap}.mini-badge.danger{border-color:#efb3ad;background:#ffe8e7;color:#8c1f14}button.gap-resize-btn{cursor:pointer;transition:background .15s}button.gap-resize-btn:hover{background:#ffe0b2}button.gap-resize-btn.danger:hover{background:#ffd0cd}.gap-resize-controls{display:inline-flex;align-items:center;gap:2px;margin-left:2px}.gap-shift-btn{min-width:24px;height:20px;padding:0 4px;font-size:.65rem;font-weight:700;border-radius:4px;border:1px solid #b0bec5;background:#e3f2fd;color:#1565c0;cursor:pointer}.gap-shift-btn:hover:not(:disabled){background:#bbdefb}.gap-shift-btn:disabled{opacity:.5;cursor:not-allowed}.chem-loader{position:relative;width:12px;height:14px;display:inline-block;border:2px solid #2b6f8a;border-top:0;border-radius:0 0 3px 3px;overflow:hidden}.chem-loader:before{content:"";position:absolute;left:0;right:0;bottom:0;height:70%;background:linear-gradient(180deg,#7ed9ea,#1f7a8c);animation:chem-wave .9s ease-in-out infinite}.chem-loader:after{content:"";position:absolute;width:3px;height:3px;border-radius:50%;background:#6ec8dc;left:5px;bottom:3px;box-shadow:-3px 2px #6ec8dc,3px 1px #6ec8dc;animation:chem-boil .8s linear infinite}@keyframes chem-wave{0%,to{transform:translateY(1px)}50%{transform:translateY(-1px)}}@keyframes chem-boil{0%{transform:translateY(0);opacity:.8}70%{transform:translateY(-5px);opacity:1}to{transform:translateY(-7px);opacity:0}}.break-actions{justify-content:flex-end}.timeline-grid{display:grid;gap:12px}.timeline-day{border:1px solid #d5e4eb;border-radius:14px;padding:10px;background:#fbfeff}.timeline-day h3{margin:0 0 8px}.timeline-row{border:1px solid #e2edf2;border-radius:10px;padding:8px;background:#fff;margin-bottom:8px}.timeline-meta{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:6px}.timeline-track{position:relative;height:14px;border-radius:999px;background:linear-gradient(90deg,#edf5f8,#dceaf1);overflow:hidden}.timeline-bar{position:absolute;top:0;bottom:0;border-radius:999px;background:linear-gradient(90deg,#1f7a8c,#0d5b78)}.gantt-panel{padding-bottom:0;overflow-x:hidden}.gantt-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:10px}.gantt-toolbar h2{margin:0 auto 0 0}.gantt-toolbar-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.gantt-date-input{font-size:.82rem}.gantt-date-input input{width:130px}.gantt-preset-btns{display:flex;gap:4px}.gantt-zoom-controls{display:flex;align-items:center;gap:4px;background:#f0f5f8;border-radius:6px;padding:2px 4px}.gantt-zoom-controls button{width:28px;height:28px;padding:0;display:flex;align-items:center;justify-content:center;font-size:1.05rem;font-weight:700}.gantt-zoom-label{font-size:.72rem;font-weight:600;color:#4a6572;min-width:38px;text-align:center}.gantt-scroll-wrapper{overflow-x:auto;overflow-y:auto;max-height:75vh;-webkit-overflow-scrolling:touch;border:1px solid #e0eaf0;border-radius:8px}.gantt-container{position:relative}.gantt-header{display:flex;border-bottom:2px solid #c8dce5;position:sticky;top:0;background:#fff;z-index:3}.gantt-label-col{width:120px;min-width:120px;flex-shrink:0;padding:6px 8px;font-size:.78rem;color:#4a6572;position:sticky;left:0;background:#fff;z-index:4}.gantt-timeline-col{flex-shrink:0;position:relative}.gantt-days{display:flex}.gantt-day-header{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4px 0;font-size:.72rem;border-left:1px solid #e8f0f4;color:#4a6572;flex-shrink:0}.gantt-day-header:first-child{border-left:none}.gantt-day-name{font-weight:600;font-size:.68rem;text-transform:uppercase;letter-spacing:.3px}.gantt-shift-labels{display:flex;width:100%;font-size:.58rem;color:#8aa4b0;font-weight:500;letter-spacing:.2px;margin-top:1px}.gantt-shift-labels span{flex:1;text-align:center}.gantt-day-date{font-size:.65rem;color:#7a9aaa}.gantt-weekend{background:#f5f0ec;color:#a08060}.gantt-today-header{background:#e6f3ff;font-weight:700;color:#1a6db0}.gantt-row{display:flex;border-bottom:1px solid #eaf1f5;min-height:48px}.gantt-row:hover{background:#f8fcfe}.gantt-machine-label{font-weight:600;display:flex;align-items:center;font-size:.78rem;color:#1a3a4a;background:#f4f9fb;border-right:2px solid #d5e4eb;z-index:4}.gantt-track{position:relative;width:100%;height:100%;min-height:48px}.gantt-day-stripe{position:absolute;top:0;bottom:0;border-left:1px solid #eef4f7;pointer-events:none}.gantt-day-stripe:first-child{border-left:none}.gantt-shift-divider{position:absolute;left:50%;top:0;bottom:0;width:0;border-left:1px dashed #d0dce3;pointer-events:none}.gantt-weekend-stripe{background:#faf6f2}.gantt-today-stripe{background:#eef6ff}.gantt-today-line{position:absolute;top:0;bottom:0;width:2px;background:#e74c3c;z-index:2;pointer-events:none;opacity:.7}.gantt-bar{position:absolute;top:6px;height:calc(100% - 12px);min-height:28px;border-radius:6px;cursor:pointer;display:flex;align-items:center;overflow:hidden;transition:opacity .15s,box-shadow .15s,transform .12s;box-shadow:0 1px 3px #00000026;z-index:1}.gantt-bar:hover{opacity:.88;box-shadow:0 3px 8px #00000047;transform:scaleY(1.08)}.gantt-bar:active{transform:scaleY(1)}.gantt-bar-selected{outline:3px solid #1a6db0;outline-offset:1px;z-index:2}.gantt-bar-label{padding:0 5px;font-size:.65rem;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 2px rgba(0,0,0,.35)}.gantt-tooltip{position:fixed;z-index:1000;background:#1a2e3a;color:#e8f4f8;padding:10px 14px;border-radius:8px;font-size:.78rem;line-height:1.55;max-width:340px;pointer-events:none;box-shadow:0 4px 16px #0000004d;white-space:pre-line}.gantt-detail-card{position:relative;margin:12px 8px;padding:14px 16px;background:#fafcfe;border:1px solid #d5e4eb;border-radius:10px;box-shadow:0 2px 8px #00000014;animation:ganttSlideUp .2s ease-out}@keyframes ganttSlideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.gantt-detail-close{position:absolute;top:8px;right:10px;background:none;border:none;font-size:1.3rem;color:#7a9aaa;cursor:pointer;line-height:1;padding:4px}.gantt-detail-header{border-left:4px solid;padding-left:10px;margin-bottom:10px;display:flex;align-items:baseline;gap:10px}.gantt-detail-header strong{font-size:1rem;color:#1a3a4a}.gantt-detail-machine{font-size:.78rem;color:#7a9aaa}.gantt-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px 12px}.gantt-detail-row{display:flex;flex-direction:column}.gantt-detail-label{font-size:.68rem;font-weight:600;color:#7a9aaa;text-transform:uppercase;letter-spacing:.3px}.gantt-detail-row>span:last-child{font-size:.82rem;color:#1a3a4a}@media(max-width:768px){.gantt-toolbar{flex-direction:column;align-items:stretch;gap:8px}.gantt-toolbar h2{font-size:1.1rem;margin-right:0}.gantt-toolbar-controls{display:grid;grid-template-columns:1fr 1fr;gap:6px;width:100%;box-sizing:border-box}.gantt-date-input{font-size:.75rem;min-width:0}.gantt-date-input input{width:100%;min-width:0;font-size:.82rem;box-sizing:border-box}.gantt-preset-btns{grid-column:1 / -1;display:flex;justify-content:stretch}.gantt-preset-btns button{flex:1;padding:6px 4px;font-size:.72rem}.gantt-zoom-controls{grid-column:1 / -1;display:flex;justify-content:center}.gantt-zoom-controls button{width:36px;height:36px;font-size:1.2rem}.gantt-toolbar-controls>button{grid-column:1 / -1}.gantt-scroll-wrapper{max-height:60vh;border-radius:6px}.gantt-label-col{width:70px;min-width:70px;padding:4px;font-size:.65rem}.gantt-machine-label{font-size:.65rem;word-break:break-word;line-height:1.2}.gantt-day-name{font-size:.58rem}.gantt-day-date{font-size:.55rem}.gantt-row,.gantt-track{min-height:40px}.gantt-bar{top:4px;height:calc(100% - 8px);min-height:24px;border-radius:4px}.gantt-bar-label{font-size:.55rem;padding:0 3px}.gantt-tooltip{display:none}.gantt-detail-card{margin:8px 0;padding:12px}.gantt-detail-grid{grid-template-columns:1fr;gap:6px}.gantt-detail-header strong{font-size:.95rem}}.warning-cell{background:#fff3e3;color:#8b5a18;font-weight:700}.warning-row td{background:#fff3e3}.row-in-progress td{background:#f6fbff}.row-requested-grd td{background:#fff8e1}.active-row td{background:#e9f4fb}.active-row{cursor:pointer}.status-chip{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:.75rem;font-weight:700;color:#1d5d3a;background:#e3f6eb;border:1px solid #bfe4cc}.status-chip.warning{color:#734f0a;background:#fff4dc;border-color:#ecd19e}.status-chip.danger{color:#8d2b2b;background:#ffe7e7;border-color:#e7bbbb}.status-chip.neutral{color:#3e5968;background:#edf3f6;border-color:#d1dde4}.good-cell{color:#1d7a3a;background:#eaf8ef;font-weight:700}.bad-cell{color:#9b2d2d;background:#ffe9e8;font-weight:700}.grd-changed-cell{background:#e8eaff;color:#3b3fa0;font-weight:700;cursor:help}.comment-editor{resize:vertical;max-height:160px;overflow:auto}table{border-collapse:collapse;width:100%;min-width:920px}th,td{border-bottom:1px solid #e5edf2;text-align:left;padding:9px 10px;vertical-align:top;font-size:.9rem}th{position:sticky;top:0;z-index:1;background:linear-gradient(180deg,#f8fbfd,#eff5f8);color:#314f60}th.th-draggable{cursor:grab}th.th-draggable.dragging{opacity:.65}th.th-draggable.drop-target{box-shadow:inset 0 -2px #4f87a1;background:linear-gradient(180deg,#edf6fb,#e6f2f8)}.th-content{display:flex;align-items:center;justify-content:space-between;gap:6px}.header-filter-btn{width:20px;height:20px;padding:0;border-radius:6px;border:1px solid #c7d7df;background:#f7fbfd;color:#385768;cursor:pointer;line-height:1}.header-filter-btn.active{background:#e1f0f7;border-color:#8db4c6}.th-menu{z-index:9999;min-width:180px;display:grid;gap:6px;padding:8px;border:1px solid #cddbe3;border-radius:10px;background:#fff;box-shadow:0 8px 18px #1f3d4d1f}.th-menu button{width:100%;text-align:left}.th-menu input{min-width:0}tbody tr:nth-child(2n){background:#f9fcfd9f}tbody tr:hover{background:#eef6fbe0}.form-grid{display:grid;gap:10px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px}.master-head{justify-content:flex-start}.section-actions{display:flex;gap:8px;align-items:flex-end;flex-wrap:wrap}.compact-control{width:auto}.compact-select{width:150px}.compact-days{width:74px;padding:5px 7px}.inline-hint{margin:0 0 0 6px;display:inline-flex;align-items:center;color:#486676;font-size:.82rem;white-space:nowrap}.inline-lock{display:inline-flex;align-items:center;gap:6px;width:auto}.compact-action{padding:5px 8px;font-size:.82rem;white-space:nowrap}.import-label{border-radius:10px;border:1px solid #c8d7df;background:linear-gradient(180deg,#fff,#edf3f7);color:#17394a;padding:7px 10px;font-weight:600;cursor:pointer}.import-label input{display:none}label{display:grid;gap:5px;font-size:.86rem;color:#3e5969;font-weight:600}input,select,textarea,button{font:inherit}input,select,textarea{border:1px solid #c2d3dc;border-radius:10px;padding:7px 9px;background:#fbfdff;color:#18303f}input:focus,select:focus,textarea:focus{outline:2px solid #9ecce0;outline-offset:1px}button{border-radius:10px;border:1px solid #c8d7df;background:linear-gradient(180deg,#fff,#edf3f7);color:#17394a;padding:7px 10px;font-weight:600;transition:transform .12s ease,box-shadow .15s ease;cursor:pointer}button:hover{transform:translateY(-1px);box-shadow:0 6px 12px #1f3d4d1f}button:disabled{opacity:.48;transform:none;box-shadow:none;cursor:not-allowed}.primary{border-color:#0f5a76;background:linear-gradient(180deg,var(--accent-2),var(--accent));color:#fff}.ghost{background:#fff;border-color:#beced8}.danger{background:var(--danger-soft);border-color:#f2c6c4;color:var(--danger)}.hint{margin:0 0 10px;color:#476272}.move-buttons,.manual-cell{display:grid;gap:4px}.comment-chip{width:100%;text-align:left;background:#f4f9fc;border:1px dashed #b6ccd8;color:#2f5264}.comment-clamp{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;white-space:normal}.badge{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:24px;border-radius:999px;border:1px solid #b9cfd9;background:#f2f8fb;font-weight:700}.comment-actions{display:flex;gap:6px}.range-controls{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:10px}.format-list{display:grid;gap:8px}.format-head{display:grid;grid-template-columns:1fr 110px 110px 110px auto;gap:8px;font-weight:700;font-size:.8rem;color:#4a6472;margin-bottom:6px}.format-row{display:grid;grid-template-columns:1fr 110px 110px 110px auto;gap:8px;align-items:center;padding:8px;border:1px solid #dbe8ee;border-radius:11px;background:#f8fcff}.format-row>*{min-width:0}.break-row{grid-template-columns:minmax(120px,1fr) 96px 96px auto}.changeover-box{margin-top:12px;padding-top:12px;border-top:1px dashed #b8cfd8;display:grid;gap:8px}.stack-actions{display:grid;gap:6px}.shift-editor{display:grid;gap:5px}.holiday-row{background-color:#fff3cd!important}.holiday-badge{display:block;font-size:.75rem;color:#856404;font-weight:600;line-height:1.2}.error-banner,.info-banner{position:relative;padding-right:32px}.error-banner{margin-bottom:12px;padding:10px 12px;border:1px solid #efb8b8;border-radius:12px;background:#ffe8e6;color:#7f2828;font-weight:600}.banner-dismiss{position:absolute;top:6px;right:8px;background:none;border:none;cursor:pointer;font-size:18px;line-height:1;color:inherit;opacity:.6;padding:0}.banner-dismiss:hover{opacity:1}.info-banner{margin-bottom:12px;padding:10px 12px;border:1px solid #b8d8b8;border-radius:12px;background:#e8f7e7;color:#1f5d1f;font-weight:600;text-align:left}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#15222d66;display:grid;place-items:center;z-index:1001;padding:20px}.modal-card{width:min(780px,100%);max-height:90vh;overflow:auto;border-radius:18px;border:1px solid #d8e6ed;background:#fff;padding:14px;box-shadow:0 24px 40px #14212d55}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.modal-header h3{margin:0}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px;padding-bottom:16px}.inline-new-format{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.inline-new-format input,.inline-new-format select{font-size:.85rem;padding:3px 6px}.inline-new-format button.small{font-size:.8rem;padding:3px 10px}tr.row-dragging{opacity:.35}tr.row-drop-before{box-shadow:inset 0 2px #2563eb}tr.row-drop-after{box-shadow:inset 0 -2px #2563eb}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1180px){.split-grid{grid-template-columns:1fr}.kpi-row{grid-template-columns:repeat(2,minmax(0,1fr))}table{min-width:760px}.import-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.page-shell{padding:calc(12px + env(safe-area-inset-top)) calc(12px + env(safe-area-inset-right)) calc(14px + env(safe-area-inset-bottom)) calc(12px + env(safe-area-inset-left))}.hero{align-items:flex-start;flex-direction:column}.hero-actions{width:100%;flex-wrap:wrap}.hero-brand{flex-direction:column;align-items:flex-start}.brand-logo{width:auto;height:44px;max-width:160px}.tab-row{display:flex;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;width:100%;gap:8px;padding:6px}.tab-row .tab{flex:0 0 auto}.hero-actions label{min-width:0;width:100%}.hero-actions select,.hero-actions input,.hero-actions button{width:100%}.section-head{flex-direction:column;align-items:flex-start}.section-actions{width:100%}.section-actions>*{width:100%}.kpi-row,.break-row{grid-template-columns:1fr}.break-actions{justify-content:flex-start}table{min-width:620px}.orders-table-wrap{max-height:min(64vh,calc(100dvh - 290px))}.controls-inline{width:100%}.controls-inline>*{width:100%}.inline-lock{width:100%;justify-content:space-between}.inline-lock .compact-select,.inline-lock input,.inline-lock select{width:min(58%,220px)}input,select,textarea{font-size:16px}.import-stats{grid-template-columns:1fr}.columns-toolbar{justify-content:space-between}.nalozi-bar-actions{width:100%;margin-left:0;gap:6px}.nalozi-bar-actions>label,.nalozi-bar-actions>button,.nalozi-bar-actions .columns-toolbar{width:100%}.nalozi-bar-actions label select,.nalozi-bar-actions label input,.nalozi-bar-actions button{width:100%}.kpi-inline.mobile-hidden{display:none}.dashboard-kpi-grid{flex-wrap:wrap}.dashboard-two-col,.impact-grid{grid-template-columns:1fr}.columns-btn{width:100%}.columns-popover{left:0;right:0;width:100%;max-height:56vh}.columns-popover-head{align-items:flex-start;flex-direction:column}.banner-dismiss-btn{margin-left:auto;padding:2px 8px;font-size:1.1rem;line-height:1;flex-shrink:0}.info-banner-compact{display:flex;align-items:center;gap:8px}}@media(max-width:430px){table{min-width:560px}th,td{padding:7px;font-size:.82rem}.orders-table-wrap{max-height:calc(100dvh - 270px)}.sub-tab-row{display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;gap:4px;padding-bottom:6px}.sub-tab-row .sub-tab{flex:0 0 auto;font-size:.78rem;padding:6px 10px;white-space:nowrap}.modal-backdrop{padding:8px}.modal-card{border-radius:12px;padding:10px;max-height:92vh}.modal-header h3{font-size:1rem}.form-grid{grid-template-columns:1fr!important;gap:6px}.form-grid label{font-size:.85rem}.panel{padding:10px}.panel h2{font-size:1.1rem}.gantt-toolbar{gap:6px;padding:6px 0}.gantt-toolbar-controls{gap:4px;grid-template-columns:1fr 1fr}.gantt-preset-btns button{padding:6px;font-size:.7rem}.gantt-zoom-controls button{width:32px;height:32px;font-size:1.05rem}.gantt-scroll-wrapper{max-height:55vh}.gantt-label-col{width:60px;min-width:60px;font-size:.6rem;padding:3px}.gantt-row,.gantt-track{min-height:36px}.gantt-bar{top:3px;height:calc(100% - 6px);min-height:22px}.gantt-bar-label{font-size:.5rem}.gantt-day-name{font-size:.52rem}.gantt-day-date{font-size:.48rem}.kpi-card{padding:10px}.kpi-value{font-size:1.4rem}.kpi-label{font-size:.75rem}.dashboard-kpi-grid{gap:6px}.mat-dashboard-bar{gap:10px;font-size:.82rem;padding:6px 8px}.compact-button,.icon-btn{font-size:.78rem;padding:4px 8px}.section-actions{flex-direction:column;gap:6px}.hint{font-size:.82rem}.edi-preview-header{font-size:.85rem}}.sub-tab-row{margin-bottom:12px;border-bottom:1px solid var(--line);padding-bottom:4px}.nabava-group-row{margin-bottom:0;border-bottom:2px solid var(--line)}.nabava-group-row .tab{font-weight:600;font-size:.95em}.nabava-sub-row{margin-top:0;padding-top:4px}.nabava-sub-row .tab{font-size:.88em}.mat-dashboard-bar{display:flex;gap:20px;flex-wrap:wrap;padding:8px 12px;background:var(--bg-1);border-radius:8px;margin-bottom:12px;font-size:.88rem}.low-stock-badge{background:var(--danger-soft);color:var(--danger);border-radius:4px;padding:1px 6px;font-weight:600;font-size:.85em}.low-stock-cell{background:var(--danger-soft)}.row-low-stock td:first-child{border-left:3px solid var(--danger)}.stock-positive{color:#16733a;font-weight:600}.stock-negative{color:var(--danger);font-weight:600}.permissions-panel{display:flex;gap:24px;flex-wrap:wrap;padding:8px 4px;background:var(--bg-alt, #f8f9fb);border-radius:6px}.permissions-section{flex:1 1 220px;min-width:200px}.permissions-section strong{display:block;margin-bottom:4px}.permissions-grid{display:flex;flex-wrap:wrap;gap:4px 12px}.perm-check{display:flex;align-items:center;gap:4px;font-size:.85rem;cursor:pointer;white-space:nowrap}.perm-check input[type=checkbox]{margin:0}.tab-matrix-actions{display:flex;align-items:center;margin-bottom:8px}.tab-matrix-wrap{overflow-x:auto}.tab-matrix-table{border-collapse:collapse;width:100%;font-size:.85rem}.tab-matrix-table th,.tab-matrix-table td{border:1px solid var(--border, #e0e0e0);padding:4px 6px;text-align:center;white-space:nowrap}.tab-matrix-user-col{text-align:left!important;position:sticky;left:0;background:var(--bg, #fff);z-index:2;min-width:140px;font-weight:500}.tab-matrix-table thead .tab-matrix-user-col{background:var(--bg-alt, #f8f9fb);z-index:3}.tab-matrix-role-col{min-width:80px;position:sticky;left:140px;background:var(--bg, #fff);z-index:2}.tab-matrix-table thead .tab-matrix-role-col{background:var(--bg-alt, #f8f9fb);z-index:3}.tab-matrix-tab-col{min-width:60px;max-width:90px}.tab-matrix-header-check{display:flex;flex-direction:column;align-items:center;gap:2px;cursor:pointer;font-size:.78rem;font-weight:600}.tab-matrix-header-check input[type=checkbox]{margin:0}.tab-matrix-cell{text-align:center}.tab-matrix-cell input[type=checkbox]{margin:0;cursor:pointer;width:16px;height:16px}.tab-matrix-admin-row{background:var(--bg-alt, #f8f9fb);opacity:.7}.tab-matrix-admin-row .tab-matrix-user-col,.tab-matrix-admin-row .tab-matrix-role-col{background:var(--bg-alt, #f8f9fb)}.tab-matrix-admin-cell{color:var(--success, #28a745);font-weight:600}.role-badge{display:inline-block;padding:1px 6px;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase}.role-admin{background:#ffe0e6;color:#c0392b}.role-planner{background:#d4edda;color:#155724}.role-power_user{background:#cce5ff;color:#004085}.role-viewer{background:#e2e3e5;color:#383d41}.role-carrier{background:#fff3cd;color:#856404}.status-chip.success{background:#d4edda;color:#155724}.dashboard-alerts-card{background:var(--danger-soft);border:1px solid #f5c6cb;border-radius:8px;padding:12px;margin-bottom:16px}.dashboard-alerts-card .section-head{display:flex;justify-content:space-between;align-items:center}.alert-list{list-style:none;padding:0;margin:4px 0 0;display:flex;flex-wrap:wrap;gap:6px}.alert-list li{font-size:.84rem}.link-button{background:none;border:none;color:var(--accent);cursor:pointer;text-decoration:underline;font:inherit;padding:0}.pa-filters{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0;align-items:end}.pa-filters label{display:flex;flex-direction:column;gap:2px;font-size:.78rem;font-weight:600;color:#3e5969}.pa-filters select{min-width:120px;font-size:.82rem;padding:4px 6px}.pa-table-wrap{max-height:520px;overflow:auto}.pa-pivot-table{border-collapse:separate;border-spacing:0;font-size:.82rem;width:100%}.pa-pivot-table th,.pa-pivot-table td{padding:5px 10px;text-align:right;white-space:nowrap;border-bottom:1px solid #e0e9ef}.pa-pivot-table th{position:sticky;top:0;background:#edf3f7;z-index:2;font-weight:700}.pa-sticky-col{text-align:left!important;position:sticky;left:0;z-index:1;min-width:180px;max-width:260px;overflow:hidden;text-overflow:ellipsis}.pa-pivot-table thead .pa-sticky-col{z-index:3}.pa-pivot-table tbody .pa-sticky-col{background:#fff}.pa-total-col{background:#f0f6fa!important;font-weight:600;border-left:2px solid #c2d3dc}.pa-product-row{font-weight:600}.pa-product-row:hover{background:#e8f0f5}.pa-product-row .pa-sticky-col{background:#f8fbfd}.pa-product-row:hover .pa-sticky-col{background:#e8f0f5}.pa-customer-row{font-weight:400;color:#4a6070;font-size:.79rem}.pa-customer-row:hover{background:#f3f8fb}.pa-indent{padding-left:28px!important}.pa-expand-icon{display:inline-block;width:14px;font-size:.7rem;color:#6d8fa3}.pa-cell-filled{color:#18303f}.pa-cell-empty{color:#c0c8d0}.pa-totals-row{background:#edf3f7;font-weight:700}.pa-totals-row .pa-sticky-col{background:#edf3f7}.pa-pivot-table tfoot td{position:sticky;bottom:0;background:#edf3f7;border-top:2px solid #c2d3dc;z-index:2}.pa-pivot-table tfoot .pa-sticky-col{z-index:3}.mrp-status-shortage{color:#fff;background:#e74c3c;padding:2px 8px;border-radius:4px;font-size:.8em;font-weight:600}.mrp-status-at_risk{color:#333;background:#f39c12;padding:2px 8px;border-radius:4px;font-size:.8em;font-weight:600}.mrp-status-ok{color:#fff;background:#27ae60;padding:2px 8px;border-radius:4px;font-size:.8em;font-weight:600}.row-shortage{background:#ffeaea!important}.row-at-risk{background:#fff8e1!important}.warning-badge{color:#856404;background:#fff3cd;padding:2px 8px;border-radius:4px;font-weight:600}.mrp-suggestion-card{transition:box-shadow .15s}.mrp-suggestion-card:hover{box-shadow:0 2px 8px #0000001a}.mrp-stock-chart{border:1px solid #ddd;border-radius:4px;padding:8px;background:#fafafa}.info-grid{display:grid;grid-template-columns:auto 1fr;gap:4px 12px}.info-grid dt{font-weight:600;color:#555}.info-grid dd{margin:0}.insufficient{background:#ffeaea!important}@media print{body *{visibility:hidden}#radni-nalog-print,#radni-nalog-print *{visibility:visible}#radni-nalog-print{position:absolute;left:0;top:0;width:100%}.tab-row,.section-head,nav,header,.compact-button{display:none!important}}.proc-kpi-row{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap}.proc-kpi-card{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;padding:14px 18px;min-width:140px;flex:1;text-align:center}.proc-kpi-value{font-size:1.6em;font-weight:700;color:#1a1a2e}.proc-kpi-label{font-size:.8em;color:#6c757d;margin-top:2px}.proc-kpi-warn{background:#fff3cd;border-color:#ffc107}.proc-kpi-warn .proc-kpi-value{color:#856404}.proc-kpi-danger{background:#f8d7da;border-color:#f5c6cb}.proc-kpi-danger .proc-kpi-value{color:#721c24}.proc-section{margin-bottom:20px;padding:12px;background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px}.proc-section h3{margin:0 0 10px;font-size:1em;color:#333}.proc-po-status-row{display:flex;gap:8px;flex-wrap:wrap}.proc-po-badge{padding:4px 10px;border-radius:4px;font-size:.85em}.proc-po-draft{background:#e9ecef;color:#495057}.proc-po-sent{background:#cce5ff;color:#004085}.proc-po-ordered{background:#d4edda;color:#155724}.proc-po-partially_received{background:#fff3cd;color:#856404}.proc-po-received{background:#d1e7dd;color:#0f5132}.proc-po-cancelled{background:#f8d7da;color:#721c24}.proc-alerts-list{display:flex;flex-direction:column;gap:6px}.proc-alert{padding:8px 12px;border-radius:4px;font-size:.9em}.proc-alert-critical{background:#f8d7da;border-left:4px solid #dc3545;color:#721c24}.proc-alert-warning{background:#fff3cd;border-left:4px solid #ffc107;color:#856404}.proc-alert-info{background:#cce5ff;border-left:4px solid #0d6efd;color:#004085}.proc-form-card{background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;padding:14px;margin-bottom:16px}.proc-form-card h4{margin:0 0 10px}.danger-button{color:#dc3545!important;border-color:#dc3545!important}.danger-button:hover{background:#f8d7da!important}.edi-preview{background:var(--surface, #f8f9fa);border:1px solid var(--border, #dee2e6);border-radius:6px;padding:16px;margin-top:12px}.edi-preview-header{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:6px 16px;margin-bottom:12px;font-size:.875rem}.edi-warnings{background:#fff3cd;border:1px solid #ffc107;border-radius:4px;padding:8px 12px;margin-bottom:12px}.edi-warnings .warning-item{font-size:.85rem;color:#856404}.edi-xml-preview{background:var(--surface, #f8f9fa);border:1px solid var(--border, #dee2e6);border-radius:6px;padding:16px}.xml-content{background:#1e1e2e;color:#cdd6f4;padding:16px;border-radius:6px;overflow-x:auto;font-size:.8rem;line-height:1.5;max-height:500px;overflow-y:auto;white-space:pre-wrap;word-break:break-all}.schedule-table{border-collapse:collapse;min-width:1600px}.schedule-table th,.schedule-table td{border:1px solid #d0dae1;padding:4px 6px;vertical-align:top}.schedule-table thead th{background:#eaf1f5;font-size:.82rem;white-space:nowrap}.schedule-separator td{background:#c0d0d8;height:3px;padding:0;border:none}.schedule-cell{display:flex;flex-wrap:wrap;gap:3px;min-height:28px;position:relative}.worker-chip{display:inline-flex;align-items:center;gap:2px;padding:1px 6px;border-radius:5px;background:#e3f1e8;border:1px solid #b8d8c2;font-size:.74rem;font-weight:600;color:#1d5d3a;white-space:nowrap;line-height:1.4}.worker-chip .chip-remove{width:14px;height:14px;padding:0;border:none;background:transparent;color:#9b2d2d;font-size:.85rem;line-height:1;cursor:pointer;border-radius:3px;min-width:0;display:inline-flex;align-items:center;justify-content:center}.worker-chip .chip-remove:hover{background:#ffe0de;transform:none;box-shadow:none}.add-worker-btn{width:20px;height:20px;padding:0;border-radius:5px;font-size:.85rem;line-height:1;min-width:0;cursor:pointer;border:1px dashed #aec4cf;background:transparent;color:#5a8fa0}.add-worker-btn:hover{background:#eaf1f5;transform:none;box-shadow:none}.copy-prev-btn{border-style:solid;border-color:#b8d8b8;color:#2d7a2d;font-size:.75rem}.copy-prev-btn:hover{background:#e3f1e8}.worker-picker{position:absolute;top:100%;left:0;z-index:20;min-width:160px;max-height:220px;overflow-y:auto;background:#fff;border:1px solid #cddbe3;border-radius:8px;box-shadow:0 8px 18px #1f3d4d1f;display:flex;flex-direction:column;gap:1px;padding:4px}.worker-option{width:100%;text-align:left;padding:4px 8px;font-size:.78rem;border:none;background:transparent;border-radius:5px;cursor:pointer;min-width:0}.worker-option:hover{background:#eef6fb;transform:none;box-shadow:none}.crew-speed-badge{font-size:.7rem;padding:1px 5px;margin-top:3px;border-radius:4px;background:#e0f2fe;color:#0369a1;text-align:center;white-space:nowrap;font-weight:600}.crew-speed-unknown{background:#fef3c7;color:#92400e}.sim-mode-active{border:2px solid #f59e0b}.sim-banner{background:#fef3c7;color:#92400e;text-align:center;padding:6px 12px;font-weight:600;border-bottom:1px solid #f59e0b;border-radius:14px 14px 0 0;margin:-14px -14px 10px}.sbp-price-bar{display:flex;align-items:stretch;gap:10px;padding:10px 14px;background:#f0f7ff;border:1px solid #c4ddf6;border-radius:6px;margin-bottom:10px;font-size:13px;flex-wrap:wrap}.sbp-price-card{background:#fff;border:1px solid #d4e4f7;border-radius:6px;padding:6px 14px;min-width:120px;text-align:center}.sbp-price-card-title{font-size:11px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px}.sbp-price-value{font-weight:700;font-size:16px;color:#1a56db}.sbp-price-sub{font-size:11px;color:#64748b;margin-top:1px}.sbp-price-inputs{display:flex;align-items:center;gap:8px;margin-left:auto;flex-wrap:wrap}.sbp-price-details{color:#64748b;font-size:12px}.sbp-price-time{color:#94a3b8;font-size:11px}.sbp-price-loading{color:#94a3b8;font-style:italic}.benga-date-range{display:flex;gap:8px;align-items:center;margin-bottom:10px;flex-wrap:wrap}.benga-date-range label{display:inline-flex;align-items:center;gap:4px;font-size:.85rem}.benga-table-wrap{max-height:calc(100vh - 280px)}.benga-calendar-table{font-size:.85rem}.table-wrap thead th{position:sticky;top:0;z-index:2;background:var(--surface, #fff)}.benga-calendar-table td,.benga-calendar-table th{white-space:nowrap}.benga-calendar-table th{resize:horizontal;overflow:hidden}.benga-subrow td{border-bottom:1px dashed #e4eaef}.benga-today-row td{background:#e8f5e9}.benga-drop-target td{background:#dbeafe!important;box-shadow:inset 0 -2px #4f87a1}.benga-editing-row td{background:#fdf8e3}.benga-editing-row input,.benga-editing-row select{min-width:60px;font-size:.82rem}.benga-arrival-cell{cursor:pointer;border-bottom:1px dashed transparent}.benga-arrival-cell:hover{background:#eaf4f9}.benga-drag-handle{cursor:grab;font-weight:700;color:#6a8594;letter-spacing:.03em;-webkit-user-select:none;user-select:none}.benga-drag-handle:active{cursor:grabbing}.benga-subtotal-row{border-top:2px solid #7aa9be;background:#f0f6fa}.benga-subtotal-row td{font-size:.85rem}.benga-capacity-exceeded{background:#fee2e2!important;color:#dc2626;font-weight:600}.benga-manual-editable{cursor:pointer;transition:background .15s}.benga-manual-editable:hover{background:#eaf4f9}.benga-manual-overridden{background:#fef3c7!important;font-weight:600;position:relative}.benga-manual-overridden:after{content:"";position:absolute;top:2px;right:2px;width:6px;height:6px;border-radius:50%;background:#f59e0b}.benga-manual-editing{background:#fdf8e3;padding:2px 4px}.benga-manual-editing input{min-width:60px;font-size:.82rem}.benga-manual-drop-target td{background:#dbeafe!important;box-shadow:inset 0 -2px #4f87a1}.benga-manual-drag-source td{opacity:.5}.benga-manual-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:8px}.benga-manual-recalc-pending{font-size:.8rem;color:#92400e;background:#fef3c7;padding:2px 8px;border-radius:4px;animation:benga-pulse-fade 1s ease-in-out infinite}@keyframes benga-pulse-fade{0%,to{opacity:1}50%{opacity:.5}}.benga-manual-overrides-count{font-size:.8rem;color:var(--muted)}.benga-manual-legend-dot{display:inline-block;width:10px;height:10px;border-radius:2px;background:#fef3c7;border:1px solid #f59e0b;margin-right:4px;vertical-align:middle}tr[draggable=true]{cursor:grab}tr[draggable=true]:active{cursor:grabbing}.shift-mismatch{background:#fff3cd!important;border:1px solid #ffc107!important}.shift-not-planned{background:#f3f4f6!important}.unallocated-chip{background:#fef2f2!important;color:#991b1b!important;border-color:#fecaca!important;cursor:default}.unallocated-panel h4{font-size:.9rem;color:var(--muted, #6b7280)}@media print{body *{visibility:hidden}.panel:has(.schedule-table),.panel:has(.schedule-table) *{visibility:visible}.panel:has(.schedule-table){position:absolute;left:0;top:0;width:100%}.section-head button,.add-worker-btn,.copy-prev-btn,.chip-remove,.schedule-warnings,.worker-picker,.crew-speed-badge,button.ghost,button.primary,button.danger,.unallocated-panel{display:none!important}.schedule-table{font-size:9pt;min-width:auto!important}.schedule-table th,.schedule-table td{padding:3px 4px}.worker-chip,.unallocated-chip{font-size:8pt;padding:1px 4px}.table-wrap{overflow:visible!important}@page{size:landscape;margin:10mm}}.eval-product-picker{border:1px solid #dee2e6;border-radius:6px;padding:8px;background:#f8f9fa}.eval-product-list{max-height:200px;overflow-y:auto;display:flex;flex-wrap:wrap;gap:4px 16px}.eval-product-item{display:flex;align-items:center;gap:4px;font-size:.9em;cursor:pointer;white-space:nowrap}.eval-surplus{color:#155724;background:#d4edda}.eval-shortage{color:#721c24;background:#f8d7da}.eval-suggested{color:#004085;background:#cce5ff}.eval-product-header{display:flex;align-items:center;gap:12px;margin-bottom:8px;flex-wrap:wrap}.eval-product-header h3{margin:0}.eval-stage-select{padding:4px 8px;border-radius:4px;font-size:.85em;font-weight:600;border:1px solid #ccc;cursor:pointer}.eval-stage-pregovori{background:#e9ecef;color:#495057;border-color:#adb5bd}.eval-stage-cekamo_definiranje{background:#fff3cd;color:#856404;border-color:#ffc107}.eval-stage-cekamo_dolazak{background:#cce5ff;color:#004085;border-color:#80bdff}.eval-stage-u_planu{background:#d4edda;color:#155724;border-color:#28a745}.eval-stage-zavrseno{background:#d1d1d1;color:#333;border-color:#999}.eval-stage-section{margin:8px 0;padding:10px;background:#fff;border:1px solid #e0e0e0;border-radius:6px}.eval-category-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:8px;margin-top:8px}.eval-category-card{padding:8px;border:1px solid #dee2e6;border-radius:4px;background:#f8f9fa}.eval-category-label{display:block;font-weight:600;font-size:.9em;margin-bottom:4px}.eval-category-label input{display:block;width:100%;margin-top:4px;font-weight:400}.eval-category-materials{font-size:.8em;color:#666;display:block;margin-top:4px}.ai-chat-fab{position:fixed;bottom:24px;right:24px;width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #2563eb66;z-index:9999;transition:transform .2s,box-shadow .2s,opacity .2s}.ai-chat-fab:hover{transform:scale(1.1);box-shadow:0 6px 24px #2563eb80}.ai-chat-fab-hidden{opacity:0;pointer-events:none;transform:scale(.8)}.ai-chat-panel{position:fixed;bottom:24px;right:24px;width:400px;max-width:calc(100vw - 32px);height:560px;max-height:calc(100vh - 48px);background:#fff;border-radius:16px;box-shadow:0 8px 40px #0000002e;z-index:10000;display:flex;flex-direction:column;overflow:hidden;animation:ai-chat-slide-up .25s ease-out}@keyframes ai-chat-slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.ai-chat-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff;flex-shrink:0}.ai-chat-header-left{display:flex;align-items:center;gap:10px}.ai-chat-header-left strong{font-size:.95rem}.ai-chat-header-actions{display:flex;align-items:center;gap:6px}.ai-chat-close,.ai-chat-clear{background:none;border:none;color:#fffc;cursor:pointer;font-size:1.4rem;line-height:1;padding:2px 4px;border-radius:4px;display:flex;align-items:center}.ai-chat-close:hover,.ai-chat-clear:hover{color:#fff;background:#ffffff26}.ai-provider-select{font-size:.75rem;padding:2px 6px;border-radius:6px;border:1px solid rgba(255,255,255,.4);background:#ffffff26;color:#fff;cursor:pointer}.ai-provider-select option{color:#333;background:#fff}.ai-provider-badge{font-size:.7rem;padding:2px 8px;border-radius:10px;background:#fff3}.ai-chat-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px}.ai-chat-welcome{text-align:center;color:#64748b;padding:20px 8px}.ai-chat-welcome p{margin:4px 0;font-size:.88rem}.ai-chat-suggestions{display:flex;flex-direction:column;gap:6px;margin-top:16px}.ai-chat-suggestion{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;padding:8px 12px;font-size:.82rem;cursor:pointer;text-align:left;color:#334155;transition:background .15s}.ai-chat-suggestion:hover{background:#e2e8f0}.ai-chat-msg{max-width:88%;animation:ai-msg-in .2s ease-out}@keyframes ai-msg-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.ai-chat-msg-user{align-self:flex-end}.ai-chat-msg-user .ai-chat-msg-content{background:#2563eb;color:#fff;border-radius:14px 14px 4px;padding:10px 14px;font-size:.85rem;line-height:1.45}.ai-chat-msg-assistant{align-self:flex-start}.ai-chat-msg-assistant .ai-chat-msg-content{background:#f1f5f9;color:#1e293b;border-radius:14px 14px 14px 4px;padding:10px 14px;font-size:.85rem;line-height:1.55}.ai-chat-msg-assistant .ai-chat-msg-content strong{font-weight:600}.ai-chat-typing{display:flex;gap:4px;padding:10px 14px;background:#f1f5f9;border-radius:14px 14px 14px 4px}.ai-chat-typing span{width:7px;height:7px;background:#94a3b8;border-radius:50%;animation:ai-typing-bounce 1.2s infinite}.ai-chat-typing span:nth-child(2){animation-delay:.15s}.ai-chat-typing span:nth-child(3){animation-delay:.3s}@keyframes ai-typing-bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-6px)}}.ai-chat-no-provider{padding:10px 16px;font-size:.78rem;color:#dc2626;background:#fef2f2;text-align:center}.ai-chat-input-area{display:flex;align-items:flex-end;gap:8px;padding:12px 16px;border-top:1px solid #e2e8f0;flex-shrink:0}.ai-chat-input{flex:1;border:1px solid #cbd5e1;border-radius:10px;padding:8px 12px;font-size:.85rem;resize:none;max-height:80px;line-height:1.4;font-family:inherit;outline:none;transition:border-color .15s}.ai-chat-input:focus{border-color:#2563eb}.ai-chat-send{background:#2563eb;color:#fff;border:none;border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .15s}.ai-chat-send:hover:not(:disabled){background:#1d4ed8}.ai-chat-send:disabled{opacity:.4;cursor:not-allowed}@media(max-width:480px){.ai-chat-panel{width:calc(100vw - 16px);height:calc(100vh - 80px);bottom:8px;right:8px;border-radius:12px}.ai-chat-fab{bottom:16px;right:16px;width:48px;height:48px}}.oc-modal{width:min(900px,95%)!important;max-height:95vh}.oc-options{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;padding:10px 12px;background:#f4f9fc;border-radius:10px;margin-bottom:12px}.oc-options strong{margin-right:4px}.oc-email-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:8px 12px;background:#e3f2fd;border:1px solid #90caf9;border-radius:6px;margin-bottom:10px}.oc-email-bar label{display:flex;align-items:center;gap:6px;font-size:.85em;font-weight:600}.oc-email-bar input[type=email]{padding:4px 8px;border:1px solid #90caf9;border-radius:4px;font-size:.9em;min-width:220px}.oc-editable-fields{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:flex-start;padding:10px 12px;background:#eef5fa;border-radius:10px;margin-bottom:12px}.oc-editable-fields label{display:flex;flex-direction:column;gap:2px;font-size:.82em;font-weight:600;color:#2f5264}.oc-editable-fields input,.oc-editable-fields select,.oc-editable-fields textarea{font-size:.95em;padding:4px 6px;border:1px solid #b6ccd8;border-radius:6px}.oc-editable-fields .oc-note-label{flex-basis:100%}.oc-editable-fields textarea{width:100%;resize:vertical}.oc-lines-editor{margin-bottom:12px}.oc-lines-editor strong{display:block;margin-bottom:6px}.oc-lines-editor table{width:100%;border-collapse:collapse;margin-bottom:6px}.oc-lines-editor th,.oc-lines-editor td{padding:4px 6px;border:1px solid #d8e6ed;font-size:.85em}.oc-lines-editor th{background:#f4f9fc;font-weight:600}.oc-lines-editor input{border:1px solid #d8e6ed;border-radius:4px;padding:3px 5px;font-size:.9em}.oc-preview{border:1px solid #d8e6ed;border-radius:10px;padding:20px;background:#fff}.oc-preview .oc-parties{display:flex;justify-content:space-between;margin-bottom:20px}.oc-preview .oc-party{width:45%}.oc-preview .oc-party-title{font-weight:700;font-size:.75em;color:#555;margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}.oc-preview .oc-party-name{font-weight:700;font-size:.95em;margin-bottom:2px}.oc-preview .oc-party-line{font-size:.82em;color:#444}.oc-preview .oc-dest-contact{font-size:.78em;color:#555;margin-top:2px}.oc-preview .oc-doc-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px;border-bottom:2px solid #333;padding-bottom:10px}.oc-preview .oc-ref-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px 24px;margin-bottom:16px;padding:8px 10px;background:#f9f9f9;border:1px solid #ddd;border-radius:4px}.oc-preview .oc-ref-grid .label{font-weight:600;color:#555;font-size:.82em}.oc-preview .oc-ref-grid .value{font-size:.9em}.oc-preview .oc-contact{margin-top:16px;font-size:.82em;color:#555;border-top:1px solid #ddd;padding-top:8px}.oc-preview .oc-contact strong{color:#333}.oc-preview .oc-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px;border-bottom:2px solid #333;padding-bottom:10px}.oc-preview .oc-title{font-size:18px;font-weight:700}.oc-preview .oc-meta{text-align:right}.oc-preview .oc-meta div{margin-bottom:3px}.oc-preview .oc-section{margin-bottom:14px}.oc-preview .oc-section-title{font-weight:700;font-size:13px;margin-bottom:5px;border-bottom:1px solid #ccc;padding-bottom:2px}.oc-preview .oc-grid{display:grid;grid-template-columns:160px 1fr;gap:2px 12px}.oc-preview .oc-note{margin-top:16px;padding:8px 10px;background:#f9f9f9;border:1px solid #ddd;border-radius:4px;font-size:.85em;white-space:pre-wrap}.oc-preview .oc-grid .label{font-weight:600;color:#555}.oc-preview table{width:100%;border-collapse:collapse;margin-top:6px}.oc-preview th,.oc-preview td{border:1px solid #ccc;padding:5px 8px;text-align:left;font-size:.9em}.oc-preview th{background:#f5f5f5;font-weight:600}.oc-preview td.number{text-align:right}.oc-preview .oc-total{text-align:right;font-size:14px;font-weight:700;margin-top:6px}.oc-preview .oc-footer{margin-top:30px;display:flex;justify-content:space-between}.oc-preview .oc-signature{width:180px;border-top:1px solid #333;padding-top:4px;text-align:center;font-size:11px}.article-id-modal{width:900px;max-width:98vw;max-height:95vh;display:flex;flex-direction:column}.article-id-body{overflow-y:auto;padding:16px 20px;flex:1;display:flex;flex-direction:column;gap:0}.aid-section{border:1px solid #d0d7e3;border-radius:6px;margin-bottom:12px;overflow:hidden}.aid-section-title{background:#1a3a5c;color:#fff;font-weight:700;font-size:12px;letter-spacing:.04em;padding:5px 12px}.aid-section>.aid-grid,.aid-section>.table-wrap,.aid-section>button,.aid-section>p{padding:10px 12px}.aid-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px}.aid-grid label{display:flex;flex-direction:column;font-size:11px;font-weight:600;color:#444;gap:3px}.aid-grid label input[type=text],.aid-grid label input[type=date],.aid-grid label input[type=number],.aid-grid label input:not([type=checkbox]){font-size:13px;padding:4px 7px;border:1px solid #ccc;border-radius:4px;width:100%;box-sizing:border-box}.aid-grid .span2{grid-column:1 / -1}.aid-subsection{display:flex;flex-direction:column;gap:6px;padding:6px;background:#f8f9fb;border-radius:5px;border:1px solid #e2e8f0}.aid-subsection label{display:flex;flex-direction:column;font-size:11px;font-weight:600;color:#444;gap:2px}.aid-subsection label input:not([type=checkbox]){font-size:13px;padding:4px 7px;border:1px solid #ccc;border-radius:4px}.aid-section .table-wrap table td input{border:1px solid #ccc;border-radius:3px;padding:2px 5px;font-size:12px}.confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:9999}.confirm-dialog{background:var(--bg-0, #fff);border-radius:8px;padding:24px;min-width:320px;max-width:440px;box-shadow:0 8px 32px #0003}.confirm-dialog h3{margin:0 0 8px;font-size:1.05em}.confirm-dialog p{margin:0 0 20px;font-size:.92em;opacity:.85;line-height:1.5}.confirm-actions{display:flex;justify-content:flex-end;gap:8px}.confirm-actions button.danger{background:#c62828;color:#fff;border:none;padding:6px 16px;border-radius:4px;cursor:pointer}.confirm-actions button.danger:hover{background:#b71c1c}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent, #1a73e8);outline-offset:2px}.empty-state{text-align:center;padding:32px 16px;opacity:.65;font-size:.92em}.empty-state p{margin:0 0 12px}.order-comment-panel{position:fixed;right:0;top:0;bottom:0;width:380px;max-width:100vw;background:#fff;border-left:1px solid var(--line);box-shadow:-4px 0 24px #00000014;display:flex;flex-direction:column;z-index:1200;animation:slideInRight .2s ease-out}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.comment-panel-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--line);background:var(--bg-0);flex-shrink:0}.comment-panel-title{display:flex;align-items:center;gap:8px;font-weight:600;font-size:.92rem;color:var(--ink)}.comment-close-btn{background:none;border:none;cursor:pointer;padding:4px;border-radius:4px;color:var(--muted);display:flex;align-items:center}.comment-close-btn:hover{background:var(--bg-1);color:var(--ink)}.comment-list{flex:1;overflow-y:auto;padding:12px 14px;display:flex;flex-direction:column;gap:10px}.comment-empty{text-align:center;color:var(--muted);padding:32px 8px;font-size:.88rem}.comment-item{display:flex;gap:10px;padding:10px 12px;border-radius:10px;background:var(--bg-0);transition:opacity .15s}.comment-item.comment-resolved{opacity:.5}.comment-item.comment-resolved:hover{opacity:.8}.comment-avatar{flex-shrink:0;width:32px;height:32px;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;letter-spacing:.5px}.comment-body{flex:1;min-width:0}.comment-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:3px}.comment-author{font-weight:600;font-size:.82rem;color:var(--ink)}.comment-time{font-size:.72rem;color:var(--muted)}.comment-field-tag{font-size:.68rem;padding:1px 6px;border-radius:4px;background:var(--accent);color:#fff;font-weight:500}.comment-text{font-size:.85rem;line-height:1.45;color:var(--ink);word-break:break-word}.comment-mention{color:var(--accent);font-weight:600;background:#e0f2fe;padding:0 3px;border-radius:3px}.comment-actions{display:flex;gap:6px;margin-top:5px}.comment-action-btn{background:none;border:none;cursor:pointer;font-size:.73rem;color:var(--muted);display:flex;align-items:center;gap:3px;padding:2px 6px;border-radius:4px;transition:all .12s}.comment-action-btn:hover{background:var(--bg-1);color:var(--ink)}.comment-action-btn.resolved{color:#059669}.comment-action-btn.danger:hover{color:var(--danger)}.comment-action-btn:disabled{opacity:.4;cursor:default;pointer-events:none}.comment-resolved-tag{font-size:.65rem;padding:1px 5px;border-radius:3px;background:#d1fae5;color:#065f46;font-weight:600}.comment-edit-area{margin-top:4px}.comment-edit-actions{display:flex;gap:6px;margin-top:4px}.comment-textarea.compact{padding:6px 10px;font-size:.82rem;border-radius:6px}.comment-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:commentSpin .6s linear infinite}@keyframes commentSpin{to{transform:rotate(360deg)}}.comment-input-area{display:flex;align-items:flex-end;gap:8px;padding:12px 14px;border-top:1px solid var(--line);background:#fff;flex-shrink:0}.comment-input-wrapper{flex:1;position:relative}.comment-textarea{width:100%;resize:none;border:1px solid var(--line);border-radius:8px;padding:8px 12px;font-size:.85rem;font-family:inherit;line-height:1.4;background:var(--bg-0);color:var(--ink);transition:border-color .15s;min-height:36px;max-height:120px;overflow-y:auto}.comment-textarea:focus{border-color:var(--accent);outline:none;background:#fff}.comment-textarea::placeholder{color:var(--muted);opacity:.7}.comment-send-btn{flex-shrink:0;width:36px;height:36px;border:none;border-radius:50%;background:var(--accent);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,transform .1s}.comment-send-btn:hover:not(:disabled){background:var(--accent-2);transform:scale(1.05)}.comment-send-btn:disabled{opacity:.4;cursor:default}.mention-dropdown{position:absolute;bottom:100%;left:0;right:0;margin-bottom:4px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 4px 16px #0000001f;overflow:hidden;z-index:1300;max-height:240px;overflow-y:auto}.mention-item{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;transition:background .1s}.mention-item:hover,.mention-item.active{background:var(--bg-0)}.mention-avatar{flex-shrink:0;width:26px;height:26px;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.62rem;font-weight:700}.mention-name{font-size:.84rem;font-weight:500;color:var(--ink)}.mention-username{font-size:.76rem;color:var(--muted);margin-left:auto}.comment-badge{display:inline-flex;align-items:center;justify-content:center;gap:2px;background:var(--accent);color:#fff;font-size:.65rem;font-weight:700;border-radius:10px;min-width:18px;height:18px;padding:0 5px;cursor:pointer;transition:transform .1s,background .15s;vertical-align:middle;margin-left:4px}.comment-badge:hover{background:var(--accent-2);transform:scale(1.1)}.comment-badge svg{flex-shrink:0}.comment-overlay-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000026;z-index:1199;animation:fadeIn .15s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.row-highlight-pulse{animation:highlightPulse 2s ease-out}@keyframes highlightPulse{0%{background:#fef08a}50%{background:#fef9c3}to{background:transparent}}.catchup-banner{margin:0 0 8px;border:1px solid #bfdbfe;border-radius:10px;background:linear-gradient(135deg,#eff6ff,#f0f9ff);overflow:hidden;animation:catchupSlideDown .25s ease-out}@keyframes catchupSlideDown{0%{transform:translateY(-8px);opacity:0}to{transform:translateY(0);opacity:1}}.catchup-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .12s}.catchup-header:hover{background:#3b82f60f}.catchup-header-left{display:flex;align-items:center;gap:8px}.catchup-icon{color:#2563eb;display:flex;align-items:center}.catchup-title{font-size:.85rem;font-weight:600;color:#1e3a5f}.catchup-preview{display:flex;align-items:center;gap:-4px;margin-left:4px}.catchup-preview-avatar{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;color:#fff;font-size:.58rem;font-weight:700;margin-left:-4px;border:2px solid #eff6ff}.catchup-preview-avatar:first-child{margin-left:0}.catchup-preview-more{font-size:.72rem;color:#64748b;margin-left:4px}.catchup-header-right{display:flex;align-items:center;gap:8px}.catchup-dismiss-btn{display:flex;align-items:center;gap:4px;background:none;border:1px solid #93c5fd;border-radius:6px;padding:4px 10px;font-size:.76rem;font-weight:500;color:#2563eb;cursor:pointer;transition:all .12s}.catchup-dismiss-btn:hover{background:#dbeafe;border-color:#60a5fa}.catchup-dismiss-btn.full{width:100%;justify-content:center;padding:8px;font-size:.82rem}.catchup-chevron{display:flex;align-items:center;color:#64748b;transition:transform .2s}.catchup-chevron.expanded{transform:rotate(180deg)}.catchup-body{border-top:1px solid #bfdbfe;max-height:280px;overflow-y:auto;padding:4px 0}.catchup-group{padding:0 8px}.catchup-group-label{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#64748b;padding:8px 8px 4px}.catchup-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;transition:background .1s}.catchup-item.clickable{cursor:pointer}.catchup-item.clickable:hover{background:#3b82f614}.catchup-item:not(.clickable):hover{background:#3b82f608}.catchup-item-avatar{flex-shrink:0;width:24px;height:24px;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.58rem;font-weight:700}.catchup-item-action{flex-shrink:0;font-size:.82rem;font-weight:700;width:14px;text-align:center}.catchup-item-text{flex:1;font-size:.82rem;color:var(--ink);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.catchup-item-text strong{font-weight:600}.catchup-item-time{flex-shrink:0;font-size:.72rem;color:#94a3b8}.catchup-footer{padding:6px 12px 8px}@media(max-width:760px){.order-comment-panel{width:100vw}.catchup-banner{margin:0 4px 8px;border-radius:8px}.catchup-item{padding:10px}.mention-dropdown{bottom:auto;top:100%;margin-top:4px;margin-bottom:0}}.b2b-filter-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}.b2b-filter-bar label{display:flex;align-items:center;gap:4px;font-size:.92rem;color:var(--muted)}.b2b-filter-bar select{padding:4px 8px;border:1px solid var(--line);border-radius:4px;font-size:.9rem}.b2b-bulk-bar{display:flex;align-items:center;gap:10px;padding:8px 14px;background:var(--bg-1);border-radius:6px;margin-bottom:10px;font-size:.92rem}.b2b-bulk-bar span{font-weight:600}.b2b-note-indicator{cursor:help;font-size:.85rem}.b2b-stat-table{width:100%;border-collapse:collapse;margin-top:12px;font-size:.92rem}.b2b-stat-table th{text-align:left;padding:6px 10px;border-bottom:2px solid var(--line);color:var(--muted);font-weight:600}.b2b-stat-table td{padding:6px 10px;border-bottom:1px solid var(--line)}.b2b-revenue-bar{display:inline-block;height:16px;background:var(--accent);border-radius:3px;min-width:4px}.b2b-profile-section{max-width:600px}.b2b-profile-section h3{margin:18px 0 8px;font-size:1rem;color:var(--ink)}.b2b-profile-row{display:flex;gap:8px;padding:6px 0;font-size:.92rem}.b2b-profile-row .label{color:var(--muted);min-width:160px}.b2b-confirm-modal{display:flex;flex-direction:column;gap:12px}.b2b-confirm-modal label{font-size:.92rem;color:var(--muted)}.b2b-confirm-modal input,.b2b-confirm-modal select{padding:6px 10px;border:1px solid var(--line);border-radius:4px;font-size:.9rem;width:100%}.ruc-group-row{margin-bottom:0;border-bottom:2px solid var(--line)}.ruc-group-row .tab{font-weight:600;font-size:.95em}.ruc-sub-row{margin-top:0;padding-top:4px}.ruc-sub-row .tab{font-size:.88em}.ruc-margin-green{color:var(--success, #198754);font-weight:600}.ruc-margin-yellow{color:var(--warning, #ffc107);font-weight:600}.ruc-margin-red{color:var(--danger, #dc3545);font-weight:600}.ruc-breakdown-card{background:var(--bg-1, #f8f9fa);border:1px solid var(--line, #dce7ed);border-radius:12px;padding:20px}.ruc-breakdown-card h3{margin:16px 0 8px;font-size:.95em;color:#555;border-bottom:1px solid var(--line, #dce7ed);padding-bottom:4px}.ruc-breakdown-card h3:first-of-type{margin-top:0}.ruc-breakdown-table{width:100%;border-collapse:collapse;font-size:.9em}.ruc-breakdown-table th,.ruc-breakdown-table td{padding:4px 8px;border-bottom:1px solid #eee}.ruc-breakdown-table th{text-align:left;font-weight:600;font-size:.85em;color:#888}.ruc-total-bar{margin-top:16px;padding:12px 16px;background:#e8f5e9;border-radius:8px;text-align:center;font-size:1.1em}.ruc-warnings{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.ruc-warning-badge{background:#fff3cd;color:#856404;border-radius:4px;padding:2px 8px;font-size:.82em;font-weight:500}.ruc-offer-header{background:var(--bg-1, #f8f9fa);padding:16px;border-radius:8px;margin-bottom:16px;border:1px solid var(--line, #dce7ed)}.ruc-summary-bar{display:flex;gap:24px;flex-wrap:wrap;padding:12px 16px;background:var(--bg-1, #f8f9fa);border-radius:8px;margin-top:12px;border:1px solid var(--line, #dce7ed);font-size:.92em}
