.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;background:#0a0c1499;justify-content:center;align-items:flex-start;padding:32px 16px;animation:.15s dshFadeIn;display:flex;position:fixed;inset:0;overflow-y:auto}@keyframes dshFadeIn{0%{opacity:0}to{opacity:1}}.modal{background:var(--surface);border:1px solid var(--border);border-radius:14px;width:100%;max-width:820px;animation:.2s cubic-bezier(.22,.9,.3,1) dshSlideUp;overflow:hidden;box-shadow:0 30px 80px #0000004d}@keyframes dshSlideUp{0%{opacity:.9;transform:translateY(16px)}to{opacity:1;transform:none}}.modal.loading{opacity:.7;pointer-events:none}.modal-sm{max-width:420px}.modal-header{border-bottom:1px solid var(--border);background:var(--bg);justify-content:space-between;align-items:center;padding:18px 22px;display:flex}.modal-header h3{margin:0;font-size:17px;font-weight:600}.modal-header-right{align-items:center;gap:8px;display:flex}.modal-close-x{border:1px solid var(--border);background:var(--bg);cursor:pointer;width:34px;height:34px;color:var(--text-secondary);border-radius:8px;justify-content:center;align-items:center;font-size:16px;transition:background .15s,color .15s,border-color .15s;display:flex}.modal-close-x:hover{color:#dc2626;background:#dc262626;border-color:#dc262666}.modal-body{flex-direction:column;gap:16px;max-height:calc(100vh - 160px);padding:20px 22px 24px;display:flex;overflow-y:auto}.modal-footer{border-top:1px solid var(--border-soft);justify-content:flex-end;gap:10px;padding:14px 20px;display:flex}.modal-cancel{border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);cursor:pointer;border-radius:10px;padding:9px 16px;font-size:13px}.modal-cancel:hover{border-color:var(--primary);color:var(--primary)}.modal-cancel:disabled{opacity:.5;cursor:not-allowed}.modal-save{background:var(--primary);color:var(--primary-text);border:1px solid var(--primary);cursor:pointer;border-radius:8px;padding:8px 16px;font-size:13px;font-weight:500}.modal-save:hover:not(:disabled){filter:brightness(1.06)}.modal-save:disabled{opacity:.6;cursor:not-allowed}.form-group{margin-bottom:14px}.form-group label{color:var(--text-secondary);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.form-group input,.form-group select,.form-group textarea{background:var(--bg);width:100%;color:var(--text);border:1px solid var(--border);box-sizing:border-box;border-radius:8px;outline:none;padding:9px 12px;font-family:inherit;font-size:14px;transition:border-color .15s,box-shadow .15s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #3b82f626}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-hint{color:var(--text-secondary);margin-top:4px;font-size:12px}.form-error{color:#dc2626;background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;margin-top:4px;padding:10px 12px;font-size:13px}.loading-block,.error-block,.empty-block{background:var(--surface);border:1px solid var(--border);text-align:center;color:var(--text-secondary);border-radius:12px;flex-direction:column;align-items:center;gap:10px;padding:48px 32px;display:flex}.error-block{color:var(--danger);border-color:#e74c3c59}.empty-block strong{color:var(--text-primary);font-size:16px;font-weight:500}.btn-primary-new{background:var(--primary);color:#fff;border:1px solid var(--primary);cursor:pointer;border-radius:10px;align-items:center;gap:8px;padding:10px 16px;font-size:13px;font-weight:500;display:inline-flex}.btn-primary-new:hover:not(:disabled){opacity:.92}.btn-primary-new:disabled{opacity:.5;cursor:not-allowed}.btn-primary-new.sm{padding:7px 11px;font-size:12px}.mt-16{margin-top:16px}.btn-ghost-new{border:1px solid var(--border);background:var(--surface);color:var(--text-primary);cursor:pointer;border-radius:10px;align-items:center;gap:6px;padding:8px 13px;font-size:13px;display:inline-flex}.btn-ghost-new:hover:not(:disabled){background:var(--surface-muted)}.btn-ghost-new:disabled{opacity:.5;cursor:not-allowed}.btn-ghost-new.danger{color:var(--danger);border-color:#dc262659}.btn-ghost-new.danger:hover:not(:disabled){background:#dc262614}.mini-btn{border:1px solid var(--border);color:var(--text-tertiary);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:5px;padding:5px 7px;display:inline-flex}.mini-btn:hover{color:var(--text-primary);border-color:var(--text-tertiary)}.mini-btn.danger:hover{color:var(--danger);border-color:var(--danger)}.mini-act{width:22px;height:22px;color:var(--text-tertiary,#999);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:0;transition:color .15s,background .15s;display:inline-flex}.mini-act:hover{color:var(--text-primary,#1a1a1a);background:var(--surface-muted,#f5f5f5)}.mini-act.on:hover{color:#1f8a4d;background:#27ae601a}.mini-act:disabled{opacity:.5;cursor:wait}.perm-section h4{color:var(--text-tertiary);letter-spacing:.6px;text-transform:uppercase;margin:0 0 8px;font-size:11px;font-weight:500}.perm-row{align-items:center;gap:10px;padding:2px 0;display:flex}.perm-label{color:var(--text-secondary);font-size:12.5px}.switch{flex:0 0 38px;width:38px;height:22px;display:inline-block;position:relative}.switch input{opacity:0;width:0;height:0}.slider{cursor:pointer;background-color:#d4d4d8;border-radius:22px;transition:all .18s;position:absolute;inset:0}.slider:before{content:"";background-color:#fff;border-radius:50%;width:16px;height:16px;transition:all .18s;position:absolute;bottom:3px;left:3px;box-shadow:0 1px 3px #0003}.switch input:checked+.slider{background-color:var(--primary)}.switch input:checked+.slider:before{transform:translate(16px)}.cc-avatar{color:#fff;letter-spacing:.5px;background:linear-gradient(135deg,#71717a,#3f3f46);border-radius:50%;flex:0 0 52px;justify-content:center;align-items:center;width:52px;height:52px;font-size:15px;font-weight:600;display:flex}.cc-avatar.small{flex:0 0 26px;width:26px;height:26px;font-size:11px}.cc-info{flex:auto;min-width:0}.cc-info h4{align-items:center;gap:6px;margin:0 0 4px;font-size:13px;font-weight:500;display:flex}.cc-email,.cc-phone{color:var(--text-secondary);align-items:center;gap:6px;margin:0 0 2px;font-size:13px;display:inline-flex}.form-field{flex-direction:column;gap:6px;display:flex}.form-field label{color:var(--text-secondary);letter-spacing:.2px;font-size:12px;font-weight:500}.form-field input,.form-field select,.form-field textarea{border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:7px;outline:none;padding:9px 11px;font-family:inherit;font-size:13px;transition:border .15s}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary)1a}.form-field input:disabled{background:var(--surface);color:var(--text-secondary);cursor:default}.color-row{align-items:center;gap:8px;display:flex}.color-row input[type=color]{cursor:pointer;border:1px solid var(--border);background:var(--surface);border-radius:8px;width:42px;height:36px;padding:0}.color-row input[type=text]{border:1px solid var(--border);background:var(--surface);color:var(--text);font-variant-numeric:tabular-nums;border-radius:8px;flex:1;padding:8px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.modal-actions{border-top:1px solid var(--border-soft);justify-content:flex-end;gap:8px;margin-top:16px;padding-top:14px;display:flex}.btn-secondary,.btn-primary{cursor:pointer;border:1px solid #0000;border-radius:9px;padding:9px 14px;font-size:13px;font-weight:500}.btn-secondary{background:var(--surface);border-color:var(--border);color:var(--text)}.btn-secondary:hover{background:var(--border-soft)}.btn-primary{background:var(--primary);color:var(--primary-text,#fff);border-color:var(--primary)}.btn-primary[disabled]{opacity:.55;cursor:not-allowed}.btn-primary:not([disabled]):hover{background:var(--text-primary)}.btn-primary{background:var(--primary);color:var(--primary-text,#fff);cursor:pointer;border:none;border-radius:10px;padding:10px 16px;font-size:14px;font-weight:600}.visuals-meta{padding:20px}.empty-state{text-align:center;background:var(--surface);border:1px dashed var(--border);border-radius:18px;flex-direction:column;align-items:center;gap:14px;max-width:520px;margin:32px auto;padding:40px 20px;display:flex}.empty-icon{font-size:48px}.empty-state p{color:var(--text-secondary);margin:0;line-height:1.5}.visuals-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px;padding:4px 2px 8px;display:grid}.visual-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;transition:transform .15s,box-shadow .15s;overflow:hidden}.visual-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px -12px #0000004d}.visual-image{aspect-ratio:4/3;cursor:pointer;background:var(--bg);position:relative}.visual-image img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;display:block}.markers-count{color:#fff;background:#000000b8;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:500;position:absolute;top:10px;right:10px}.visual-info{flex-direction:column;gap:6px;padding:12px 14px 14px;display:flex}.visual-info h4{color:var(--text);margin:0;font-size:14px;font-weight:600;line-height:1.3}.visual-info .room-type{text-transform:uppercase;color:var(--text-secondary);letter-spacing:.04em;font-size:11px}.btn-open-visual{background:var(--bg);border:1px solid var(--border);cursor:pointer;color:var(--text);border-radius:8px;align-self:flex-start;margin-top:8px;padding:6px 12px;font-size:12px;transition:all .12s}.btn-open-visual:hover{border-color:var(--primary);color:var(--primary);background:var(--primary)14}.blim-overlay[data-v-8c04f605]{z-index:10050;background:#0f172a99;justify-content:center;align-items:center;padding:16px;animation:.15s ease-out blimFade-8c04f605;display:flex;position:fixed;inset:0}@keyframes blimFade-8c04f605{0%{opacity:0}to{opacity:1}}.blim-card[data-v-8c04f605]{background:var(--surface);width:100%;max-width:440px;color:var(--text);border:1px solid var(--border);border-radius:12px;animation:.18s ease-out blimPop-8c04f605;overflow:hidden}@keyframes blimPop-8c04f605{0%{opacity:.6;transform:scale(.97)}to{opacity:1;transform:none}}.blim-head[data-v-8c04f605]{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.blim-head h3[data-v-8c04f605]{margin:0;font-size:17px;font-weight:600}.blim-x[data-v-8c04f605]{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 8px;font-size:18px;line-height:1}.blim-x[data-v-8c04f605]:hover{background:var(--bg);color:var(--text)}.blim-body[data-v-8c04f605]{padding:20px}.blim-text[data-v-8c04f605]{color:var(--text);margin:0 0 16px;font-size:14px;line-height:1.55}.blim-plans[data-v-8c04f605]{flex-direction:column;gap:8px;margin-bottom:14px;display:flex}.blim-plan[data-v-8c04f605]{border:1px solid var(--border);background:var(--bg);border-radius:10px;align-items:center;gap:10px;padding:11px 14px;font-size:13px;display:flex}.blim-pro[data-v-8c04f605]{border-color:var(--primary);background:var(--surface)}.blim-name[data-v-8c04f605]{min-width:38px;font-weight:600}.blim-val[data-v-8c04f605]{color:var(--text-secondary)}.blim-price[data-v-8c04f605]{color:var(--primary);white-space:nowrap;margin-left:auto;font-weight:600}.blim-note[data-v-8c04f605]{color:var(--text-tertiary);margin:0;font-size:12.5px;line-height:1.5}.blim-foot[data-v-8c04f605]{border-top:1px solid var(--border);justify-content:flex-end;gap:10px;padding:14px 20px;display:flex}.blim-ghost[data-v-8c04f605],.blim-primary[data-v-8c04f605]{cursor:pointer;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:8px;padding:9px 16px;font-size:14px;font-weight:500;transition:background .15s}.blim-ghost[data-v-8c04f605]:hover{background:var(--surface-muted)}.blim-primary[data-v-8c04f605]{background:var(--primary);color:var(--primary-text);border-color:var(--primary)}.blim-primary[data-v-8c04f605]:hover{filter:brightness(1.06)}@media (width<=480px){.blim-foot[data-v-8c04f605]{flex-direction:column-reverse}.blim-ghost[data-v-8c04f605],.blim-primary[data-v-8c04f605]{width:100%}}.modal-overlay[data-v-91199ce2]{z-index:999;background:#0f172a8c;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal[data-v-91199ce2]{background:var(--surface);width:100%;max-width:560px;color:var(--text);border:1px solid var(--border);border-radius:12px;animation:.18s ease-out modalPop-91199ce2;overflow:hidden}@keyframes modalPop-91199ce2{0%{opacity:.5;transform:scale(.96)}to{opacity:1;transform:none}}.modal-header[data-v-91199ce2]{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.modal-header h3[data-v-91199ce2]{margin:0;font-size:18px;font-weight:500}.modal-close-x[data-v-91199ce2]{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 8px;font-size:18px}.modal-close-x[data-v-91199ce2]:hover{background:var(--bg);color:var(--text)}.modal-body[data-v-91199ce2]{padding:20px}.form-group[data-v-91199ce2]{margin-bottom:14px}.form-group label[data-v-91199ce2]{color:var(--text-secondary);margin-bottom:6px;font-size:13px;font-weight:500;display:block}.form-group input[data-v-91199ce2],.form-group select[data-v-91199ce2],.form-group textarea[data-v-91199ce2]{background:var(--bg);width:100%;color:var(--text);border:1px solid var(--border);box-sizing:border-box;border-radius:8px;outline:none;padding:9px 12px;font-size:14px;transition:border-color .15s}.form-group input[data-v-91199ce2]:focus,.form-group select[data-v-91199ce2]:focus,.form-group textarea[data-v-91199ce2]:focus{border-color:var(--primary)}.form-row[data-v-91199ce2]{grid-template-columns:1fr 1fr;gap:12px;display:grid}.pwd-wrap[data-v-91199ce2]{gap:8px;display:flex;position:relative}.pwd-wrap>input[data-v-91199ce2]{flex:1;padding-right:84px!important}.pwd-toggle[data-v-91199ce2],.pwd-gen[data-v-91199ce2]{border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);cursor:pointer;border-radius:8px;width:36px;height:36px;padding:5px 9px;font-size:16px;line-height:1;position:absolute;top:50%;transform:translateY(-50%)}.pwd-toggle[data-v-91199ce2]{right:48px}.pwd-gen[data-v-91199ce2]{right:6px}.pwd-toggle[data-v-91199ce2]:hover:not(:disabled),.pwd-gen[data-v-91199ce2]:hover:not(:disabled){background:var(--bg);color:var(--text)}button[data-v-91199ce2]:disabled{opacity:.55;cursor:not-allowed}.form-error[data-v-91199ce2]{color:var(--danger);background:#e74c3c1a;border:1px solid #e74c3c4d;border-radius:8px;margin-top:4px;padding:10px 12px;font-size:13px}.form-hint[data-v-91199ce2]{color:var(--text-tertiary);margin:2px 0 14px;font-size:12.5px;line-height:1.5}.modal-footer[data-v-91199ce2]{border-top:1px solid var(--border);background:var(--bg);justify-content:flex-end;gap:10px;padding:16px 20px;display:flex}.modal-cancel[data-v-91199ce2],.modal-save[data-v-91199ce2]{cursor:pointer;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:8px;padding:9px 16px;font-size:14px;font-weight:500;transition:background .15s}.modal-cancel[data-v-91199ce2]:hover:not(:disabled){background:var(--surface-muted)}.modal-save[data-v-91199ce2]{background:var(--primary);color:var(--primary-text);border-color:var(--primary)}.modal-save[data-v-91199ce2]:hover:not(:disabled){background:var(--text-primary)}@media (width<=640px){.form-row[data-v-91199ce2]{grid-template-columns:1fr}}.access-hint[data-v-4177712c]{color:var(--text-secondary);margin:0 0 14px;font-size:13px;line-height:1.5}.access-create[data-v-4177712c]{border:1px solid var(--border);background:var(--surface-muted);border-radius:10px;margin-bottom:16px;padding:14px}.access-create .form-row[data-v-4177712c]{grid-template-columns:1fr 140px;gap:10px;display:grid}.access-create-btn[data-v-4177712c]{width:100%;margin-top:10px}.access-empty[data-v-4177712c]{text-align:center;color:var(--text-tertiary);padding:16px 0;font-size:13px}.access-list[data-v-4177712c]{flex-direction:column;gap:8px;max-height:320px;display:flex;overflow-y:auto}.access-item[data-v-4177712c]{border:1px solid var(--border);background:var(--surface);border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.access-item.revoked[data-v-4177712c]{opacity:.55}.access-item-main[data-v-4177712c]{flex:1;min-width:0}.access-item-label[data-v-4177712c]{color:var(--text-primary);flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-size:13px;font-weight:600;display:flex}.access-item-member[data-v-4177712c]{background:var(--surface-muted);border:1px solid var(--border);color:var(--text-secondary);border-radius:999px;padding:2px 8px;font-size:11px;font-weight:500}.access-item-url[data-v-4177712c]{color:var(--text-tertiary);word-break:break-all;margin:3px 0 0;font-family:ui-monospace,monospace;font-size:12px}.access-item-meta[data-v-4177712c]{color:var(--text-tertiary);margin:3px 0 0;font-size:11px}.access-item-revoked[data-v-4177712c]{color:var(--danger);font-weight:600}.access-item-actions[data-v-4177712c]{flex:none;gap:6px;display:flex}.access-item-actions .mini-act[data-v-4177712c]{background:var(--surface-muted);border:1px solid var(--border);cursor:pointer;color:var(--text-secondary);border-radius:8px;padding:6px}.access-item-actions .mini-act[data-v-4177712c]:hover{border-color:var(--primary);color:var(--primary)}.access-item-actions .mini-act.danger[data-v-4177712c]:hover{border-color:var(--danger);color:var(--danger)}.tf-single-row .btn-additem[data-v-4177712c]{background:var(--primary);height:32px;color:var(--primary-text);cursor:pointer;white-space:nowrap;border:none;border-radius:6px;padding:0 12px;font-size:12px;font-weight:500}.tf-single-row .btn-additem[data-v-4177712c]:hover{filter:brightness(1.08)}.tf-actions .btn-additem[data-v-4177712c]{background:var(--primary);color:var(--primary-text);border:1px solid var(--primary);cursor:pointer;border-radius:8px;padding:8px 14px;font-size:13px;font-weight:500}.tf-actions .btn-additem[data-v-4177712c]:hover:not(:disabled){background:var(--text-primary)}.pwd-wrap[data-v-343e0b52]{display:flex;position:relative}.pwd-wrap>input[data-v-343e0b52]{flex:1;padding-right:84px!important}.pwd-toggle[data-v-343e0b52],.pwd-gen[data-v-343e0b52]{border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);cursor:pointer;border-radius:8px;width:36px;height:36px;padding:0;font-size:16px;line-height:36px;position:absolute;top:50%;transform:translateY(-50%)}.pwd-toggle[data-v-343e0b52]{right:48px}.pwd-gen[data-v-343e0b52]{right:6px}.pwd-toggle[data-v-343e0b52]:hover:not(:disabled),.pwd-gen[data-v-343e0b52]:hover:not(:disabled){background:var(--bg);color:var(--text)}.pm-overlay[data-v-a224b1a8]{z-index:300;background:#0006;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.pm-modal[data-v-a224b1a8]{background:var(--surface,#fff);border:1px solid var(--border,#e5e5e5);border-radius:14px;width:100%;max-width:420px;box-shadow:0 18px 50px #0000002e}.pm-header[data-v-a224b1a8]{border-bottom:1px solid var(--border-soft,#f0f0f0);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.pm-header h3[data-v-a224b1a8]{color:var(--text-primary,#1a1a1a);align-items:center;gap:8px;margin:0;font-size:15px;display:flex}.pm-close[data-v-a224b1a8]{color:var(--text-tertiary,#999);cursor:pointer;background:0 0;border:none;font-size:16px}.pm-body[data-v-a224b1a8]{flex-direction:column;gap:12px;padding:18px 20px;display:flex}.pm-field label[data-v-a224b1a8]{color:var(--text-secondary,#666);margin-bottom:4px;font-size:12px;font-weight:600;display:block}.pm-field input[data-v-a224b1a8]{border:1px solid var(--border,#e5e5e5);background:var(--surface,#fff);width:100%;color:var(--text-primary,#1a1a1a);border-radius:10px;outline:none;padding:10px 12px;font-size:14px}.pm-field input[data-v-a224b1a8]:focus{border-color:var(--primary,#1a1a1a)}.pm-error[data-v-a224b1a8]{color:var(--danger,#c0392b);font-size:13px}.pm-success[data-v-a224b1a8]{color:var(--positive,#27ae60);font-size:13px}.pm-footer[data-v-a224b1a8]{border-top:1px solid var(--border-soft,#f0f0f0);justify-content:flex-end;gap:10px;padding:14px 20px;display:flex}.pm-cancel[data-v-a224b1a8]{border:1px solid var(--border,#e5e5e5);background:var(--surface,#fff);color:var(--text-secondary,#666);cursor:pointer;border-radius:10px;padding:10px 16px;font-size:13px}.pm-save[data-v-a224b1a8]{border:1px solid var(--primary,#1a1a1a);background:var(--primary,#1a1a1a);color:var(--primary-text,#fff);cursor:pointer;border-radius:10px;padding:10px 18px;font-size:13px;font-weight:600}.pm-save[data-v-a224b1a8]:disabled,.pm-cancel[data-v-a224b1a8]:disabled{opacity:.6;cursor:not-allowed}.app-shell[data-v-2955a5c6]{min-height:100vh}.rail[data-v-2955a5c6]{z-index:200;background:var(--bg-elev,#fff);border-right:1px solid var(--border);flex-direction:column;gap:6px;width:240px;padding:12px 10px;transition:width .2s;display:flex;position:fixed;top:48px;bottom:0;left:0;overflow-y:auto}.rail.collapsed[data-v-2955a5c6]{width:64px}.rail-collapse[data-v-2955a5c6]{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;display:flex}.rail-collapse[data-v-2955a5c6]:hover{background:var(--surface-muted);color:var(--text-primary)}.rail-project[data-v-2955a5c6]{border-bottom:1px solid var(--border-soft);margin-bottom:8px;padding:6px 8px 12px}.rp-name[data-v-2955a5c6]{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:500;line-height:1.2;overflow:hidden}.rp-client[data-v-2955a5c6]{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:12px;overflow:hidden}.rail-items[data-v-2955a5c6]{flex-direction:column;gap:2px;display:flex}.rail-common[data-v-2955a5c6]{border-top:1px solid var(--border-soft);margin-top:6px;padding-top:8px}.rail-item--sub[data-v-2955a5c6]{color:var(--text-tertiary);padding-left:30px;font-size:12.5px}.rail-item--sub[data-v-2955a5c6]:hover,.rail-item--sub.active[data-v-2955a5c6]{color:var(--text-primary)}.rail-item[data-v-2955a5c6]{cursor:pointer;color:var(--text-secondary);text-align:left;white-space:nowrap;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;font-size:13.5px;transition:background .15s,color .15s;display:flex}.rail-item[data-v-2955a5c6]:hover{background:var(--surface-muted);color:var(--text-primary)}.rail-item.active[data-v-2955a5c6]{background:var(--surface-muted);color:var(--text-primary);font-weight:500}.rail-foot[data-v-2955a5c6]{border-top:1px solid var(--border-soft);flex-direction:column;gap:2px;margin-top:auto;padding-top:8px;display:flex}.rail.collapsed .ri-label[data-v-2955a5c6],.rail.collapsed .rail-project[data-v-2955a5c6]{display:none}.rail.collapsed .rail-item[data-v-2955a5c6],.rail.collapsed .rail-collapse[data-v-2955a5c6]{justify-content:center;padding:10px}.shell-content[data-v-2955a5c6]{min-height:calc(100vh - 48px);margin-left:64px;padding:16px 20px}.shell-content.rail-open[data-v-2955a5c6]{margin-left:240px}.hidden-file[data-v-2955a5c6]{display:none}.hdr-proto[data-v-2955a5c6]{z-index:50;-webkit-backdrop-filter:blur(10px)saturate(1.2);border-bottom:1px solid var(--border);background:#ffffffeb;flex:0 0 48px;align-items:center;gap:8px;height:48px;padding:8px 12px;display:flex;position:sticky;top:0}.logo[data-v-2955a5c6]{color:var(--text-primary);white-space:nowrap;align-items:center;gap:6px;font-size:15px;font-weight:600;display:inline-flex}.logo svg[data-v-2955a5c6]{flex-shrink:0}.psel[data-v-2955a5c6]{color:var(--text-secondary);align-items:center;gap:7px;display:inline-flex}.psel-empty[data-v-2955a5c6]{color:var(--text-tertiary);font-size:13px}.psel .dot[data-v-2955a5c6]{background:var(--positive,#27ae60);border-radius:50%;flex-shrink:0;width:8px;height:8px}.psel .dot.off[data-v-2955a5c6]{background:var(--text-quaternary,#d4d4d4)}.psel select[data-v-2955a5c6]{appearance:none;color:var(--text-primary);cursor:pointer;background:0 0;border:none;outline:none;max-width:210px;padding:2px 0;font-size:14px;font-weight:500}.psel svg[data-v-2955a5c6]{color:var(--text-tertiary);flex-shrink:0}.hact[data-v-2955a5c6]{white-space:nowrap;align-items:center;gap:8px;margin-left:auto;display:flex}.hbtn[data-v-2955a5c6]{white-space:nowrap;cursor:pointer;border:1px solid var(--border);color:var(--text-primary);background:0 0;border-radius:8px;align-items:center;gap:6px;padding:6px 9px;font-size:13px;font-weight:500;display:inline-flex}.hbtn[data-v-2955a5c6]:hover:not(:disabled){background:var(--primary);border-color:var(--primary);color:var(--primary-text,#fff)}.hbtn[data-v-2955a5c6]:disabled{opacity:.45;cursor:not-allowed}.ibtn[data-v-2955a5c6]{cursor:pointer;border:1px solid var(--border);width:30px;height:30px;color:var(--text);background:0 0;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.ibtn[data-v-2955a5c6]:hover{background:var(--primary);border-color:var(--primary);color:var(--primary-text,#fff)}.chip-t[data-v-2955a5c6]{white-space:nowrap;color:var(--text-secondary);background:var(--bg-elev);border:1px solid var(--border);cursor:pointer;border-radius:999px;align-items:center;gap:5px;padding:4px 9px;font-family:inherit;font-size:12px;display:inline-flex}.chip-t[data-v-2955a5c6]:hover{border-color:var(--primary);color:var(--primary)}.chip-t b[data-v-2955a5c6]{color:var(--text-primary);font-weight:600}.avat[data-v-2955a5c6]{background:var(--primary);width:28px;height:28px;color:var(--primary-text,#fff);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:inline-flex}.rw-gear-wrap[data-v-2955a5c6]{position:relative}.rw-menu[data-v-2955a5c6]{z-index:80;background:var(--surface);border:1px solid var(--border);border-radius:10px;min-width:190px;padding:8px 10px;position:absolute;top:calc(100% + 6px);right:0}.rw-menu-title[data-v-2955a5c6]{text-transform:uppercase;letter-spacing:.4px;color:var(--text-tertiary);margin-bottom:6px;font-size:11px;display:block}.rw-opt[data-v-2955a5c6]{cursor:pointer;align-items:center;gap:8px;padding:6px 4px;font-size:13px;display:flex}.rw-opt[data-v-2955a5c6]:hover{background:var(--surface-muted);border-radius:6px}.rw-opt input[data-v-2955a5c6]{width:15px;height:15px;accent-color:var(--text-primary)}.hdr-gear.open[data-v-2955a5c6]{border-color:var(--text-primary);color:var(--text-primary)}.rail-drop[data-v-2955a5c6]{position:relative}.imp-exp[data-v-2955a5c6]{opacity:0;max-height:0;transition:max-height .28s cubic-bezier(.22,.61,.36,1),opacity .2s;overflow:hidden}.imp-exp.open[data-v-2955a5c6]{opacity:1;max-height:150px}.imp-item[data-v-2955a5c6]{text-align:left;width:100%;color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;padding:7px 10px 7px 30px;font-size:12.5px;display:flex}.imp-item[data-v-2955a5c6]:hover{background:var(--surface-muted);color:var(--text-primary)}.imp-item svg[data-v-2955a5c6]{color:var(--text-tertiary);flex-shrink:0}@font-face{font-family:Material Symbols Rounded;font-style:normal;font-weight:400;font-display:swap;src:url(/build/assets/material-symbols-rounded-C8g74dum.woff2)format("woff2")}.kicon,.msr{letter-spacing:normal!important;font-feature-settings:"liga" 1!important;-webkit-font-feature-settings:"liga" 1!important;font-variant-ligatures:normal!important;text-rendering:optimizelegibility!important;font-family:Material Symbols Rounded!important;font-style:normal!important;font-weight:400!important}:root{--space-4:4px;--space-8:8px;--space-12:12px;--space-16:16px;--space-20:20px;--space-24:24px;--space-32:32px;--r-chip:6px;--r-btn:8px;--r-card:10px;--r-panel:12px;--bg:#f5f5f5;--surface:#fff;--surface-muted:#f5f5f5;--surface-raised:#fafafa;--text-primary:#1a1a1a;--text-secondary:#525252;--text-tertiary:#737373;--text-quaternary:#d4d4d4;--text:var(--text-primary);--text-dim:var(--text-tertiary);--border:#e5e5e5;--border-soft:#f0f0f0;--primary:#1a1a1a;--primary-text:#fff;--accent-surface:#f0f0f0;--accent-blue:#2563eb;--accent-data:#2563eb;--accent:var(--surface-raised);--positive:#16a34a;--warning:#ca8a04;--danger:#dc2626;--success:var(--positive)}[data-theme=dark]{--bg:#1a1a1a;--surface:#171717;--surface-muted:#1a1a1a;--surface-raised:#202020;--text-primary:#f5f5f5;--text-secondary:#a3a3a3;--text-tertiary:#737373;--text-quaternary:#404040;--border:#262626;--border-soft:#2a2a2a;--primary:#fafafa;--primary-text:#171717;--accent-surface:#2a2a2a;--accent:#60a5fa;--accent-data:#60a5fa;--positive:#4ade80;--warning:#facc15;--danger:#f87171;--success:var(--positive)}[data-theme=dark] .hdr-proto,[data-theme=dark] .toolbar.toolbar-compact{-webkit-backdrop-filter:blur(10px)saturate(1.2);background:#171717d9}*{box-sizing:border-box;font-weight:inherit;margin:0;padding:0}html{font-weight:400}h1,h2,h3,h4,h5,h6,strong,b,th,.form-label,.section-label,.section-title,.modal-header h3,.chip.active,.card-name,.stat-num,.tf-sum b,.card-total b{font-weight:500}body{background:var(--bg);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:13px;line-height:1.4;transition:background .3s,color .3s}#app{min-height:100vh}table,.num,.nums,.price,.stat-num,.card-total,.tf-sum,.pl-sum,.chip small{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}input:focus,select:focus,textarea:focus,button:focus-visible{border-color:var(--text-primary)!important;box-shadow:none!important;outline:none!important}*,:before,:after{animation-iteration-count:1!important}@keyframes _kimi_none{}h1,h2,h3,h4,h5,h6,b,strong,th,.form-label,.section-label,.section-title,.section-header,.modal-header h3,.modal-title,.modal-h3,.chip.active,.card-name,.stat-num,.tf-sum b,.card-total b,.card-total,.stat-sum .stat-num,.pl-name,.pl-title,.card-meta .val,.marker-name,.published-counter,.room-type,.btn-open-visual,.visual-title-line,.chip-info,.vt-btn,.logout-btn,.desc-toggle,.accordion-header,.btn-primary,.btn-secondary,.link-btn,.receipt-row span,.status-badge,.inline-badge,.tag-chip,.tab-btn,.card-title,.price,.currency,.qty,.total,.dim-label,.dim-value,.sum,.price-row,.tab-count,.tab-name,.spec-table th,.spec-table td.num,.primary-bold,.view-toggle .vt-btn{font-weight:500!important}*,:before,:after{box-shadow:none!important;-webkit-backdrop-filter:none!important;filter:none!important;background-blend-mode:normal!important}.modal-overlay:before,.modal-box,.modal-footer-row,.item-card,.visual-card,.stat-card,.project-card,.card-header,.chip,.btn-primary,.btn-secondary,.link-btn,.tag-chip,.status-badge,.inline-badge,.table-photo,.gallery-placeholder,.empty-state,.chip-info,.filters-bar,.view-toggle,.accordion,.receipt-row,.published-counter,.client-cabinet header,.logout-btn,.vt-btn{background-image:none!important}@keyframes draft-pulse{0%,to{opacity:1}}@keyframes itemHighlightBlink{0%,to{opacity:1}}@keyframes markerPulse{0%,to{transform:scale(1)}}.status-draft,.status-done,.status-active,.visual-card:hover,.project-card:hover,.item-card:hover{transform:none!important}.chip,.status-badge,.ps-status-badge,.tag-chip,.inline-badge,.btn-mini,.tag{border-radius:6px!important}.status-soglasovano,.status-done,.status-published,.done,.published,.psb-done,.ps-status-badge.done,.status.status-done{color:#16a34a!important;background:#16a34a1f!important;border-color:#16a34a59!important}.status-v-puti,.pending,.warning,.psb-warn,.ps-status-badge.warn{color:#ca8a04!important;background:#ca8a041a!important;border-color:#ca8a0459!important}.status-draft,.draft,.psb-draft,.ps-status-badge.draft{color:#666!important;background:#f5f5f5!important;border-color:#d9d9d9!important}.status-na-obekt,.status-active,.psb-active,.ps-status-badge.active{color:#2563eb!important;background:#2563eb1f!important;border-color:#2563eb59!important}.status-ne-soglasovano,.status-error,.status-cancelled,.error,.cancelled,.psb-error,.ps-status-badge.error{color:#dc2626!important;background:#dc26261f!important;border-color:#dc262659!important}.status-net,.status-none,.none,.out-of-stock,.psb-none,.ps-status-badge.none{color:#737373!important;background:#a3a3a31f!important;border-color:#a3a3a359!important}tr.draft-row td,tr.item-row.draft td,tbody tr.draft td,table tr.draft-row td{background:#fff!important}tr.draft-row .name,tr.draft-row td.name-cell,tr.item-row.draft .name,.draft-row td.name,.draft .sku,.draft td.item-name{color:#6e7f8d!important}th,table thead th,.spec-table th,.lib-table th{color:var(--text-tertiary)!important;text-transform:uppercase!important;letter-spacing:.04em!important;text-align:left!important;padding:6px!important;font-size:9px!important;font-weight:500!important}td,table tbody td,.spec-table td,.lib-table td{vertical-align:middle!important;padding:7px 6px!important;font-size:12px!important}table tbody tr:hover td,.spec-table tbody tr.item-row:hover td,.lib-table tbody tr:hover td{background:#e4ebf10d!important}.row-actions,.btn-mini,.btn-mini.edit,.btn-mini.danger,.btn-mini.eye,.card-edit,.card-del,.card-eye,.delete-btn,.edit-btn,.eye-btn,.pc-edit,.pc-delete,.pl-delete,.pl-edit,.vf-delete,.vf-edit,.vf-eye,.visual-card .btn-delete{transition:opacity .15s;opacity:0!important}tr:hover .row-actions,tr:hover .btn-mini,tr:hover .delete-btn,tr:hover .edit-btn,tr:hover .eye-btn,.item-card:hover .card-edit,.item-card:hover .card-del,.item-card:hover .card-eye,.project-card:hover .pc-edit,.project-card:hover .pc-delete,.pl-row:hover .pl-delete,.pl-row:hover .pl-edit,.vf-row:hover .vf-delete,.vf-row:hover .vf-edit,.vf-row:hover .vf-eye,.visual-card:hover .btn-delete{opacity:1!important}.btn-mini.danger,.delete-btn,.card-del,.pc-delete,.pl-delete,.vf-delete,.btn-delete{color:var(--text-tertiary)!important;border-color:var(--border)!important;background:0 0!important}.btn-mini.danger:hover,.delete-btn:hover,.card-del:hover,.pc-delete:hover,.pl-delete:hover,.vf-delete:hover,.btn-delete:hover{color:var(--danger)!important;border-color:var(--danger)!important}.status.done,.status.done .status-badge,.psb-done,.status-published,.published{color:#15803d!important;background:#22c55e1f!important;border-color:#22c55e59!important}.modal-box,.modal,[class*=modal-box]{border-radius:12px!important}.item-card,.visual-card,.project-card,.stat-card,.gallery,.card,.accordion,.filters-bar,.view-toggle,.client-cabinet .project-tabs,.chip-info,.link-btn,.btn-primary,.btn-secondary,.logout-btn,.table-wrap,.spec-table,.lib-table,.empty-state{border-radius:10px!important}.tab-count,.markers-count,.chip-info.pill{border-radius:999px!important}.section-header,.sidebar-label,.pl-section-label,.purchase-label,.form-label,label,.accordion-header{color:var(--text-tertiary)!important;text-transform:uppercase!important;letter-spacing:.04em!important;font-size:12px!important;font-weight:500!important}.accordion-header{font-size:14px!important}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}.tf-single-row .btn-additem{background:var(--primary)!important;border-color:var(--primary)!important}button.tab-btn.active,.tab-btn.active,.stat-chip.active{color:#6e7f8d!important;background:#e4ebf1!important;border-color:#b5bfc6!important}span.tab-count,.tab-count{color:#6e7f8d!important;background:#e4ebf1!important;border-color:#b5bfc6!important;border-radius:6px!important}.name{color:#6e7f8d!important}.mini-act{color:#e4ebf1!important}.mini-act.on{color:#6e7f8d!important}span.tag-chip,.tag-chip{color:#6e7f8d!important;background:#e4ebf1!important;border-color:#e4ebf1!important}select.status-select,.status-select{color:#6e7f8d!important;background:#e4ebf1!important;border-color:#b5bfc6!important}td.num.sum,.num.sum{color:#6e7f8d!important}tr:hover td{background:#e4ebf10d!important}.kicon{vertical-align:-.16em;white-space:nowrap;color:inherit;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;-moz-osx-font-smoothing:grayscale;font-feature-settings:"liga" 1;-webkit-font-feature-settings:"liga";font-variant-ligatures:normal;font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;justify-content:center;align-items:center;display:inline-flex;letter-spacing:normal!important;text-transform:none!important;word-wrap:normal!important;direction:ltr!important;font-style:normal!important;font-weight:400!important;line-height:1!important}.kicon--fill{font-variation-settings:"FILL" 1, "wght" 400, "GRAD" 0, "opsz" 24}.kicon--16{width:16px;height:16px;font-size:16px}.kicon--18{width:18px;height:18px;font-size:18px}.kicon--20{width:20px;height:20px;font-size:20px}.kicon--24{width:24px;height:24px;font-size:24px}.kicon--spaced{margin-right:6px}.kicon--spaced:last-child{margin-left:0;margin-right:0}#page_foreman_expenses[data-v-25b33bf5]{max-width:1400px;font-family:var(--font-base,-apple-system, BlinkMacSystemFont, "Segoe UI", Inter, system-ui, "SF Pro Display", sans-serif);color:#1f2937;background:#f8f9fa;min-height:100vh;margin:0 auto;padding:24px 28px 40px}.kemi-page__head[data-v-25b33bf5]{margin-bottom:22px}.head__row1[data-v-25b33bf5]{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.head__back[data-v-25b33bf5]{border:1px solid var(--border,#e5e5e5);cursor:pointer;color:#555;background:#fff;border-radius:12px;justify-content:center;align-items:center;width:40px;height:40px;transition:all .15s;display:flex}.head__back[data-v-25b33bf5]:hover{border-color:var(--primary);color:var(--primary);transform:translate(-1px)}.head__title[data-v-25b33bf5]{color:#111;align-items:center;gap:10px;margin:0;font-size:22px;font-weight:700;display:flex}.head__project-badge[data-v-25b33bf5]{background:var(--surface-muted);color:var(--text-secondary);border:1px solid var(--border);border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:500;display:inline-flex}.head__beta-pill[data-v-25b33bf5]{color:#fff;background:#111;border-radius:999px;margin-left:auto;padding:4px 12px;font-size:12px;font-weight:600}.head__subtitle[data-v-25b33bf5]{color:#6b7280;align-items:center;gap:8px;margin:10px 0 0;padding-left:52px;font-size:13px;display:flex}.hss__dot[data-v-25b33bf5]{background:#f59e0b;border-radius:999px;width:6px;height:6px;display:inline-block}.kpi-grid[data-v-25b33bf5]{flex-direction:column;gap:16px;margin-bottom:20px;display:flex}.fx-grid[data-v-25b33bf5]{align-items:flex-start;gap:10px;display:flex}.fx-main[data-v-25b33bf5]{flex:auto;order:1;min-width:0}.fx-side[data-v-25b33bf5]{flex:0 0 240px;order:2;align-self:flex-start;width:240px;min-width:0;position:sticky;top:56px}@media (width<=1099px){.fx-grid[data-v-25b33bf5]{flex-direction:column}.fx-side[data-v-25b33bf5]{flex:auto;width:auto;position:static}}.fx-side .kpi-grid[data-v-25b33bf5]{flex-direction:column;gap:10px;display:flex}.fx-side .kpi-hero[data-v-25b33bf5],.fx-side .kpi-sub[data-v-25b33bf5],.fx-side .kpi-work[data-v-25b33bf5]{background:var(--surface);color:var(--text-primary);border:1px solid var(--border);box-shadow:none;border-radius:10px;margin-bottom:0;padding:12px 14px}.fx-side .kpi-hero[data-v-25b33bf5]{min-height:auto}.fx-side .kpi-hero__value[data-v-25b33bf5]{font-size:26px}.fx-side .kpi-hero__title[data-v-25b33bf5]{color:var(--text-primary)}.fx-side .kpi-hero__sub[data-v-25b33bf5]{color:var(--text-secondary)}.fx-side .kpi-hero__meta[data-v-25b33bf5]{color:var(--text-tertiary)}.fx-side .kpi-hero__meta b[data-v-25b33bf5]{color:var(--text-primary)}.fx-side .kpi-hero__sign[data-v-25b33bf5]{color:#16a34a}.fx-side .kpi-hero--over .kpi-hero__sign[data-v-25b33bf5],.fx-side .kpi-hero--over .kpi-hero__num[data-v-25b33bf5]{color:#dc2626}.fx-side .kpi-hero__ico[data-v-25b33bf5]{background:var(--surface-muted);width:30px;height:30px;color:var(--text-primary)}.fx-side .kpi-hero__badge[data-v-25b33bf5]{padding:2px 7px;font-size:10px}.fx-side .kpi-sub[data-v-25b33bf5]{flex-direction:column;gap:10px;display:flex}.fx-side .kpi-work__cells[data-v-25b33bf5]{flex-direction:column;gap:6px;display:flex}.kpi-hero[data-v-25b33bf5]{color:#fff;background:linear-gradient(135deg,#0f172a 0%,#1e293b 100%);border-radius:18px;flex-direction:column;gap:10px;padding:22px 26px;display:flex;position:relative;overflow:hidden;box-shadow:0 6px 24px #0f172a24}.kpi-hero--over[data-v-25b33bf5]{background:linear-gradient(135deg,#7f1d1d 0%,#b91c1c 100%)}.kpi-hero__top[data-v-25b33bf5]{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.kpi-hero__ico[data-v-25b33bf5]{color:#fff;background:#ffffff1f;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.kpi-hero__titles[data-v-25b33bf5]{flex:1;min-width:200px}.kpi-hero__title[data-v-25b33bf5]{color:#fff;letter-spacing:.2px;font-size:15px;font-weight:600}.kpi-hero__sub[data-v-25b33bf5]{color:#ffffffa6;margin-top:2px;font-size:12.5px}.kpi-hero__badge[data-v-25b33bf5]{color:#16a34a;background:#16a34a1f;border:1px solid #16a34a59;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:500}.kpi-hero__badge--over[data-v-25b33bf5]{color:#dc2626;background:#dc26261f;border-color:#dc262659}.kpi-hero__value[data-v-25b33bf5]{letter-spacing:-1px;align-items:baseline;gap:6px;font-size:44px;font-weight:800;line-height:1.05;display:flex}.kpi-hero__sign[data-v-25b33bf5]{color:#86efac;font-weight:600}.kpi-hero--over .kpi-hero__sign[data-v-25b33bf5],.kpi-hero--over .kpi-hero__num[data-v-25b33bf5]{color:#fecaca}.kpi-hero__meta[data-v-25b33bf5]{color:#ffffffb3;font-size:12.5px}.kpi-hero__meta b[data-v-25b33bf5]{color:#fff}.kpi-hero__bar[data-v-25b33bf5]{background:#ffffff26;border-radius:999px;height:8px;margin-top:2px;overflow:hidden}.kpi-hero__bar-fill[data-v-25b33bf5]{background:linear-gradient(90deg,#34d399,#a7f3d0);border-radius:999px;height:100%;transition:width .4s}.kpi-hero--over .kpi-hero__bar-fill[data-v-25b33bf5]{background:linear-gradient(90deg,#f87171,#fecaca)}.kpi-sub[data-v-25b33bf5]{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.kpi-card[data-v-25b33bf5]{border:1px solid var(--border,#e5e5e5);background:#fff;border-radius:16px;padding:16px 18px;position:relative;overflow:hidden;box-shadow:0 1px 2px #11182708}.kpi-card[data-v-25b33bf5]:before{content:"";width:4px;height:100%;position:absolute;top:0;left:0}.kpi-card--rec[data-v-25b33bf5]:before{background:#16a34a}.kpi-card--spent[data-v-25b33bf5]:before{background:#f59e0b}.kpi__head[data-v-25b33bf5]{align-items:center;gap:10px;display:flex}.kpi__icon[data-v-25b33bf5]{color:#475569;background:#f1f5f9;border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.kpi__label[data-v-25b33bf5]{color:#64748b;font-size:13px;font-weight:500}.kpi__value[data-v-25b33bf5]{color:#0f172a;letter-spacing:-.4px;margin:12px 0 4px;font-size:26px;font-weight:800}.kpi__value--ok[data-v-25b33bf5]{color:#16a34a}.kpi__foot[data-v-25b33bf5]{color:#6b7280;font-size:12px;line-height:1.4}.kpi-work[data-v-25b33bf5]{border:1px solid var(--border,#e5e5e5);background:#fff;border-radius:16px;padding:16px 18px 18px;box-shadow:0 1px 2px #11182708}.kpi-work__head[data-v-25b33bf5]{align-items:center;gap:10px;margin-bottom:12px;display:flex}.kpi-work__ico[data-v-25b33bf5]{background:var(--surface-muted);width:28px;height:28px;color:var(--primary);border-radius:6px;justify-content:center;align-items:center;display:flex}.kpi-work__title[data-v-25b33bf5]{color:#0f172a;font-size:14px;font-weight:600}.kpi-work__sub[data-v-25b33bf5]{color:#6b7280;font-size:12px}.kpi-work__cells[data-v-25b33bf5]{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.kpi-work__cell[data-v-25b33bf5]{background:#f8fafc;border:1px solid #f1f5f9;border-radius:12px;flex-direction:column;gap:3px;padding:10px 12px;display:flex}.kpi-work__cl[data-v-25b33bf5]{color:#64748b;text-transform:uppercase;letter-spacing:.3px;font-size:11.5px}.kpi-work__cv[data-v-25b33bf5]{color:#0f172a;font-size:17px;font-weight:700}.kpi-work__cv--ok[data-v-25b33bf5]{color:#16a34a}.kpi-work__cv--warn[data-v-25b33bf5]{color:#dc2626}.kpi-work__bar[data-v-25b33bf5]{background:#f1f5f9;border-radius:999px;height:6px;margin-top:12px;overflow:hidden}.kpi-work__bar-fill[data-v-25b33bf5]{background:var(--primary);border-radius:999px;height:100%;transition:width .4s}.kpi-card-flash[data-v-25b33bf5]{animation:1.5s ease-out kpiFlashPop-25b33bf5;transform:translateY(-2px);border-color:#16a34a73!important;box-shadow:0 0 0 3px #16a34a24,0 8px 20px #16a34a1f!important}.kpi-card-flash--balance[data-v-25b33bf5]{animation-duration:1.8s}.kpi-card-flash--spent[data-v-25b33bf5]{animation-name:kpiFlashPopRed-25b33bf5;border-color:#dc26266b!important;box-shadow:0 0 0 3px #dc262621,0 8px 20px #dc26261f!important}@keyframes kpiFlashPop-25b33bf5{0%{transform:scale(1.02)}35%{transform:scale(1.01)}to{box-shadow:none;border-color:var(--border);transform:translateY(0)}}@keyframes kpiFlashPopRed-25b33bf5{0%{transform:scale(1.02)}35%{transform:scale(1.01)}to{box-shadow:none;border-color:var(--border);transform:translateY(0)}}.tabs-shell[data-v-25b33bf5]{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:8px 14px 14px}.tabs__row[data-v-25b33bf5]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.tabs__list[data-v-25b33bf5]{background:var(--surface-muted);border-radius:6px;gap:2px;padding:3px;display:inline-flex}.tbtn[data-v-25b33bf5]{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;gap:6px;padding:7px 11px;font-size:12.5px;font-weight:500;transition:all .15s;display:inline-flex}.tbtn[data-v-25b33bf5]:hover{background:var(--surface);color:var(--text-primary)}.tbtn--active[data-v-25b33bf5]{background:var(--primary)!important;color:var(--primary-text,#fff)!important}.tbtn__badge[data-v-25b33bf5]{background:var(--border-soft);color:var(--text-secondary);border-radius:999px;padding:1px 7px;font-size:10.5px;font-weight:600}.tabs__actions[data-v-25b33bf5]{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.btn[data-v-25b33bf5]{cursor:pointer;border:1px solid #0000;border-radius:6px;align-items:center;gap:6px;padding:7px 12px;font-size:12px;font-weight:500;transition:all .15s;display:inline-flex}.btn--primary[data-v-25b33bf5]{background:var(--primary);color:var(--primary-text,#fff)}.btn--primary[data-v-25b33bf5]:hover{filter:brightness(1.05)}.btn--primary[data-v-25b33bf5]:disabled{opacity:.5;cursor:not-allowed}.btn--success[data-v-25b33bf5]{color:#fff;background:#16a34a}.btn--success[data-v-25b33bf5]:hover{filter:brightness(1.04)}.btn--info[data-v-25b33bf5]{background:var(--primary);color:var(--primary-text,#fff)}.btn--ghost[data-v-25b33bf5]{background:var(--surface);color:var(--text-secondary);border:1px solid var(--border)}.btn--ghost[data-v-25b33bf5]:hover{background:var(--surface-muted);color:var(--text-primary)}.filters__row[data-v-25b33bf5]{background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;padding:8px;display:flex}.fsearch[data-v-25b33bf5]{background:var(--surface);border:1px solid var(--border);min-width:220px;color:var(--text-secondary);border-radius:6px;align-items:center;gap:6px;padding:6px 9px;display:inline-flex}.fsearch input[data-v-25b33bf5]{background:0 0;border:0;outline:0;flex:1;font-size:12px}.fdd[data-v-25b33bf5]{background:var(--surface);border:1px solid var(--border);color:var(--text-primary);border-radius:6px;padding:0}.fdd select[data-v-25b33bf5]{cursor:pointer;appearance:none;background:0 0;border:0;outline:0;min-width:150px;padding:6px 24px 6px 9px;font-size:12px}.fdd input[data-v-25b33bf5]{background:0 0;border:0;outline:0;padding:6px 8px}.fdate input[type=date][data-v-25b33bf5]{color:var(--text-primary);font-size:12px}.fbtn[data-v-25b33bf5]{padding:6px 10px;font-size:12px}.tab-panel[data-v-25b33bf5]{position:relative}.panel-empty[data-v-25b33bf5]{text-align:center;color:#6b7280;border:1px dashed #d1d5db;border-radius:14px;padding:50px 20px}.panel-empty h4[data-v-25b33bf5]{color:#334155;margin:12px 0 6px;font-size:16px}.panel-empty p[data-v-25b33bf5]{color:#6b7280;max-width:520px;margin:0 auto;font-size:13px;line-height:1.5}.panel-empty--err[data-v-25b33bf5]{color:#dc2626;background:#fef2f2;border-color:#fecaca}.panel-empty--placeholder svg[data-v-25b33bf5],.panel-empty--placeholder .material-symbols-outlined[data-v-25b33bf5]{color:#cbd5e1!important}.tx-table[data-v-25b33bf5]{border-collapse:collapse;background:#fff;width:100%}.tx-table thead th[data-v-25b33bf5]{text-align:left;color:#64748b;border-bottom:1px solid var(--border,#e2e8f0);letter-spacing:.2px;background:#f8fafc;padding:11px 12px;font-size:12px;font-weight:600}.tx-table tbody td[data-v-25b33bf5]{vertical-align:middle;color:#111827;border-bottom:1px solid #f1f5f9;padding:13px 12px;font-size:13.5px}.tx-table tbody tr:hover td[data-v-25b33bf5]{background:#fafbfc}.td-date[data-v-25b33bf5]{color:#475569;font-variant-numeric:tabular-nums}.td-sum[data-v-25b33bf5]{font-variant-numeric:tabular-nums;font-weight:700}.td-sum--debit[data-v-25b33bf5]{color:#be123c}.td-sum--enroll[data-v-25b33bf5]{color:#047857}.td-cat[data-v-25b33bf5]{color:#334155;align-items:center;gap:7px;display:inline-flex}.cat-dot[data-v-25b33bf5]{background:#cbd5e1;border-radius:999px;flex-shrink:0;width:10px;height:10px;display:inline-block}.td-contra[data-v-25b33bf5]{color:#334155}.td-desc[data-v-25b33bf5]{color:#475569;max-width:360px}.td-rec[data-v-25b33bf5]{min-width:80px}.td-actions[data-v-25b33bf5]{justify-content:flex-end;gap:4px;display:flex}.tbtn-mini[data-v-25b33bf5]{color:#475569;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.tbtn-mini[data-v-25b33bf5]:hover{color:#0f172a;background:#fff;border-color:#e2e8f0}.st-badge[data-v-25b33bf5]{letter-spacing:.2px;border-radius:999px;padding:4px 10px;font-size:11.5px;font-weight:600;display:inline-block}.stb-confirmed[data-v-25b33bf5]{color:#166534;background:#dcfce7;border:1px solid #bbf7d0}.stb-draft[data-v-25b33bf5]{color:#475569;background:#f1f5f9;border:1px solid #e2e8f0}.stb-disputed[data-v-25b33bf5]{color:#92400e;background:#fef3c7;border:1px solid #fde68a}.rec-chip[data-v-25b33bf5]{color:#4338ca;width:28px;height:28px;font:inherit;cursor:pointer;background:#eef2ff;border:1px solid #e0e7ff;border-radius:8px;justify-content:center;align-items:center;margin-right:4px;padding:0;text-decoration:none;display:inline-flex}.rec-chip[data-v-25b33bf5]:hover{background:#e0e7ff;transform:translateY(-1px)}.rec-chip--count[data-v-25b33bf5]{color:#64748b;cursor:default;background:#f8fafc;border:1px dashed #cbd5e1;font-size:11px;font-weight:700}.rec-chip--add[data-v-25b33bf5]{color:#94a3b8;cursor:pointer;background:#fff;border:1px dashed #cbd5e1}.rec-chip--add[data-v-25b33bf5]:hover{color:#334155;background:#f8fafc;border-color:#94a3b8}.rv-body[data-v-25b33bf5]{background:#f8fafc;justify-content:center;align-items:flex-start;padding:16px 22px;display:flex}.rv-img[data-v-25b33bf5]{border:1px solid var(--border,#e5e5e5);border-radius:10px;max-width:100%;max-height:70vh;box-shadow:0 2px 12px #00000014}.rv-pdf[data-v-25b33bf5]{border:1px solid var(--border,#e5e5e5);background:#fff;border-radius:10px;width:100%;height:70vh}.work-summary[data-v-25b33bf5]{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.wscard[data-v-25b33bf5]{border:1px solid var(--border,#e5e5e5);background:linear-gradient(#fff,#f9fafb);border-radius:14px;padding:18px 20px}.ws__label[data-v-25b33bf5]{color:#64748b;font-size:12.5px;font-weight:500;display:block}.ws__value[data-v-25b33bf5]{color:#0f172a;font-variant-numeric:tabular-nums;margin:6px 0 10px;font-size:24px;font-weight:800;display:block}.ws__value--green[data-v-25b33bf5]{color:#16a34a}.ws__value--red[data-v-25b33bf5]{color:#dc2626}.ws__progress[data-v-25b33bf5]{background:#e2e8f0;border-radius:999px;height:8px;margin-bottom:8px;overflow:hidden}.ws__bar[data-v-25b33bf5]{background:linear-gradient(90deg,#16a34a,#22c55e);height:100%;transition:all .3s}.wscard small[data-v-25b33bf5]{color:#64748b;font-size:12px;line-height:1.5;display:block}.wscard--remain .ws__value[data-v-25b33bf5]{color:#dc2626}.wscard--ok[data-v-25b33bf5]{background:linear-gradient(#f0fdf4,#fff);border-color:#bbf7d0}.ws__ok[data-v-25b33bf5]{font-weight:600;color:#15803d!important}.worktable[data-v-25b33bf5]{border-collapse:collapse;background:#fff;width:100%}.worktable th[data-v-25b33bf5]{text-align:left;color:#64748b;border-bottom:1px solid var(--border,#e2e8f0);background:#f8fafc;padding:11px 12px;font-size:12px;font-weight:600}.worktable td[data-v-25b33bf5]{vertical-align:middle;color:#111827;border-bottom:1px solid #f1f5f9;padding:14px 12px;font-size:13.5px}.worktable tbody tr.ws-paid[data-v-25b33bf5]{background:#f0fdf4}.worktable tbody tr.ws-paid td[data-v-25b33bf5]{color:#14532d}.wt-stage[data-v-25b33bf5]{max-width:360px}.wts-name[data-v-25b33bf5]{color:#0f172a;font-weight:600}.wts-note[data-v-25b33bf5]{color:#6b7280;margin-top:4px;font-size:12px}.wt-date[data-v-25b33bf5]{color:#475569;font-variant-numeric:tabular-nums;font-size:13px}.wt-sum[data-v-25b33bf5]{font-variant-numeric:tabular-nums;font-weight:700}.wt-sum--green[data-v-25b33bf5]{color:#047857}.wt-sum--red[data-v-25b33bf5]{color:#dc2626}.wt-progress[data-v-25b33bf5]{min-width:120px}.mini-bar[data-v-25b33bf5]{background:#e2e8f0;border-radius:999px;height:8px;margin-bottom:3px;overflow:hidden}.mini-bar__fill[data-v-25b33bf5]{background:var(--primary);height:100%;transition:all .3s}.wt-progress small[data-v-25b33bf5]{color:#64748b;font-size:11px;font-weight:600}.wsb-paid[data-v-25b33bf5]{color:#166534;background:#dcfce7;border:1px solid #bbf7d0}.wsb-pending[data-v-25b33bf5]{color:#475569;background:#f1f5f9;border:1px solid #e2e8f0}.wsb-partial[data-v-25b33bf5]{color:#1e40af;background:#dbeafe;border:1px solid #bfdbfe}.wsb-overdue[data-v-25b33bf5]{color:#991b1b;background:#fee2e2;border:1px solid #fecaca}.form-row-4[data-v-25b33bf5]{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:12px;display:grid}.form-row-4 .ff--wide[data-v-25b33bf5]{grid-column:span 2}.ff[data-v-25b33bf5]{flex-direction:column;gap:6px;display:flex}.ff>span[data-v-25b33bf5]{color:#475569;font-size:12.5px;font-weight:600}.ff input[data-v-25b33bf5],.ff select[data-v-25b33bf5],.ff textarea[data-v-25b33bf5]{border:1px solid var(--border,#d1d5db);color:#0f172a;background:#fff;border-radius:10px;outline:0;padding:9px 12px;font-family:inherit;font-size:13.5px;transition:all .15s}.ff input[data-v-25b33bf5]:focus,.ff select[data-v-25b33bf5]:focus,.ff textarea[data-v-25b33bf5]:focus{border-color:var(--primary);box-shadow:none}.form-err[data-v-25b33bf5]{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;margin-bottom:14px;padding:10px 14px;font-size:13px}.f-upload[data-v-25b33bf5]{background:#f9fafb;border:1px dashed #cbd5e1;border-radius:12px;margin-top:6px;padding:12px}.fu-label[data-v-25b33bf5]{cursor:pointer;color:#475569;align-items:center;gap:12px;display:flex}.fu-label>span[data-v-25b33bf5]{flex-direction:column;gap:2px;display:flex}.fu-label strong[data-v-25b33bf5]{color:#111;font-size:13px}.fu-label small[data-v-25b33bf5]{color:#6b7280;font-size:11.5px}.fu-label input[type=file][data-v-25b33bf5]{display:none}.fu-chips[data-v-25b33bf5]{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.fu-chip[data-v-25b33bf5]{border:1px solid var(--border,#e2e8f0);color:#334155;background:#fff;border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:12px;display:inline-flex}.fu-chip button[data-v-25b33bf5]{color:#94a3b8;cursor:pointer;background:0 0;border:0;padding:0 2px;font-size:16px;line-height:1}.fu-chip button[data-v-25b33bf5]:hover{color:#dc2626}.fu-chips--exist[data-v-25b33bf5]{border-top:1px dashed #e2e8f0;margin-top:8px;padding-top:10px}.fu-chip--exist[data-v-25b33bf5]{text-decoration:none}.fu-chip--exist[data-v-25b33bf5]:hover{background:#eef2ff}.kimi-modal[data-v-25b33bf5]{z-index:10000;background:#0f172a7a;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.kimi-modal__box[data-v-25b33bf5]{background:#fff;border-radius:18px;width:100%;max-width:520px;overflow:hidden;box-shadow:0 20px 40px #00000026}.kimi-modal__box--md[data-v-25b33bf5]{max-width:680px}.kimi-modal__box--lg[data-v-25b33bf5]{max-width:820px}.kimi-modal__box header[data-v-25b33bf5]{border-bottom:1px solid var(--border,#f1f5f9);justify-content:space-between;align-items:center;padding:18px 22px;display:flex}.kimi-modal__box header h3[data-v-25b33bf5]{color:#111;margin:0;font-size:17px;font-weight:700}.kimi-modal__close[data-v-25b33bf5]{cursor:pointer;color:#475569;background:#f8fafc;border:0;border-radius:10px;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.kimi-modal__close[data-v-25b33bf5]:hover{color:#111;background:#f1f5f9}.kimi-modal__body[data-v-25b33bf5]{max-height:72vh;padding:18px 22px;overflow:auto}.kimi-modal__footer[data-v-25b33bf5]{border-top:1px solid var(--border,#f1f5f9);background:#f9fafb;justify-content:flex-end;gap:10px;padding:14px 22px;display:flex}.fatal-error-block[data-v-25b33bf5]{background:linear-gradient(#fff1f2,#fff 60%);border:1.5px solid #fecaca;border-left:6px solid #dc2626;border-radius:18px;grid-template-columns:72px 1fr;align-items:start;gap:18px;margin:22px 0 26px;padding:26px 28px 24px;display:grid;box-shadow:0 10px 25px -8px #dc262626}.feb__icon[data-v-25b33bf5]{color:#991b1b;background:linear-gradient(#fee2e2,#fecaca);border:1px solid #fca5a5;border-radius:16px;justify-content:center;align-items:center;width:72px;height:72px;display:flex}.feb__content h3[data-v-25b33bf5]{color:#991b1b;letter-spacing:.1px;margin:0 0 8px;font-size:19px;font-weight:800}.feb__content p[data-v-25b33bf5]{color:#1f2937;margin:0 0 10px;font-size:14px;line-height:1.55}.feb__hint[data-v-25b33bf5]{color:#92400e;background:#fff7ed;border:1px dashed #fdba74;border-radius:12px;padding:10px 14px;font-size:12.5px;line-height:1.55}.feb__actions[data-v-25b33bf5]{flex-wrap:wrap;gap:9px;margin-top:16px;display:flex}.feb__raw[data-v-25b33bf5]{color:#475569;word-break:break-all;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:10px;margin-top:12px;padding:10px 13px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11.5px;line-height:1.6}.offline-banner[data-v-25b33bf5]{background:#fffbeb;border:1px solid #fcd34d;border-left:5px solid #f59e0b;border-radius:14px;align-items:center;gap:14px;margin:0 0 18px;padding:12px 16px;display:flex}.offline-banner.syncing[data-v-25b33bf5]{opacity:.75}.ob__icon[data-v-25b33bf5]{color:#d97706;display:flex}.ob__text[data-v-25b33bf5]{flex:1;min-width:0}.ob__text strong[data-v-25b33bf5]{color:#92400e;font-size:14px;display:block}.ob__text span[data-v-25b33bf5]{color:#a16207;margin-top:2px;font-size:12.5px;line-height:1.45;display:block}.ob__actions[data-v-25b33bf5]{flex:none}.btn--small[data-v-25b33bf5]{padding:7px 14px;font-size:12.5px}@media (width<=1080px){.kpi-work__cells[data-v-25b33bf5],.work-summary[data-v-25b33bf5]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=780px){#page_foreman_expenses[data-v-25b33bf5]{padding:16px 14px 30px}.kpi-hero[data-v-25b33bf5]{padding:18px}.kpi-hero__value[data-v-25b33bf5]{font-size:34px}.kpi-sub[data-v-25b33bf5],.kpi-work__cells[data-v-25b33bf5],.work-summary[data-v-25b33bf5]{grid-template-columns:1fr}.form-row-4[data-v-25b33bf5]{grid-template-columns:repeat(2,minmax(0,1fr))}.form-row-4 .ff--wide[data-v-25b33bf5]{grid-column:span 2}.fsearch[data-v-25b33bf5]{width:100%;min-width:100%}.tx-table[data-v-25b33bf5],.worktable[data-v-25b33bf5]{font-size:12.5px}.tabs__actions[data-v-25b33bf5]{justify-content:flex-start;width:100%}.head__subtitle[data-v-25b33bf5]{padding-left:0}.kimi-modal[data-v-25b33bf5]{padding:8px}.kimi-modal__body[data-v-25b33bf5]{padding:14px 16px}}
