@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--brand-primary: #004560;--brand-primary-hover: #003348;--brand-primary-active: #002230;--text-primary: #111827;--text-secondary: #4B5563;--bg-primary: #FFFFFF;--bg-secondary: #F3F4F6;--border-color: #E5E7EB;--border-focus: #004560;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--radius-md: .5rem;--radius-lg: .75rem;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1)}html{font-size:80%}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.5}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2}input,button{font-family:inherit;font-size:1rem}button{cursor:pointer;background:none;border:none}input:focus,button:focus{outline:none}.ai-launcher{position:fixed;bottom:2rem;right:2rem;z-index:9999}.ai-fab{position:relative;z-index:2;width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px #6366f173;transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s ease,background .2s ease}.ai-fab:hover{transform:scale(1.1);box-shadow:0 12px 32px #6366f18c}.ai-fab.open{background:linear-gradient(135deg,#ef4444,#f97316);box-shadow:0 8px 24px #ef444466}.ai-app-btn{position:absolute;bottom:6px;right:4px;height:40px;padding:0 16px;border-radius:20px;white-space:nowrap;background:var(--accent, #6366f1);color:#fff;font-size:.8125rem;font-weight:700;letter-spacing:.01em;text-decoration:none;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #00000038;opacity:0;transform:translate(0) scale(.5);pointer-events:none;transition:opacity .2s ease var(--delay, 0ms),transform .28s cubic-bezier(.34,1.56,.64,1) var(--delay, 0ms),box-shadow .2s ease,filter .15s ease}.ai-app-btn.visible{opacity:1;transform:translate(var(--tx, 0px),var(--ty, -90px)) scale(1);pointer-events:auto}.ai-app-btn:hover{box-shadow:0 8px 28px #0000004d;filter:brightness(1.13)}.notif-wrapper{position:relative}.notification-badge{position:absolute;top:-2px;right:-2px;min-width:18px;height:18px;padding:0 4px;background:#ef4444;color:#fff;border-radius:9px;font-size:.6875rem;font-weight:700;display:flex;align-items:center;justify-content:center;border:2px solid #ffffff;line-height:1;pointer-events:none}.notif-panel{position:absolute;top:calc(100% + 8px);right:-140px;width:360px;background:#fff;border:1px solid #F0F2F5;border-radius:12px;box-shadow:0 10px 30px #0000001f;z-index:100;overflow:hidden}.notif-panel-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #F0F2F5}.notif-panel-title{font-weight:600;font-size:.9375rem;color:#1a202c}.notif-mark-all{display:flex;align-items:center;gap:.375rem;font-size:.8125rem;color:var(--brand-primary);background:none;border:none;cursor:pointer;padding:0}.notif-mark-all:hover{text-decoration:underline}.notif-list{max-height:400px;overflow-y:auto}.notif-empty{padding:2rem;text-align:center;color:#a0aec0;font-size:.875rem}.notif-item{display:flex;align-items:flex-start;gap:.75rem;padding:.875rem 1.25rem;cursor:pointer;transition:background .15s;border-bottom:1px solid #F7F8FA}.notif-item:last-child{border-bottom:none}.notif-item:hover{background:#f7f8fa}.notif-item--unread{background:#f0f7ff}.notif-item--unread:hover{background:#e6f1ff}.notif-icon{flex-shrink:0;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#f4f7fe;color:#4a5568}.notif-icon--birthday{background:#fff7ed;color:#f97316}.notif-icon--bpm_approval{background:#eff6ff;color:#3b82f6}.notif-icon--bpm_approved{background:#f0fdf4;color:#22c55e}.notif-icon--bpm_rejected{background:#fff1f2;color:#ef4444}.notif-content{flex:1;min-width:0}.notif-title{font-size:.875rem;color:#1a202c;line-height:1.4;margin:0 0 .25rem}.notif-body{font-size:.8125rem;color:#718096;margin:0 0 .25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notif-time{font-size:.75rem;color:#a0aec0}.notif-unread-dot{flex-shrink:0;width:8px;height:8px;background:var(--brand-primary);border-radius:50%;margin-top:4px}.notif-toast{position:fixed;bottom:28px;right:28px;z-index:9999;display:flex;align-items:center;gap:1rem;padding:1.25rem 1.25rem 1.25rem 1.125rem;background:#fff;border:1px solid #E8ECF2;border-radius:16px;box-shadow:0 12px 32px #00000024;width:340px;animation:notif-toast-in .35s cubic-bezier(.34,1.56,.64,1)}@keyframes notif-toast-in{0%{transform:translate(120%);opacity:0}to{transform:translate(0);opacity:1}}.notif-toast-icon{flex-shrink:0;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#eff6ff;color:var(--brand-primary)}.notif-toast-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.notif-toast-title{font-size:.8125rem;font-weight:600;color:#718096}.notif-toast-message{font-size:.9375rem;font-weight:500;color:#1a202c;line-height:1.4}.notif-toast-close{flex-shrink:0;background:none;border:none;cursor:pointer;color:#a0aec0;padding:4px;display:flex;align-items:center;border-radius:6px;transition:color .15s;align-self:flex-start}.notif-toast-close:hover{color:#4a5568}body{background-color:#f4f7fe}.dashboard-wrapper{display:flex;height:100vh;width:100%}.dashboard-container{display:flex;flex:1;background-color:#fff;box-shadow:0 20px 40px -10px #0000000d;overflow:hidden}.dash-sidebar{display:flex;flex-direction:column;width:260px;padding:2rem 1.5rem;background-color:#fff;border-right:1px solid #F0F2F5;overflow-y:auto;transition:width .3s cubic-bezier(.4,0,.2,1)}.dash-sidebar.collapsed{width:80px;padding:2rem .75rem}.brand-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2.5rem;padding-left:.5rem}.brand-logo-group{display:flex;align-items:center;gap:1rem}.sidebar-toggle{background:transparent;border:none;cursor:pointer;color:#a0aec0;display:flex;align-items:center;justify-content:center;padding:.25rem;transition:color .2s}.sidebar-toggle:hover{color:var(--brand-primary)}.dash-sidebar.collapsed .brand-header{flex-direction:column;gap:1.5rem;padding-left:0}.dash-sidebar.collapsed .brand-logo-group{flex-direction:column}.dash-sidebar.collapsed .brand-name{display:none}.brand-logo{width:32px;height:32px;object-fit:contain}.brand-name{font-size:1.25rem;font-weight:700;color:var(--text-primary);letter-spacing:-.5px}.menu-group{margin-bottom:2rem}.mt-auto{margin-top:auto}.menu-label{display:block;font-size:.75rem;font-weight:600;color:#a0aec0;letter-spacing:1px;margin-bottom:1rem;padding-left:1rem;transition:opacity .2s}.dash-sidebar.collapsed .menu-label{display:none}.dash-nav{display:flex;flex-direction:column;gap:.25rem}.nav-item{display:flex;align-items:center;gap:1rem;padding:.875rem 1rem;width:100%;border-radius:12px;font-weight:600;color:#718096;transition:all .2s ease;overflow:hidden;white-space:nowrap}.dash-sidebar.collapsed .nav-item{justify-content:center;padding:.875rem}.dash-sidebar.collapsed .nav-item span{display:none}.nav-item:hover{background-color:#f7fafc;color:var(--text-primary)}.nav-item.active{background-color:#f4f7fe;color:var(--brand-primary)}.nav-icon{opacity:.8;flex-shrink:0}.nav-item.active .nav-icon{color:var(--brand-primary);opacity:1}.nav-group{display:flex;flex-direction:column}.nav-group-trigger{justify-content:flex-start}.nav-chevron{margin-left:auto;flex-shrink:0;color:#a0aec0;transition:transform .25s cubic-bezier(.4,0,.2,1),color .2s}.nav-chevron.rotated{transform:rotate(-180deg)}.nav-group-trigger.active .nav-chevron,.nav-group-trigger.open .nav-chevron{color:var(--brand-primary)}.nav-sub-group{display:flex;flex-direction:column;gap:.125rem;padding-left:1rem;margin-top:.125rem;overflow:hidden;animation:slideDown .2s cubic-bezier(.4,0,.2,1)}@keyframes slideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.nav-sub-item{padding:.625rem .875rem;font-size:.875rem;font-weight:500;border-radius:10px;position:relative}.nav-sub-item.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:60%;background-color:var(--brand-primary);border-radius:0 3px 3px 0}.nav-sub-item .nav-icon{opacity:.7}.nav-sub-item.active .nav-icon{opacity:1}.dash-sidebar.collapsed .nav-group-trigger .nav-chevron{display:none}.text-red{color:#ef4444!important}.text-gray{color:#a0aec0}.friends-list{display:flex;flex-direction:column;gap:1rem;padding:0 1rem}.friend-item{display:flex;align-items:center;gap:1rem}.friend-item img{width:40px;height:40px;border-radius:50%;object-fit:cover}.friend-info{display:flex;flex-direction:column}.friend-name{font-size:.875rem;font-weight:600;color:var(--text-primary)}.friend-status{font-size:.75rem;color:#a0aec0}.dash-main{flex:1;display:flex;flex-direction:column;background-color:#fafafc;overflow:hidden}.dash-content{flex:1;overflow-y:auto;display:flex;flex-direction:column}.dash-header{display:flex;justify-content:flex-end;align-items:center;height:80px;min-height:80px;flex-shrink:0;padding:0 2rem;background-color:#fff}.search-bar{display:flex;align-items:center;gap:.75rem;background-color:#f4f7fe;padding:.75rem 1.5rem;border-radius:999px;width:100%;max-width:400px}.search-bar input{border:none;background:transparent;width:100%;font-size:.875rem;color:var(--text-primary)}.search-bar input::placeholder{color:#a0aec0}.search-icon{color:#a0aec0}.header-actions{display:flex;align-items:center;gap:1.5rem}.icon-btn-round{position:relative;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background-color:#f4f7fe;color:#4a5568;transition:all .2s}.icon-btn-round:hover{background-color:#e2e8f0;color:var(--brand-primary)}.notification-dot{position:absolute;top:10px;right:12px;width:6px;height:6px;background-color:#ef4444;border-radius:50%;border:1px solid #FFFFFF}.user-profile-compact{display:flex;align-items:center;gap:.75rem;margin-left:1rem}.user-profile-compact img{width:44px;height:44px;border-radius:50%;object-fit:cover}.user-avatar-initials{width:44px;height:44px;border-radius:50%;background-color:var(--brand-primary, #004560);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:700;letter-spacing:.02em;flex-shrink:0;-webkit-user-select:none;user-select:none}.user-name{font-weight:600;font-size:.9375rem}.content-grid{display:grid;grid-template-columns:1fr;gap:2rem;padding:2rem;flex:1}@media(min-width:1200px){.content-grid{grid-template-columns:1fr 340px}}.center-content{display:flex;flex-direction:column;gap:2rem}.quick-stats-column{display:flex;flex-direction:column;gap:1.5rem}.stat-card{flex:1;display:flex;align-items:center;background-color:#fff;padding:1.25rem 1.5rem;border-radius:16px;box-shadow:0 4px 12px #00000005;gap:1rem}.stat-icon-wrapper{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon-wrapper.blue{background-color:#0045601a;color:#004560}.stat-icon-wrapper.pink{background-color:#ec48991a;color:#ec4899}.stat-info{flex:1;display:flex;flex-direction:column}.stat-value{font-size:1.25rem;font-weight:700;color:var(--text-primary)}.stat-label{font-size:.8125rem;color:#a0aec0}.feed-header-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:-.5rem}.feed-header-title h2{font-size:1.25rem;font-weight:700}.create-post-card{display:flex;flex-direction:column;background-color:#fff;padding:1.25rem;border-radius:16px;box-shadow:0 4px 12px #00000005;gap:1rem}.create-post-top{display:flex;gap:1rem;align-items:flex-start}.small-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;flex-shrink:0;margin-top:.25rem}.create-post-textarea{flex:1;border:none;background-color:transparent;font-size:.9375rem;color:var(--text-primary);resize:none;outline:none;font-family:inherit}.create-post-textarea::placeholder{color:#a0aec0}.create-post-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:.75rem;border-top:1px solid #F0F2F5;margin-left:calc(36px + 1rem)}.create-post-actions-left{display:flex;gap:.5rem}.action-icon-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;color:#718096;transition:all .2s}.action-icon-btn:hover{background-color:#f4f7fe;color:var(--brand-primary)}.btn-primary{display:flex;align-items:center;gap:.5rem;background-color:var(--brand-primary);color:#fff;padding:.5rem 1rem;border-radius:999px;font-weight:600;font-size:.875rem;transition:all .2s}.btn-primary:hover:not(:disabled){background-color:var(--brand-primary-hover);transform:translateY(-1px)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.feed-stream{display:flex;flex-direction:column;gap:1.5rem}.post-card{background-color:#fff;border-radius:16px;box-shadow:0 4px 12px #00000005;overflow:hidden}.post-header{display:flex;align-items:center;padding:1.5rem}.post-avatar{width:48px;height:48px;border-radius:50%;object-fit:cover;margin-right:1rem}.post-avatar-initials{width:48px;height:48px;border-radius:50%;background:var(--accent-blue, #3b82f6);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1rem;flex-shrink:0;margin-right:1rem}.small-avatar-placeholder{width:36px;height:36px;border-radius:50%;background:var(--bg-secondary, #f1f5f9);display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0;margin-top:.25rem}.post-delete-btn{margin-left:auto;color:var(--text-muted, #94a3b8)}.post-delete-btn:hover,.interaction-btn.liked{color:#ef4444}.post-author{font-weight:600;font-size:1rem}.post-author-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.post-department-badge{background-color:#ebf8ff;color:#3182ce;font-size:.6875rem;font-weight:600;padding:.125rem .375rem;border-radius:4px}.post-time-row{display:flex;align-items:center;gap:.375rem}.post-time-dot{color:#cbd5e0;font-size:.6875rem}.post-time{font-size:.8125rem;color:#a0aec0}.post-content{padding:0 1.5rem}.post-image-wrapper{margin:1rem -1.5rem 0}.post-image{width:100%;max-height:400px;object-fit:cover}.post-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.post-tag{display:flex;align-items:center;gap:.25rem;background-color:#f4f7fe;color:#4a5568;font-size:.75rem;font-weight:500;padding:.375rem .625rem;border-radius:6px;transition:all .2s;cursor:pointer}.post-tag:hover{background-color:#e2e8f0;color:var(--brand-primary)}.post-actions{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-top:1px solid #F0F2F5;margin-top:1rem}.post-actions-left{display:flex;gap:1rem}.post-actions-right{display:flex;align-items:center}.post-views-count{display:flex;align-items:center;gap:.375rem;color:#a0aec0;font-size:.8125rem;font-weight:500}.secondary-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background-color:#f4f7fe;color:#718096;border-radius:8px;font-weight:600;font-size:.875rem;transition:all .2s}.secondary-btn:hover{background-color:#e2e8f0;color:var(--brand-primary)}.right-content{display:flex;flex-direction:column;gap:2rem}.widget-card{background-color:#fff;border-radius:24px;box-shadow:0 4px 20px #00000008;padding:1.5rem}.widget-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.widget-title{font-size:1.125rem;font-weight:700}.plus-btn{width:28px;height:28px;border-radius:50%;border:1px solid #E2E8F0;display:flex;align-items:center;justify-content:center;color:#718096;transition:all .2s}.plus-btn:hover{background-color:#f4f7fe;color:var(--brand-primary)}.progress-circle-container{display:flex;justify-content:center;margin-bottom:1rem}.progress-circle{position:relative;width:100px;height:100px;border-radius:50%;background:conic-gradient(var(--brand-primary) 80%,#F4F7FE 0);display:flex;align-items:center;justify-content:center}.progress-circle:before{content:"";position:absolute;width:86px;height:86px;background-color:#fff;border-radius:50%}.progress-circle img{position:relative;width:64px;height:64px;border-radius:50%;object-fit:cover;z-index:2}.progress-badge{position:absolute;top:0;right:-10px;background-color:#7c3aed;color:#fff;font-size:.75rem;font-weight:700;padding:.25rem .5rem;border-radius:999px;z-index:3}.greeting-text{text-align:center;margin-bottom:2rem}.greeting-text h4{font-size:1rem;font-weight:700;margin-bottom:.25rem}.greeting-text p{font-size:.8125rem;color:#a0aec0}.bar-chart-placeholder{display:flex;justify-content:space-between;align-items:flex-end;height:100px;padding:1rem;background-color:#f9fafc;border-radius:16px}.bar-col{display:flex;flex-direction:column;align-items:center;gap:.5rem;width:20%;height:100%;justify-content:flex-end}.bar{width:100%;background-color:#e2e8f0;border-radius:6px}.bar.highlight{background-color:#7c3aed}.bar.brand{background-color:var(--brand-primary)}.bar-label{font-size:.75rem;color:#a0aec0;font-weight:600}.list-items{display:flex;flex-direction:column;gap:1rem}.list-item{display:flex;align-items:center;gap:1rem;padding-bottom:1rem;border-bottom:1px dashed #E2E8F0}.list-item:last-child{border-bottom:none;padding-bottom:0}.item-icon-wrapper,.item-avatar{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;background-color:#f4f7fe;object-fit:cover;flex-shrink:0}.item-info{flex:1;display:flex;flex-direction:column}.item-title{font-size:.875rem;font-weight:700;color:var(--text-primary)}.item-subtitle{font-size:.75rem;color:#a0aec0}.brand-color{color:var(--brand-primary)}.action-btn-pill{padding:.5rem 1rem;font-size:.75rem;font-weight:600;background-color:#f4f7fe;color:var(--text-primary);border-radius:999px;border:1px solid transparent;transition:all .2s}.action-btn-pill:hover{background-color:#fff;border-color:#e2e8f0;box-shadow:0 2px 4px #0000000d}.action-btn-pill.disabled{opacity:.45;cursor:not-allowed;pointer-events:none;background-color:#f0f2f5;color:#a0aec0;border-color:transparent}.view-all-btn-soft{width:100%;display:flex;align-items:center;justify-content:center;gap:4px;margin-top:1.5rem;padding:.75rem;background-color:#f4f7fe;color:var(--brand-primary);font-weight:600;border-radius:12px;transition:all .2s}.view-all-btn-soft:hover{background-color:#e2e8f0}.bd-widget-title-row{display:flex;align-items:center;gap:8px}.bd-cake-icon{color:#f59e0b;flex-shrink:0}.bd-count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;background-color:#fef3c7;color:#d97706;border-radius:999px;font-size:.75rem;font-weight:700}.bd-loading{text-align:center;padding:1rem;color:#a0aec0;font-size:.875rem}.bd-empty{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.5rem 0;color:#a0aec0;font-size:.875rem}.bd-empty-icon{color:#cbd5e0}.bd-item{display:flex;align-items:center;gap:10px;padding-bottom:1rem;border-bottom:1px dashed #E2E8F0}.bd-item:last-child{border-bottom:none;padding-bottom:0}.bd-avatar-wrap{position:relative;flex-shrink:0}.bd-no-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.8125rem;font-weight:700;letter-spacing:.5px}.bd-no-avatar.sm{width:36px;height:36px;font-size:.75rem}.bd-today-dot{position:absolute;bottom:1px;right:1px;width:10px;height:10px;background-color:#10b981;border:2px solid #fff;border-radius:50%}.bd-right-col{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0}.bd-days-label{font-size:.7rem;font-weight:600;color:#94a3b8;white-space:nowrap}.bd-days-label.today{color:#10b981}.bd-days-label.tomorrow{color:#f59e0b}.bd-days-label.sm{font-size:.6875rem}.bd-modal-overlay{position:fixed;inset:0;background:#0f172a73;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem;animation:fadeInOverlay .2s ease}@keyframes fadeInOverlay{0%{opacity:0}to{opacity:1}}.bd-modal{background:#fff;border-radius:24px;width:100%;max-width:520px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 25px 60px #0000002e;animation:slideUpModal .25s cubic-bezier(.34,1.56,.64,1);overflow:hidden}@keyframes slideUpModal{0%{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.bd-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 1.5rem 1rem;border-bottom:1px solid #F0F2F5;flex-shrink:0}.bd-modal-title-row{display:flex;align-items:center;gap:10px}.bd-modal-title-row h2{font-size:1.125rem;font-weight:700}.bd-modal-close{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#94a3b8;transition:all .2s}.bd-modal-close:hover{background-color:#f1f5f9;color:#334155}.bd-modal-body{overflow-y:auto;padding:1rem 1.5rem 1.5rem;display:flex;flex-direction:column;gap:1.5rem}.bd-month-group{display:flex;flex-direction:column;gap:.5rem}.bd-month-header{display:flex;align-items:center;gap:8px;padding-bottom:6px;border-bottom:2px solid #F1F5F9}.bd-month-label{font-size:.8125rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.8px}.bd-month-count{font-size:.75rem;font-weight:600;background-color:#f1f5f9;color:#64748b;padding:1px 7px;border-radius:999px}.bd-month-list{display:flex;flex-direction:column;gap:2px}.bd-modal-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;transition:background .15s}.bd-modal-item:hover{background-color:#f8fafc}.bd-modal-item.bd-today{background-color:#f0fdf4;border:1px solid #BBF7D0}.bd-modal-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;flex-shrink:0}.bd-modal-info{flex:1;display:flex;flex-direction:column;min-width:0}.bd-modal-name{font-size:.875rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bd-modal-dept{font-size:.75rem;color:#94a3b8}.bd-modal-right{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex-shrink:0}.bd-modal-date{font-size:.75rem;color:#cbd5e1;font-weight:500}.bd-empty-text{text-align:center;color:#94a3b8;padding:2rem}.post-attachments{display:flex;flex-wrap:wrap;gap:.5rem;padding:.75rem 1.5rem 0}.post-attachment-image{max-width:100%;max-height:320px;border-radius:10px;object-fit:cover;cursor:pointer;transition:opacity .15s}.post-attachment-image:hover{opacity:.92}.post-attachment-file{display:inline-flex;align-items:center;gap:6px;padding:.375rem .75rem;background-color:#f4f7fe;color:#4a5568;border-radius:8px;font-size:.8125rem;font-weight:500;text-decoration:none;transition:background .15s}.post-attachment-file:hover{background-color:#e2e8f0;color:var(--brand-primary)}.pending-attachments{display:flex;flex-wrap:wrap;gap:.5rem;padding:0 0 .25rem}.pending-attachment-item{display:flex;align-items:center;gap:6px;padding:4px 8px 4px 4px;background-color:#f4f7fe;border-radius:8px;font-size:.8125rem}.pending-attachment-thumb{width:32px;height:32px;border-radius:5px;object-fit:cover}.pending-attachment-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:#718096}.pending-attachment-name{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#4a5568}.pending-attachment-remove{display:flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;color:#94a3b8;transition:all .15s}.pending-attachment-remove:hover{background-color:#ef4444;color:#fff}.interaction-btn.comments-active{background-color:#ebf8ff;color:#3182ce}.comments-section{padding:0 1.5rem 1.25rem;border-top:1px solid #F0F2F5;margin-top:0}.comments-loading,.comments-empty{padding:.75rem 0;font-size:.8125rem;color:#a0aec0;text-align:center}.comments-list{display:flex;flex-direction:column;gap:.75rem;padding:.75rem 0}.comment-item{display:flex;align-items:flex-start;gap:.625rem}.comment-avatar{width:30px;height:30px;border-radius:50%;object-fit:cover;flex-shrink:0}.comment-avatar-initials{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.6875rem;font-weight:700;flex-shrink:0}.comment-body{flex:1;background-color:#f8fafc;border-radius:10px;padding:.5rem .75rem;min-width:0}.comment-header-row{display:flex;align-items:center;gap:.5rem;margin-bottom:2px}.comment-author{font-size:.8125rem;font-weight:600;color:var(--text-primary)}.comment-time{font-size:.75rem;color:#a0aec0}.comment-text{font-size:.875rem;color:#4a5568;margin:0;word-break:break-word}.comment-delete-btn{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;color:#cbd5e0;flex-shrink:0;margin-top:6px;transition:all .15s}.comment-delete-btn:hover{background-color:#fee2e2;color:#ef4444}.comment-input-row{display:flex;align-items:center;gap:.5rem;padding-top:.75rem}.comment-input{flex:1;padding:.5rem .875rem;border:1px solid #E2E8F0;border-radius:999px;font-size:.875rem;font-family:inherit;color:var(--text-primary);background-color:#f8fafc;outline:none;transition:border-color .15s}.comment-input:focus{border-color:var(--brand-primary);background-color:#fff}.comment-input::placeholder{color:#a0aec0}.comment-send-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background-color:var(--brand-primary);color:#fff;flex-shrink:0;transition:all .15s}.comment-send-btn:hover:not(:disabled){background-color:var(--brand-primary-hover)}.comment-send-btn:disabled{opacity:.45;cursor:not-allowed}.mobile-menu-btn{display:none;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;background-color:#f4f7fe;color:#4a5568;border:none;cursor:pointer;transition:background-color .2s;flex-shrink:0}.mobile-menu-btn:hover{background-color:#e2e8f0}.mobile-sidebar-overlay{display:none;position:fixed;inset:0;background-color:#0006;z-index:99}@media(max-width:768px){.mobile-menu-btn{display:flex}.mobile-sidebar-overlay{display:block}.dash-header{justify-content:space-between;padding:0 1rem}.dash-sidebar{position:fixed;top:0;left:0;height:100%;width:260px!important;z-index:100;transform:translate(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);box-shadow:none}.dash-sidebar.mobile-open{transform:translate(0);box-shadow:4px 0 24px #0000001f}.dash-sidebar .sidebar-toggle{display:none}.dash-sidebar .brand-header{flex-direction:row;gap:0;padding-left:.5rem}.dash-sidebar .brand-logo-group{flex-direction:row}.dash-sidebar .brand-name,.dash-sidebar .menu-label{display:block}.dash-main{width:100%;min-width:0}.user-name{display:none}.content-grid{padding:1rem;gap:1rem}}.company-select-overlay{position:fixed;inset:0;background:#0f172ab3;display:flex;align-items:center;justify-content:center;z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.company-select-modal{background:#fff;border-radius:16px;padding:2.5rem;width:100%;max-width:420px;box-shadow:0 24px 64px #0003}.company-select-header{text-align:center;margin-bottom:2rem;color:var(--brand-primary, #004560)}.company-select-header svg{margin-bottom:.75rem}.company-select-header h2{font-size:1.375rem;font-weight:700;margin:0 0 .5rem;color:#1a202c}.company-select-header p{font-size:.875rem;color:#718096;margin:0}.company-select-list{display:flex;flex-direction:column;gap:.75rem}.company-select-item{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;border:1.5px solid #e2e8f0;border-radius:10px;background:#f8fafc;cursor:pointer;transition:all .15s;font-size:.9375rem;font-weight:500;color:#1a202c;text-align:left}.company-select-item:hover:not(:disabled){border-color:var(--brand-primary, #004560);background:#e8f4f8;color:var(--brand-primary, #004560)}.company-select-item:disabled{opacity:.6;cursor:not-allowed}.company-select-avatar{width:36px;height:36px;border-radius:8px;background:var(--brand-primary, #004560);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1rem;flex-shrink:0}.company-select-name{flex:1}.company-select-spinner{width:16px;height:16px;border:2px solid #cbd5e0;border-top-color:var(--brand-primary, #004560);border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0}.company-switcher-wrapper{position:relative}.company-switcher-btn{display:flex;align-items:center;gap:.4rem;padding:.4rem .75rem;border:1.5px solid #e2e8f0;border-radius:8px;background:#f8fafc;color:#374151;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s;max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.company-switcher-btn:hover{border-color:var(--brand-primary, #004560);background:#e8f4f8;color:var(--brand-primary, #004560)}.company-switcher-dropdown{position:absolute;top:calc(100% + 6px);right:0;min-width:220px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 8px 24px #0000001f;z-index:200;overflow:hidden}.company-switcher-option{display:block;width:100%;padding:.75rem 1rem;text-align:left;font-size:.875rem;color:#374151;background:none;cursor:pointer;transition:background .12s;border-bottom:1px solid #f1f5f9}.company-switcher-option:last-child{border-bottom:none}.company-switcher-option:hover{background:#f0f9ff;color:var(--brand-primary, #004560)}.company-switcher-option.active{background:#e8f4f8;color:var(--brand-primary, #004560);font-weight:600}.departments-container{flex:1;padding:2rem 2.5rem;background-color:#fafafc;overflow-y:auto;display:flex;flex-direction:column}.departments-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.deps-title-area{display:flex;align-items:center;gap:1rem}.deps-title-area h2{font-size:1.75rem;font-weight:700;color:var(--text-primary);letter-spacing:-.5px}.deps-count{background-color:#e2e8f0;color:#4a5568;font-size:.8125rem;font-weight:600;padding:.25rem .625rem;border-radius:999px}.deps-search-box{position:relative;width:350px}.search-icon-deps{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:#a0aec0}.deps-search-box input{width:100%;padding:.875rem 1rem .875rem 2.75rem;border:1px solid #E2E8F0;border-radius:12px;font-size:.9375rem;color:var(--text-primary);background-color:#fff;transition:all .2s;box-shadow:0 2px 8px #00000005}.deps-search-box input:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 3px #0045601a}.departments-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.dept-card{background-color:#fff;border:1px solid #E2E8F0;border-radius:16px;padding:1.5rem;display:flex;flex-direction:column;transition:all .3s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 12px #00000005;cursor:pointer;position:relative;overflow:hidden}.dept-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px -4px #00000014;border-color:#cbd5e0}.dept-card-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.25rem}.dept-icon-box{width:56px;height:56px;border-radius:14px;display:flex;align-items:center;justify-content:center;transition:transform .3s}.dept-card:hover .dept-icon-box{transform:scale(1.05)}.dept-arrow-btn{color:#a0aec0;background:transparent;border:none;cursor:pointer;padding:.25rem;transition:all .2s;opacity:0;transform:translate(-10px)}.dept-card:hover .dept-arrow-btn{opacity:1;transform:translate(0);color:var(--brand-primary)}.dept-name{font-size:1.125rem;font-weight:700;color:var(--text-primary);margin-bottom:1rem;line-height:1.3}.dept-head-info{display:flex;flex-direction:column;gap:.25rem;margin-bottom:1.5rem;padding-bottom:1.25rem;border-bottom:1px dashed #E2E8F0}.dept-head-label{font-size:.75rem;color:#a0aec0;font-weight:500}.dept-head-name{font-size:.9375rem;font-weight:600;color:var(--text-primary)}.dept-stats{display:flex;align-items:center;justify-content:space-between;margin-top:auto}.dept-stat-item{display:flex;align-items:center;gap:.375rem;font-size:.8125rem;color:#718096;font-weight:500}.dept-project-breakdown{display:flex;flex-direction:column;gap:.375rem;margin-top:auto}.dept-project-row{display:flex;align-items:center;gap:.5rem;padding:.4rem .625rem;background:#f8fafc;border-radius:8px}.dept-project-tag{font-size:.7rem;font-weight:700;color:#3730a3;background:#eef2ff;padding:.15rem .45rem;border-radius:5px;white-space:nowrap;min-width:56px;text-align:center}.dept-project-head-name{flex:1;font-size:.78rem;color:#475569;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dept-project-count{display:flex;align-items:center;gap:.2rem;font-size:.78rem;font-weight:600;color:#64748b;white-space:nowrap}.stat-dot{width:6px;height:6px;border-radius:50%;background-color:var(--brand-primary)}.bg-pink-light{background-color:#fff5f7}.text-pink{color:#d53f8c}.bg-green-light{background-color:#f0fff4}.text-green{color:#38a169}.bg-purple-light{background-color:#faf5ff}.text-purple{color:#805ad5}.bg-orange-light{background-color:#fffaf0}.text-orange{color:#dd6b20}.bg-gray-light{background-color:#edf2f7}.text-gray{color:#4a5568}.bg-red-light{background-color:#fff5f5}.bg-teal-light{background-color:#e6fffa}.text-teal{color:#319795}.empty-search-state{text-align:center;padding:4rem 2rem;color:#a0aec0;font-size:1rem;background-color:#fff;border-radius:16px;border:1px dashed #CBD5E0;margin-top:2rem}.settings-container{flex:1;padding:2.5rem 3rem;background-color:#fafafc;overflow-y:auto}.settings-header{margin-bottom:2.5rem}.settings-header h2{font-size:1.75rem;font-weight:700;color:var(--text-primary);margin-bottom:.25rem;letter-spacing:-.5px}.settings-header p{color:#718096;font-size:.9375rem}.settings-layout{display:flex;gap:2.5rem;align-items:flex-start}.settings-sidebar{width:260px;flex-shrink:0}.settings-nav{display:flex;flex-direction:column;gap:.5rem}.settings-tab-btn{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;background:transparent;border:none;border-radius:12px;color:#4a5568;font-size:.9375rem;font-weight:500;text-align:left;cursor:pointer;transition:all .2s}.settings-tab-btn:hover{background-color:#f0f2f5;color:var(--text-primary)}.settings-tab-btn.active{background-color:#fff;color:var(--brand-primary);box-shadow:0 2px 8px #0000000a;font-weight:600}.settings-content-area{flex:1;max-width:700px}.settings-card{background-color:#fff;border-radius:20px;box-shadow:0 4px 16px #00000008;border:1px solid #E2E8F0;overflow:hidden}.settings-card-header{padding:1.75rem 2rem 1.25rem;border-bottom:1px solid #E2E8F0}.settings-card-header h3{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.settings-card-header p{color:#718096;font-size:.875rem}.settings-card-body{padding:2rem}.settings-card-body.pb-0{padding-bottom:0}.settings-card-footer{padding:1.25rem 2rem;background-color:#f8fafc;border-top:1px solid #E2E8F0;display:flex;justify-content:flex-end}.profile-photo-section{display:flex;align-items:center;gap:1.5rem;margin-bottom:2rem}.settings-avatar{width:80px;height:80px;border-radius:50%;object-fit:cover;overflow:hidden;box-shadow:0 4px 16px #0000001f;flex-shrink:0;display:block}.photo-actions{display:flex;gap:1rem;align-items:center}.btn-secondary{background-color:#fff;color:var(--text-primary);border:1px solid #CBD5E0;padding:.5rem 1rem;border-radius:8px;font-weight:600;font-size:.875rem;transition:all .2s}.btn-secondary:hover{background-color:#f7fafc;border-color:#a0aec0}.btn-text{background:transparent;border:none;font-weight:600;font-size:.875rem;cursor:pointer}.text-red{color:#e53e3e}.text-red:hover{color:#c53030}.settings-form h4{font-size:1rem;color:var(--text-primary);margin-bottom:1rem}.form-group{margin-bottom:1.5rem;display:flex;flex-direction:column;gap:.5rem}.form-group.row{flex-direction:row;gap:1.5rem}.form-col{flex:1;display:flex;flex-direction:column;gap:.5rem}.form-group label,.form-col label{font-size:.875rem;font-weight:500;color:#4a5568}.form-group input,.form-col input{width:100%;padding:.75rem 1rem;border:1px solid #CBD5E0;border-radius:10px;font-size:.9375rem;color:var(--text-primary);background-color:#fff;transition:all .2s}.form-group input:focus,.form-col input:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 3px #0045601a}.input-disabled{background-color:#f0f2f5!important;color:#a0aec0!important;cursor:not-allowed}.divider{height:1px;background-color:#e2e8f0;margin:1.5rem 0}.settings-toggle-row{display:flex;justify-content:space-between;align-items:center;padding-bottom:1.5rem}.toggle-info{display:flex;align-items:center;gap:1rem}.toggle-info h4{font-size:.9375rem;font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.toggle-info p{font-size:.8125rem;color:#718096}.toggle-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center}.bg-blue-light{background-color:#ebf8ff}.text-blue{color:#3182ce}.switch{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:#cbd5e0;transition:.3s}.slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.3s}input:checked+.slider{background-color:var(--brand-primary)}input:focus+.slider{box-shadow:0 0 1px var(--brand-primary)}input:checked+.slider:before{transform:translate(20px)}.slider.round{border-radius:34px}.slider.round:before{border-radius:50%}.settings-card-footer{padding:1.25rem 2rem;background-color:#f8fafc;border-top:1px solid #E2E8F0;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.settings-status-banner{display:flex;align-items:center;gap:.5rem;padding:.5rem .875rem;border-radius:8px;font-size:.875rem;font-weight:500;animation:fadeIn .25s ease}.settings-status-banner.success{background-color:#48bb781f;border:1px solid rgba(72,187,120,.35);color:#276749}.settings-status-banner.error{background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#c53030}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.form-hint{font-size:.8rem;color:#a0aec0}.spin-icon{animation:spinAnim .8s linear infinite}@keyframes spinAnim{to{transform:rotate(360deg)}}.btn-primary:disabled{opacity:.7;cursor:not-allowed}@media(max-width:768px){.settings-container{padding:1.25rem 1rem}.settings-header{margin-bottom:1.5rem}.settings-header h2{font-size:1.375rem}.settings-layout{flex-direction:column;gap:1rem}.settings-sidebar{width:100%}.settings-nav{flex-direction:row;overflow-x:auto;gap:.25rem;padding-bottom:.25rem;-webkit-overflow-scrolling:touch;scrollbar-width:none}.settings-nav::-webkit-scrollbar{display:none}.settings-tab-btn{flex-shrink:0;padding:.625rem .875rem;font-size:.875rem;white-space:nowrap}.settings-content-area{max-width:100%}.settings-card-header{padding:1.25rem 1.25rem 1rem}.settings-card-body{padding:1.25rem}.settings-card-footer{padding:1rem 1.25rem;flex-direction:column-reverse;align-items:stretch}.settings-card-footer .btn-primary{width:100%;justify-content:center}.form-group.row{flex-direction:column;gap:0}.profile-photo-section{gap:1rem}.photo-actions{flex-direction:column;align-items:flex-start;gap:.5rem}.settings-toggle-row{gap:1rem}.toggle-info{gap:.75rem}.toggle-icon{width:36px;height:36px;flex-shrink:0}}.rb-wrapper{display:flex;flex-direction:column;height:100%;background-color:#f8fafc;font-family:Inter,system-ui,sans-serif;overflow-y:auto}.rb-page-header{display:flex;align-items:center;justify-content:space-between;padding:32px 40px 24px;background:#fff;border-bottom:1px solid #E2E8F0}.rb-page-header-left{display:flex;align-items:center;gap:16px}.rb-page-icon{width:48px;height:48px;background:linear-gradient(135deg,#7c3aed,#4f46e5);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.rb-page-header h1{font-size:1.5rem;font-weight:700;color:#0f172a;margin:0 0 4px}.rb-page-header p{font-size:.875rem;color:#64748b;margin:0}.rb-filters{padding:20px 40px;display:flex;gap:12px;align-items:center}.rb-filter-select{width:260px}.rb-table-wrapper{padding:0 40px 40px;flex:1}.rb-table{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #00000012}.rb-table th{background:#f1f5f9;padding:12px 16px;text-align:left;font-size:.8rem;font-weight:600;color:#64748b;letter-spacing:.04em;text-transform:uppercase}.rb-table td{padding:14px 16px;font-size:.9rem;color:#1e293b;border-top:1px solid #f1f5f9;vertical-align:middle}.rb-table tbody tr:hover{background:#f8fafc}.rb-col-name{font-weight:500;max-width:320px}.rb-col-center{text-align:center}.rb-col-date{color:#64748b;font-size:.85rem;white-space:nowrap}.rb-row-actions{display:flex;gap:6px;justify-content:flex-end}.rb-badge{display:inline-block;padding:3px 10px;border-radius:9999px;font-size:.78rem;font-weight:500}.rb-badge-active{background:#dcfce7;color:#15803d}.rb-badge-inactive{background:#f1f5f9;color:#64748b}.rb-badge-need_request{background:#ede9fe;color:#7c3aed}.rb-badge-payment_request{background:#fef3c7;color:#b45309}.rb-badge-contract{background:#dcfce7;color:#15803d}.rb-badge-quotation{background:#e0f2fe;color:#0369a1}.rb-btn-primary{display:inline-flex;align-items:center;gap:6px;padding:10px 18px;background:linear-gradient(135deg,#7c3aed,#4f46e5);color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:opacity .15s}.rb-btn-primary:hover:not(:disabled){opacity:.9}.rb-btn-primary:disabled{opacity:.5;cursor:not-allowed}.rb-btn-secondary{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;background:#f1f5f9;color:#4f46e5;border:1px solid #e2e8f0;border-radius:7px;font-size:.85rem;font-weight:500;cursor:pointer;transition:background .15s}.rb-btn-secondary:hover{background:#e2e8f0}.rb-btn-sm{padding:5px 12px;font-size:.82rem}.rb-btn-xs{padding:3px 8px;font-size:.78rem}.rb-btn-ghost{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:transparent;color:#64748b;border:1px solid #e2e8f0;border-radius:7px;font-size:.875rem;cursor:pointer}.rb-btn-ghost:hover:not(:disabled){background:#f8fafc}.rb-btn-ghost:disabled{opacity:.5;cursor:not-allowed}.rb-btn-danger{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:#ef4444;color:#fff;border:none;border-radius:7px;font-size:.875rem;font-weight:600;cursor:pointer}.rb-btn-danger:hover:not(:disabled){background:#dc2626}.rb-btn-danger:disabled{opacity:.5;cursor:not-allowed}.rb-icon-btn{width:32px;height:32px;border:none;border-radius:6px;background:#f1f5f9;color:#475569;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,color .15s;flex-shrink:0}.rb-icon-btn:hover:not(:disabled){background:#e2e8f0}.rb-icon-btn:disabled{opacity:.4;cursor:not-allowed}.rb-icon-btn-danger{color:#ef4444}.rb-icon-btn-danger:hover:not(:disabled){background:#fee2e2}.rb-icon-btn-success{color:#16a34a}.rb-icon-btn-success:hover:not(:disabled){background:#dcfce7}.rb-icon-btn-warning{color:#b45309}.rb-icon-btn-warning:hover:not(:disabled){background:#fef3c7}.rb-input,.rb-select{width:100%;padding:8px 12px;border:1px solid #e2e8f0;border-radius:7px;font-size:.875rem;color:#1e293b;background:#fff;outline:none;transition:border-color .15s,box-shadow .15s}.rb-input:focus,.rb-select:focus{border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed1f}.rb-loading{text-align:center;padding:60px;color:#64748b;font-size:.9rem}.rb-empty{text-align:center;padding:80px 20px;color:#94a3b8;display:flex;flex-direction:column;align-items:center;gap:16px}.rb-empty p{font-size:1rem;color:#64748b;margin:0}.rb-alert-error{display:flex;align-items:center;gap:8px;margin:0 40px 16px;padding:12px 16px;background:#fee2e2;color:#b91c1c;border-radius:8px;font-size:.875rem}.rb-modal-overlay{position:fixed;inset:0;background:#0f172a8c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.rb-modal{background:#fff;border-radius:16px;width:100%;max-width:960px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000040}.rb-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e2e8f0;flex-shrink:0}.rb-modal-header h2{font-size:1.1rem;font-weight:700;color:#0f172a;margin:0}.rb-modal-body{flex:1;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:16px}.rb-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid #e2e8f0;flex-shrink:0}.rb-field-row{display:flex;gap:12px;align-items:flex-end}.rb-field{display:flex;flex-direction:column;gap:6px}.rb-field label{font-size:.8rem;font-weight:600;color:#475569;letter-spacing:.03em}.rb-field-grow{flex:1;min-width:0}.rb-field-sm{flex:0 0 200px}.rb-field-md{flex:0 0 220px}.rb-field-xs{flex:0 0 100px}.rb-steps-header{display:flex;align-items:center;justify-content:space-between;margin-top:8px}.rb-section-title{font-size:.9rem;font-weight:600;color:#334155}.rb-empty-steps{text-align:center;padding:20px;color:#94a3b8;font-size:.85rem;background:#f8fafc;border-radius:8px;border:1px dashed #cbd5e1}.rb-step-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:16px;display:flex;flex-direction:column;gap:12px;transition:box-shadow .15s,opacity .15s,border-color .15s;cursor:default}.rb-step-card.rb-dragging{opacity:.4;border-color:#a78bfa;box-shadow:0 0 0 2px #a78bfa44}.rb-step-card.rb-drag-over{border-color:#7c3aed;box-shadow:0 0 0 2px #7c3aed33;background:#f5f3ff}.rb-step-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.rb-drag-handle{display:flex;align-items:center;color:#94a3b8;cursor:grab;padding:4px 2px;border-radius:4px;flex-shrink:0;transition:color .12s}.rb-drag-handle:hover{color:#7c3aed}.rb-drag-handle:active{cursor:grabbing}.rb-step-num{font-size:.85rem;font-weight:700;color:#7c3aed;text-transform:uppercase;letter-spacing:.05em;flex:1}.rb-step-actions{display:flex;gap:6px}.rb-skip-row{align-items:flex-end}.rb-assignees-header{display:flex;align-items:center;justify-content:space-between}.rb-label-sm{font-size:.8rem;font-weight:600;color:#64748b}.rb-empty-rules{font-size:.8rem;color:#94a3b8;padding:8px 0;font-style:italic}.rb-rule-row{display:flex;flex-direction:column;gap:0;background:#fff;border-radius:7px;border:1px solid #e2e8f0;overflow:hidden}.rb-rule-controls{display:flex;align-items:center;gap:8px;padding:8px}.rb-rule-type{flex:0 0 200px}.rb-rule-value{flex:1}.rb-rule-hint{flex:1;font-size:.8rem;color:#94a3b8;font-style:italic;padding:0 8px}.rb-preview{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#f1f5f9;border-top:1px solid #e2e8f0}.rb-preview-avatar{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:700;flex-shrink:0;overflow:hidden;color:#fff}.rb-preview-avatar-sm{width:24px;height:24px;font-size:.65rem}.rb-preview-avatar-user{background:linear-gradient(135deg,#7c3aed,#4f46e5)}.rb-preview-avatar-pos{background:linear-gradient(135deg,#0ea5e9,#0284c7)}.rb-preview-avatar-dept{background:linear-gradient(135deg,#16a34a,#15803d)}.rb-preview-photo{width:100%;height:100%;object-fit:cover}.rb-preview-body{flex:1;min-width:0}.rb-preview-name-row{display:flex;align-items:center;gap:6px}.rb-preview-name{margin:0;font-size:.82rem;font-weight:600;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rb-preview-sub{margin:1px 0 0;font-size:.75rem;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rb-preview-badge{display:inline-block;padding:1px 7px;background:#ede9fe;color:#7c3aed;border-radius:9999px;font-size:.7rem;font-weight:600;flex-shrink:0}.rb-preview-role{margin-left:auto;flex-shrink:0;padding:2px 8px;border-radius:9999px;font-size:.72rem;font-weight:500}.rb-preview-role-admin{background:#fee2e2;color:#b91c1c}.rb-preview-role-manager{background:#fef3c7;color:#b45309}.rb-preview-role-employee{background:#f1f5f9;color:#475569}.rb-preview-members{padding:6px 12px 10px;background:#f1f5f9;border-top:1px dashed #e2e8f0;display:flex;flex-direction:column;gap:6px}.rb-preview-members-label{display:flex;align-items:center;gap:4px;font-size:.72rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.04em}.rb-preview-members-empty{font-style:italic;color:#94a3b8;text-transform:none;font-weight:400;letter-spacing:0}.rb-preview-members-list{display:flex;flex-direction:column;gap:4px}.rb-preview-member{display:flex;align-items:center;gap:8px}.rb-article-multiselect{display:flex;flex-direction:column;gap:4px;max-height:220px;overflow-y:auto;border:1px solid #e2e8f0;border-radius:8px;padding:8px;background:#fff}.rb-article-option{display:flex;align-items:center;gap:8px;font-size:.82rem;color:#334155;padding:4px 6px;border-radius:5px;cursor:pointer;transition:background .1s}.rb-article-option:hover{background:#f1f5f9}.rb-article-option-checked{background:#ede9fe;color:#7c3aed;font-weight:500}.rb-article-option input{cursor:pointer;accent-color:#7c3aed}.rb-hint{font-size:.75rem;color:#94a3b8;margin-top:4px;display:block}.rb-hint-warn{color:#f59e0b}.rb-error-text{flex:1;font-size:.85rem;color:#ef4444}.rb-confirm-dialog{background:#fff;border-radius:16px;padding:32px;width:100%;max-width:400px;text-align:center;box-shadow:0 20px 60px #00000040}.rb-confirm-icon{width:56px;height:56px;background:#fee2e2;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#ef4444;margin:0 auto 16px}.rb-confirm-dialog h3{font-size:1.1rem;font-weight:700;color:#0f172a;margin:0 0 8px}.rb-confirm-dialog p{font-size:.875rem;color:#64748b;margin:0 0 24px}.rb-confirm-actions{display:flex;gap:10px;justify-content:center}.admin-wrapper{display:flex;flex-direction:column;height:100%;background-color:#f8fafc;font-family:Inter,system-ui,sans-serif;overflow-y:auto}.admin-header{display:flex;align-items:flex-start;justify-content:space-between;padding:32px 40px 24px;background:#fff;border-bottom:1px solid #E2E8F0}.admin-header-left h1{font-size:1.75rem;font-weight:700;color:#0f172a;margin:0 0 4px}.admin-header-left p{font-size:.9rem;color:#64748b;margin:0}.admin-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:linear-gradient(135deg,#7c3aed,#4f46e5);color:#fff;border-radius:9999px;font-size:.8rem;font-weight:700;letter-spacing:.05em}.admin-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding:28px 40px}.stat-card{background:#fff;border-radius:16px;padding:24px;border:1px solid #E2E8F0;box-shadow:0 1px 3px #0000000d;display:flex;align-items:center;gap:18px;transition:transform .2s,box-shadow .2s}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.stat-icon{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon.blue{background:#eff6ff;color:#2563eb}.stat-icon.green{background:#f0fdf4;color:#16a34a}.stat-icon.purple{background:#f5f3ff;color:#7c3aed}.stat-icon.orange{background:#fff7ed;color:#ea580c}.stat-info h3{font-size:1.85rem;font-weight:700;color:#0f172a;margin:0 0 4px;line-height:1}.stat-info p{font-size:.9rem;color:#64748b;margin:0}.admin-tabs{display:flex;gap:4px;padding:0 40px;border-bottom:1px solid #E2E8F0;background:#fff}.admin-tab-btn{display:flex;align-items:center;gap:8px;padding:14px 20px;background:none;border:none;border-bottom:2px solid transparent;color:#64748b;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.admin-tab-btn:hover{color:#2563eb;background-color:#eff6ff;border-radius:8px 8px 0 0}.admin-tab-btn.active{color:#2563eb;border-bottom-color:#2563eb;font-weight:600}.admin-content{padding:32px 40px;flex:1}.users-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.users-section-header h2{font-size:1.1rem;font-weight:600;color:#0f172a;margin:0}.admin-search-box{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #CBD5E1;border-radius:10px;padding:10px 16px;min-width:280px;color:#64748b}.admin-search-box input{border:none;outline:none;background:transparent;font-size:.95rem;color:#1e293b;width:100%}.admin-table-container{background:#fff;border-radius:16px;border:1px solid #E2E8F0;box-shadow:0 1px 3px #0000000a;overflow:hidden}.admin-table{width:100%;border-collapse:collapse;text-align:left}.admin-table th{background:#f8fafc;padding:14px 20px;font-size:.82rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid #E2E8F0}.sortable-th{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.sortable-th:hover{background:#eff6ff;color:#2563eb}.admin-table td{padding:16px 20px;border-bottom:1px solid #F1F5F9;color:#334155;font-size:.93rem;vertical-align:middle}.admin-table tr:last-child td{border-bottom:none}.admin-table tr:hover td{background-color:#fafbfd}.user-cell{display:flex;align-items:center;gap:12px}.user-avatar{width:38px;height:38px;border-radius:50%;object-fit:cover}.user-no-avatar{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:.9rem;flex-shrink:0}.user-name-block{display:flex;flex-direction:column;gap:2px}.user-full-name{font-weight:600;color:#0f172a;font-size:.93rem}.user-email{font-size:.82rem;color:#94a3b8}.user-assignments-inline{display:flex;flex-direction:column;gap:4px;margin-left:8px}.user-assignment-tag{display:inline-block;padding:2px 10px;background:#eef2ff;color:#4338ca;border-radius:20px;font-size:.75rem;font-weight:500;white-space:normal;max-width:260px}.role-badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:9999px;font-size:.8rem;font-weight:600}.role-badge.admin{background:#ede9fe;color:#6d28d9}.role-badge.manager{background:#dbeafe;color:#1d4ed8}.role-badge.employee{background:#f1f5f9;color:#475569}.status-indicator{display:inline-flex;align-items:center;gap:6px;font-size:.85rem;font-weight:500}.status-dot{width:8px;height:8px;border-radius:50%}.status-dot.active{background:#22c55e}.status-dot.inactive{background:#94a3b8}.action-row{display:flex;gap:8px}.btn-action{padding:6px 14px;border:1px solid #E2E8F0;border-radius:8px;background:#fff;color:#475569;font-size:.82rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-action:hover{background:#f1f5f9;border-color:#94a3b8;color:#0f172a}.btn-action.danger{color:#dc2626;border-color:#fecaca}.btn-action.danger:hover{background:#fef2f2;border-color:#dc2626}.btn-action.success{color:#16a34a;border-color:#bbf7d0}.btn-action.success:hover{background:#f0fdf4;border-color:#16a34a}.role-select{padding:6px 10px;border:1px solid #E2E8F0;border-radius:8px;background:#fff;font-size:.85rem;color:#334155;cursor:pointer;outline:none}.role-select:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb1a}.admin-loading,.admin-empty{text-align:center;padding:60px 20px;color:#94a3b8;font-size:1.05rem}.placeholder-section{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;gap:16px;color:#94a3b8}.placeholder-section .ph-icon{color:#cbd5e1}.placeholder-section h3{font-size:1.2rem;font-weight:600;color:#475569;margin:0}.placeholder-section p{font-size:.9rem;margin:0}.btn-action.icon-only{padding:6px 8px}.dept-create-panel{display:flex;align-items:center;gap:10px;background:#f0fdf4;border:1px solid #BBF7D0;border-radius:12px;padding:14px 18px;margin-bottom:16px;flex-wrap:wrap}.dept-create-input{border:1px solid #CBD5E1;border-radius:8px;padding:8px 12px;font-size:.9rem;color:#1e293b;background:#fff;outline:none;flex:1;min-width:140px}.dept-create-input:focus{border-color:#16a34a;box-shadow:0 0 0 2px #16a34a26}.dept-inline-input{border:1px solid #93C5FD;border-radius:6px;padding:5px 8px;font-size:.9rem;color:#1e293b;background:#eff6ff;outline:none;width:100%}.dept-inline-input.small{width:90px}.dept-inline-input:focus{border-color:#2563eb}.dept-name{font-weight:600;color:#0f172a}.dept-code{font-family:Courier New,monospace;font-size:.82rem;background:#f1f5f9;padding:2px 7px;border-radius:5px;color:#475569}.members-badge{display:inline-block;background:#eff6ff;color:#2563eb;font-weight:700;font-size:.85rem;padding:3px 10px;border-radius:9999px;border:1px solid #BFDBFE}.row-inactive td{opacity:.55}.flags-row{display:flex;gap:6px;flex-wrap:wrap}.flag-badge{display:inline-block;font-size:.75rem;font-weight:700;padding:2px 8px;border-radius:9999px}.flag-badge.head{background:#fef9c3;color:#854d0e;border:1px solid #FDE68A}.flag-badge.sign{background:#eff6ff;color:#1d4ed8;border:1px solid #BFDBFE}.flag-badge.approver{background:#f0fdf4;color:#166534;border:1px solid #BBF7D0}.flag-checkbox{display:inline-flex;align-items:center;gap:6px;font-size:.88rem;font-weight:500;color:#334155;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.flag-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:#2563EB;cursor:pointer}.role-select.full{width:100%;padding:10px 12px;font-size:.9rem}.modal-backdrop{position:fixed;inset:0;background:#0f172a80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-box{background:#fff;border-radius:20px;width:100%;max-width:520px;box-shadow:0 20px 60px #0003;animation:slideUp .25s ease;overflow:hidden}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:24px 28px 20px;border-bottom:1px solid #F1F5F9}.modal-header h2{font-size:1.2rem;font-weight:700;color:#0f172a;margin:0 0 4px}.modal-header p{font-size:.9rem;color:#64748b;margin:0}.modal-close{background:#f1f5f9;border:none;border-radius:8px;padding:8px;cursor:pointer;color:#64748b;transition:all .2s;flex-shrink:0}.modal-close:hover{background:#e2e8f0;color:#0f172a}.modal-section{padding:20px 28px}.modal-section+.modal-section{border-top:1px solid #F1F5F9}.modal-section-title{font-size:.78rem;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.06em;margin:0 0 14px}.assignments-list{display:flex;flex-direction:column;gap:8px}.assignment-item{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:#f8fafc;border:1px solid #E2E8F0;border-radius:10px;gap:12px}.assignment-info{display:flex;flex-direction:column;gap:3px;min-width:0}.assignment-company{font-size:.85rem;font-weight:600;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.assignment-path{font-size:.78rem;color:#64748b;display:flex;align-items:center;gap:4px}.modal-form{display:flex;flex-direction:column;gap:14px}.modal-field{display:flex;flex-direction:column;gap:6px}.modal-field label{font-size:.82rem;font-weight:600;color:#475569}.log-action-badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:.75rem;font-weight:600;font-family:monospace;white-space:nowrap;background:#e2e8f0;color:#475569}.log-action-auth{background:#dbeafe;color:#1d4ed8}.log-action-user{background:#dcfce7;color:#15803d}.log-action-dept{background:#fef9c3;color:#a16207}.log-action-company{background:#fce7f3;color:#be185d}.log-action-position{background:#ede9fe;color:#6d28d9}.log-action-assignment{background:#ffedd5;color:#c2410c}.row-error td{background:#fff5f5}@media(max-width:768px){.admin-header{flex-direction:column;gap:12px;padding:20px 16px 16px}.admin-header-left h1{font-size:1.375rem}.admin-stats-grid{grid-template-columns:repeat(2,1fr);gap:12px;padding:16px}.stat-card{padding:16px;gap:12px}.stat-icon{width:40px;height:40px}.stat-info h3{font-size:1.4rem}.admin-tabs{padding:0 8px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.admin-tabs::-webkit-scrollbar{display:none}.admin-tab-btn{flex-shrink:0;padding:12px 14px;font-size:.875rem}.admin-content{padding:16px}.users-section-header{flex-direction:column;align-items:stretch;gap:10px}.admin-search-box{min-width:0;width:100%}.admin-table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.admin-table th,.admin-table td{padding:10px 12px;font-size:.85rem}.action-row{flex-wrap:wrap;gap:4px}.dept-create-panel{flex-direction:column;align-items:stretch}.dept-create-input{width:100%}.modal-backdrop{padding:0;align-items:flex-end}.modal-box{border-radius:20px 20px 0 0;max-width:100%;max-height:90vh;overflow-y:auto}}.auth-container{display:flex;min-height:100vh;width:100%}.auth-decoration{display:none;position:relative;background-image:url(/back.png);background-size:cover;background-position:center;background-repeat:no-repeat}.decoration-overlay{position:absolute;inset:0;background:linear-gradient(to right,#00456066,#0045601a)}@media(min-width:1024px){.auth-decoration{display:block;width:50%}}.auth-form-wrapper{display:flex;flex:1;align-items:center;justify-content:center;padding:2rem;background-color:var(--bg-primary)}.auth-form-content{width:100%;max-width:440px;display:flex;flex-direction:column;gap:2rem}.auth-header{text-align:center;margin-bottom:1rem}.auth-logo{height:42px;max-width:220px;object-fit:contain;margin-bottom:2rem}.auth-title{font-size:2rem;color:var(--text-primary);margin-bottom:.5rem;letter-spacing:-.025em}.auth-subtitle{color:var(--text-secondary);font-size:1.125rem}.auth-form{display:flex;flex-direction:column;gap:0rem}.input-group{display:flex;flex-direction:column;gap:.5rem;position:relative;padding-bottom:18px}.input-group label{font-size:.875rem;font-weight:500;color:var(--text-primary)}.input-with-icon{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:1rem;color:var(--text-secondary);transition:color var(--transition-fast)}.input-with-icon input{width:100%;padding:.875rem 1rem .875rem 3rem;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:1rem;color:var(--text-primary);background-color:var(--bg-primary);transition:all var(--transition-fast)}.input-with-icon input:focus{border-color:var(--border-focus);box-shadow:0 0 0 4px #0045601a}.input-with-icon.input-error input{border-color:#ef444499;box-shadow:0 0 0 4px #ef444414}.input-with-icon input:focus+.input-icon,.input-with-icon:focus-within .input-icon{color:var(--brand-primary)}.form-actions{display:flex;align-items:center;justify-content:space-between;margin-top:-.5rem}.remember-me{display:flex;align-items:center;gap:.5rem}.remember-me input[type=checkbox]{width:1rem;height:1rem;border:1px solid var(--border-color);border-radius:4px;accent-color:var(--brand-primary);cursor:pointer}.remember-me label{font-size:.875rem;color:var(--text-secondary);cursor:pointer}.forgot-password{font-size:.875rem;font-weight:500;color:var(--brand-primary);text-decoration:none;transition:color var(--transition-fast)}.forgot-password:hover{text-decoration:underline;color:var(--brand-primary-hover)}.submit-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.875rem 1.5rem;background-color:var(--brand-primary);color:#fff;font-weight:600;border-radius:var(--radius-md);transition:all var(--transition-fast);margin-top:1rem;box-shadow:var(--shadow-md)}.submit-btn:hover{background-color:var(--brand-primary-hover);transform:translateY(-1px);box-shadow:0 6px 8px -1px #0000001a,0 4px 6px -2px #0000001a}.submit-btn:active{background-color:var(--brand-primary-active);transform:translateY(0)}.btn-icon{transition:transform var(--transition-fast)}.submit-btn:hover .btn-icon{transform:translate(4px)}.auth-footer{margin-top:auto;text-align:center;font-size:.875rem;color:var(--text-secondary)}.auth-error{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-radius:var(--radius-md);background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#f87171;font-size:.875rem;animation:fadeIn .2s ease}.auth-error-icon{flex-shrink:0}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.btn-spinner{display:inline-block;width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}.auth-spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.1);border-top-color:var(--brand-primary);border-radius:50%;animation:spin .8s linear infinite}.input-with-icon input:disabled{opacity:.6;cursor:not-allowed}.submit-btn:disabled{opacity:.7;cursor:not-allowed;transform:none;box-shadow:var(--shadow-md)}.remember-label{font-size:.875rem;color:var(--text-secondary);-webkit-user-select:none;user-select:none}.auth-mode-toggle{display:flex;background:#f1f5f9;border-radius:12px;padding:4px;margin-bottom:24px;gap:4px}.mode-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;border:none;background:transparent;border-radius:10px;font-size:.9rem;font-weight:500;color:#64748b;cursor:pointer;transition:all .2s}.mode-btn.active{background:#fff;color:#2563eb;font-weight:600;box-shadow:0 1px 4px #0000001f}.input-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.register-note{font-size:.8rem;color:#94a3b8;text-align:center;margin-top:8px}.field-hint-error{position:absolute;bottom:2px;left:0;font-size:.78rem;color:#ef4444;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.password-reveal{display:flex;flex-direction:column;align-items:center;gap:12px;padding:8px 0 16px;text-align:center}.reveal-icon{animation:pop .4s ease}@keyframes pop{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}.password-reveal h3{font-size:1.3rem;font-weight:700;color:#0f172a;margin:0}.reveal-name{font-size:1rem;color:#2563eb;font-weight:600;margin:0}.reveal-hint{font-size:.85rem;color:#ef4444;font-weight:500;margin:0;background:#fef2f2;padding:8px 16px;border-radius:8px;border:1px solid #FECACA}.password-box{display:flex;align-items:center;gap:12px;background:#1e293b;border-radius:12px;padding:14px 20px;width:100%}.generated-pwd{flex:1;font-family:Courier New,monospace;font-size:1.6rem;font-weight:700;color:#22c55e;letter-spacing:.15em}.copy-btn{background:none;border:none;color:#94a3b8;cursor:pointer;padding:4px;border-radius:6px;transition:color .2s}.copy-btn:hover{color:#e2e8f0}.fade-in{animation:fadeIn .4s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.status-dot.danger{background-color:#ef4444}.status-dot.warning{background-color:#f59e0b}.status-dot.info{background-color:#3b82f6}.peo-layout{display:flex;height:100%;overflow:hidden;background:#f8fafc}.peo-sidebar{width:260px;min-width:260px;background:#1e293b;display:flex;flex-direction:column;overflow:hidden;border-right:1px solid #334155}.peo-sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid #334155}.peo-logo{display:flex;align-items:center;gap:8px;color:#f1f5f9;font-weight:700;font-size:1rem}.peo-logo svg{color:#6366f1}.peo-new-btn{background:#6366f1;color:#fff;border:none;border-radius:8px;padding:6px 8px;cursor:pointer;display:flex;align-items:center;transition:background .15s}.peo-new-btn:hover{background:#4f46e5}.peo-sessions-list{flex:1;overflow-y:auto;padding:8px}.peo-sidebar-loading,.peo-sidebar-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px 16px;color:#64748b;text-align:center;font-size:.9rem}.peo-sidebar-empty button{background:#6366f1;color:#fff;border:none;border-radius:8px;padding:8px 16px;cursor:pointer;font-size:.85rem}.peo-session-item{display:flex;align-items:center;gap:8px;padding:10px;border-radius:8px;cursor:pointer;transition:background .15s;margin-bottom:2px}.peo-session-item:hover{background:#334155}.peo-session-item.active{background:#334155;border-left:3px solid #6366f1}.peo-session-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.peo-session-title{color:#e2e8f0;font-size:.9rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.peo-session-meta{color:#64748b;font-size:.75rem}.peo-session-delete{background:none;border:none;color:#475569;cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;opacity:0;transition:opacity .15s,color .15s}.peo-session-item:hover .peo-session-delete{opacity:1}.peo-session-delete:hover{color:#f87171}.peo-main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.peo-welcome{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:40px;text-align:center}.peo-welcome-icon{color:#6366f1}.peo-welcome h2{font-size:1.5rem;font-weight:700;color:#0f172a;margin:0}.peo-welcome p{color:#64748b;max-width:480px;line-height:1.6;margin:0}.peo-welcome-btn{background:#6366f1;color:#fff;border:none;border-radius:10px;padding:12px 24px;font-size:1rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;transition:background .15s;margin-top:8px}.peo-welcome-btn:hover{background:#4f46e5}.peo-chat-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;background:#fff;border-bottom:1px solid #e2e8f0;flex-shrink:0}.peo-chat-title{display:flex;align-items:center;gap:8px;font-weight:600;color:#0f172a;font-size:1rem}.peo-chat-title svg{color:#6366f1}.peo-chat-actions{display:flex;gap:8px}.peo-header-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#f1f5f9;color:#475569;border-radius:8px;font-size:.85rem;font-weight:500;text-decoration:none;transition:background .15s}.peo-header-btn:hover{background:#e2e8f0;color:#0f172a}.peo-messages{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px}.peo-messages-loading,.peo-messages-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#94a3b8;text-align:center}.peo-messages-empty svg{opacity:.4}.peo-message{display:flex;flex-direction:column;gap:4px}.peo-message-user{align-items:flex-end}.peo-message-assistant{align-items:flex-start}.peo-bubble{max-width:72%;padding:12px 16px;border-radius:16px;font-size:.92rem;line-height:1.55;word-wrap:break-word}.peo-message-user .peo-bubble{background:#6366f1;color:#fff;border-bottom-right-radius:4px}.peo-message-assistant .peo-bubble{background:#fff;color:#0f172a;border-bottom-left-radius:4px;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000000f}.peo-bubble-report{background:#fafafa!important;border-left:3px solid #6366f1!important;max-width:85%}.peo-report-header{display:flex;align-items:center;gap:6px;font-weight:600;font-size:.85rem;color:#6366f1;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid #e2e8f0}.peo-report-header svg{flex-shrink:0}.peo-download-btn{margin-left:auto;display:flex;align-items:center;gap:4px;background:#6366f1;color:#fff;padding:3px 10px;border-radius:6px;font-size:.8rem;text-decoration:none;transition:background .15s}.peo-download-btn:hover{background:#4f46e5}.peo-bubble-content{display:flex;flex-direction:column;gap:0}.peo-msg-time{font-size:.72rem;color:#94a3b8;padding:0 4px}.peo-cursor{display:inline-block;width:2px;height:1em;background:currentColor;margin-left:2px;vertical-align:middle;animation:peo-blink .8s step-end infinite}@keyframes peo-blink{50%{opacity:0}}.peo-md-p{margin:2px 0}.peo-md-h2{font-size:1.1rem;font-weight:700;color:#1e293b;margin:8px 0 4px}.peo-md-h3{font-size:1rem;font-weight:600;color:#334155;margin:6px 0 4px}.peo-md-h4{font-size:.95rem;font-weight:600;color:#475569;margin:4px 0 2px}.peo-code{font-family:monospace;background:#f1f5f9;padding:1px 5px;border-radius:4px;font-size:.88em;color:#6366f1}.peo-input-area{display:flex;align-items:flex-end;gap:8px;padding:14px 16px;background:#fff;border-top:1px solid #e2e8f0;flex-shrink:0}.peo-attach-btn,.peo-send-btn{background:none;border:1px solid #e2e8f0;border-radius:10px;padding:8px 10px;cursor:pointer;display:flex;align-items:center;color:#6366f1;transition:background .15s,color .15s;flex-shrink:0}.peo-attach-btn:hover:not(:disabled){background:#f1f5f9}.peo-send-btn{background:#6366f1;border-color:#6366f1;color:#fff}.peo-send-btn:hover:not(:disabled){background:#4f46e5}.peo-send-btn:disabled,.peo-attach-btn:disabled{opacity:.4;cursor:not-allowed}.peo-textarea{flex:1;border:1px solid #e2e8f0;border-radius:10px;padding:9px 14px;font-size:.92rem;font-family:inherit;resize:none;outline:none;line-height:1.5;min-height:40px;max-height:160px;overflow-y:auto;color:#0f172a;transition:border-color .15s}.peo-textarea:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f114}.peo-textarea::placeholder{color:#94a3b8}.peo-spin{animation:peo-rotate 1s linear infinite}@keyframes peo-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.peo-md-ul{margin:4px 0 4px 20px;padding:0;list-style:disc}.peo-md-li{margin:2px 0;line-height:1.5}.peo-md-li-indent{margin-left:16px;list-style:none;color:#64748b;font-size:.9em}.peo-analyzing{display:inline-flex;align-items:center;gap:6px;color:#64748b;font-style:italic;font-size:.9em}.peo-thinking{display:inline-flex;align-items:center;gap:5px;padding:2px 4px}.peo-thinking-dot{width:8px;height:8px;border-radius:50%;background:#94a3b8;animation:peo-dot-bounce 1.4s infinite ease-in-out}.peo-thinking-dot:nth-child(1){animation-delay:0s}.peo-thinking-dot:nth-child(2){animation-delay:.2s}.peo-thinking-dot:nth-child(3){animation-delay:.4s}@keyframes peo-dot-bounce{0%,80%,to{transform:scale(.7);opacity:.5}40%{transform:scale(1);opacity:1}}.peo-bubble-error{border-left:3px solid #f59e0b;background:#fffbeb}.peo-source-ref{display:inline-block;background:#f1f5f9;color:#475569;border:1px solid #e2e8f0;border-radius:4px;padding:1px 6px;font-size:.78em;font-style:italic;cursor:default;white-space:nowrap}.peo-rag-phase{display:inline-flex;align-items:center;gap:6px;color:#6366f1;font-size:.88em;font-style:italic}@keyframes peo-spin-slow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.peo-spin-slow{animation:peo-spin-slow 2s linear infinite}.peo-health-indicators{display:flex;align-items:center;gap:5px;padding:4px 8px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;cursor:default}.peo-health-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.peo-health-dot.ok{background:#22c55e}.peo-health-dot.warn{background:#f59e0b}.peo-health-dot.err{background:#ef4444}.peo-md-hr{border:none;border-top:1px solid #e2e8f0;margin:14px 0}.peo-stream-phase{display:flex;align-items:center;gap:6px;margin-top:10px;padding-top:8px;border-top:1px solid #e2e8f0;font-size:.78rem;color:#6366f1;font-style:italic}.peo-retry-btn{display:inline-flex;align-items:center;gap:5px;margin-top:8px;padding:4px 10px;font-size:.8em;color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;cursor:pointer;transition:background .15s}.peo-retry-btn:hover{background:#dbeafe}.bpm-page{flex:1;overflow-y:auto;padding:28px}.bpm-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:28px}.bpm-page-title{font-size:1.4rem;font-weight:700;color:var(--text-primary);margin:0 0 4px}.bpm-page-subtitle{font-size:.85rem;color:var(--text-secondary);margin:0}.bpm-projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.bpm-project-card{background:#fff;border:1px solid var(--border-color);border-radius:12px;cursor:pointer;transition:border-color .15s,box-shadow .15s;display:flex;flex-direction:column;box-shadow:var(--shadow-sm)}.bpm-project-card:hover{border-color:var(--brand-primary);box-shadow:var(--shadow-md)}.bpm-project-card-body{padding:16px;flex:1}.bpm-project-name{font-size:.95rem;font-weight:600;color:var(--text-primary);margin-bottom:4px}.bpm-project-company{font-size:.82rem;color:var(--text-secondary);margin-bottom:12px}.bpm-project-meta{display:flex;gap:12px;font-size:.78rem;color:var(--text-secondary);flex-wrap:wrap;align-items:center}.bpm-project-extractions{color:#7e22ce;background:#f3e8ff;padding:1px 7px;border-radius:20px;font-weight:500}.bpm-project-card-footer{padding:10px 16px;border-top:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;gap:8px;background:var(--bg-secondary);border-radius:0 0 12px 12px}.bpm-project-actions{display:flex;gap:4px}.bpm-status-badge{display:inline-flex;align-items:center;gap:5px;font-size:.75rem;font-weight:500;padding:3px 8px;border-radius:20px}.status-neutral{background:#f1f5f9;color:#64748b}.status-processing{background:#dbeafe;color:#1d4ed8}.status-ready{background:#fef9c3;color:#a16207}.status-extracted{background:#f3e8ff;color:#7e22ce}.status-done{background:#dcfce7;color:#15803d}.status-failed{background:#fee2e2;color:#dc2626}.btn-primary{display:inline-flex;align-items:center;gap:6px;background:var(--brand-primary);color:#fff;border:none;border-radius:8px;padding:8px 16px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .15s;white-space:nowrap}.btn-secondary{display:inline-flex;align-items:center;gap:6px;background:#fff;color:var(--text-secondary);border:1px solid var(--border-color);border-radius:8px;padding:8px 16px;font-size:.875rem;font-weight:500;cursor:pointer;transition:border-color .15s,background .15s}.btn-danger{display:inline-flex;align-items:center;gap:6px;background:#fee2e2;color:#dc2626;border:1px solid #fca5a5;border-radius:8px;padding:8px 16px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .15s}.btn-danger:hover{background:#fecaca}.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:6px;border:1px solid var(--border-color);background:#fff;color:var(--text-secondary);cursor:pointer;transition:background .15s}.btn-icon:hover{background:var(--bg-secondary)}.btn-icon-danger{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:6px;border:none;background:transparent;color:#9ca3af;cursor:pointer;transition:color .15s,background .15s}.bpm-empty{display:flex;flex-direction:column;align-items:center;gap:16px;padding:60px 24px;color:var(--text-secondary);text-align:center}.bpm-error{display:flex;align-items:center;gap:8px;background:#fee2e2;border:1px solid #fca5a5;border-radius:8px;padding:10px 14px;margin-bottom:20px;color:#dc2626;font-size:.875rem}.bpm-error button{margin-left:auto;background:none;border:none;color:#dc2626;cursor:pointer;font-size:1.1rem;line-height:1}.bpm-modal-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.bpm-modal{background:#fff;border:1px solid var(--border-color);border-radius:12px;padding:24px;width:100%;max-width:440px;box-shadow:var(--shadow-md)}.bpm-modal-sm{max-width:360px}.bpm-modal-title{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0 0 20px}.bpm-modal-text{font-size:.875rem;color:var(--text-secondary);margin:0 0 20px;line-height:1.5}.bpm-modal-footer{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.bpm-form-group{margin-bottom:16px}.bpm-form-group label{display:block;font-size:.8rem;font-weight:500;color:var(--text-secondary);margin-bottom:6px}.bpm-input{width:100%;background:#fff;border:1px solid var(--border-color);border-radius:8px;padding:8px 12px;font-size:.875rem;color:var(--text-primary);outline:none;box-sizing:border-box;transition:border-color .15s}.bpm-input:focus{border-color:var(--border-focus)}.bpm-loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:80px;color:var(--text-secondary);font-size:.9rem}.bpm-proj-page{flex:1;overflow-y:auto;padding:28px}.bpm-action-error{display:flex;align-items:center;gap:8px;padding:10px 14px;margin-bottom:16px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#b91c1c;font-size:13.5px}.bpm-action-error span{flex:1}.bpm-action-error__close{background:none;border:none;cursor:pointer;color:#b91c1c;padding:2px;display:flex;opacity:.7}.bpm-action-error__close:hover{opacity:1}.bpm-proj-header{display:flex;align-items:center;gap:16px;margin-bottom:24px}.btn-back{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--border-color);border-radius:8px;padding:6px 12px;font-size:.85rem;color:var(--text-secondary);cursor:pointer;transition:border-color .15s;white-space:nowrap}.btn-back:hover{border-color:#9ca3af;background:var(--bg-secondary)}.bpm-proj-title{font-size:1.3rem;font-weight:700;color:var(--text-primary);margin:0}.bpm-progress-track{display:flex;align-items:center;margin-bottom:24px;background:#fff;border:1px solid var(--border-color);border-radius:10px;padding:8px 12px;gap:0;box-shadow:var(--shadow-sm)}.bpm-progress-step{display:flex;align-items:center;gap:6px;font-size:.82rem;font-weight:500;color:var(--text-secondary);cursor:pointer;padding:6px 10px;border-radius:8px;transition:background .15s,color .15s;white-space:nowrap}.bpm-progress-step:hover{background:var(--bg-secondary)}.bpm-progress-step.active{color:var(--brand-primary);background:#e0f2f7}.bpm-progress-step.done{color:#15803d}.bpm-progress-num{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;font-size:.75rem;font-weight:700;background:var(--bg-secondary);color:var(--text-secondary);transition:background .15s,color .15s}.bpm-progress-step.active .bpm-progress-num{background:var(--brand-primary);color:#fff}.bpm-progress-step.done .bpm-progress-num{background:#dcfce7;color:#15803d}.bpm-progress-line{flex:1;height:1px;background:var(--border-color);margin:0 4px}.bpm-section{background:#fff;border:1px solid var(--border-color);border-radius:12px;padding:24px;box-shadow:var(--shadow-sm)}.bpm-section-header{margin-bottom:20px}.bpm-section-header h2{display:flex;align-items:center;gap:8px;font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 6px}.bpm-section-header p{font-size:.82rem;color:var(--text-secondary);margin:0}.bpm-section-actions{display:flex;align-items:center;gap:12px;margin-top:20px;padding-top:20px;border-top:1px solid var(--border-color)}.btn-export-pdf{display:inline-flex;align-items:center;gap:7px;padding:8px 18px;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:opacity .15s,box-shadow .15s;box-shadow:0 2px 8px #2563eb59;margin-left:auto}.btn-export-pdf:hover{opacity:.9;box-shadow:0 4px 14px #2563eb73}.btn-export-pdf:active{opacity:1;transform:scale(.98)}.bpm-dropzone{border:2px dashed var(--border-color);border-radius:10px;padding:40px 24px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;cursor:pointer;color:var(--text-secondary);font-size:.875rem;transition:border-color .15s,background .15s;margin-bottom:20px;background:var(--bg-secondary)}.bpm-dropzone:hover,.bpm-dropzone.drag-over{border-color:var(--brand-primary);background:#e0f2f7;color:var(--brand-primary)}.bpm-dropzone.uploading{pointer-events:none;opacity:.7}.bpm-files-list{display:flex;flex-direction:column;gap:8px}.bpm-file-row{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;font-size:.85rem}.bpm-file-icon{color:var(--text-secondary);flex-shrink:0}.bpm-file-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.bpm-file-name{color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bpm-file-chunks{font-size:.75rem;color:var(--text-secondary)}.bpm-file-error{font-size:.75rem;color:#dc2626}.bpm-file-status{display:inline-flex;align-items:center;gap:4px;font-size:.75rem;white-space:nowrap;flex-shrink:0}.bpm-file-indexed{color:#15803d}.bpm-file-indexing{color:#1d4ed8}.bpm-file-pending{color:var(--text-secondary)}.bpm-file-failed{color:#dc2626}.bpm-files-summary{font-size:.8rem;color:var(--text-secondary);padding:6px 12px;text-align:right}.bpm-loading-sm{display:flex;justify-content:center;padding:20px;color:var(--text-secondary)}.bpm-action-card{display:flex;flex-direction:column;align-items:flex-start;gap:16px;padding:24px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px}.btn-lg{padding:12px 24px;font-size:.95rem}.bpm-status-card{display:flex;align-items:flex-start;gap:16px;padding:20px;border-radius:10px;margin-bottom:16px}.bpm-status-card strong{display:block;font-weight:600;margin-bottom:4px}.bpm-status-card p{margin:0;font-size:.85rem;opacity:.85}.bpm-status-processing{background:#dbeafe;border:1px solid #93c5fd;color:#1e40af}.bpm-status-failed{background:#fee2e2;border:1px solid #fca5a5;color:#dc2626}.bpm-outcome-header{padding:16px;background:#e0f2f7;border:1px solid #b0d9e8;border-radius:10px;margin-bottom:20px}.bpm-outcome-title{font-size:1.05rem;font-weight:600;color:var(--text-primary);margin-bottom:4px}.bpm-outcome-company{font-size:.82rem;color:var(--text-secondary);margin-bottom:10px}.bpm-outcome-stats{display:flex;gap:16px;font-size:.82rem;color:var(--brand-primary)}.bpm-outcome-stats span{display:inline-flex;align-items:center;gap:5px}.bpm-subsection{margin-bottom:24px}.bpm-subsection-title{display:flex;align-items:center;gap:8px;font-size:.9rem;font-weight:600;color:var(--text-secondary);margin:0 0 12px}.bpm-roles-list{display:flex;flex-wrap:wrap;gap:8px}.bpm-role-chip{display:inline-flex;align-items:center;gap:6px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:20px;padding:4px 12px;font-size:.8rem}.bpm-role-id{color:var(--text-secondary);font-size:.72rem}.bpm-role-name{color:var(--text-primary)}.bpm-steps-list{display:flex;flex-direction:column;gap:8px}.bpm-step-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.bpm-step-header{display:flex;align-items:center;gap:12px;padding:12px 14px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .12s}.bpm-step-header:hover{background:#e5e7eb}.bpm-step-num{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:#e0f2f7;color:var(--brand-primary);font-size:.75rem;font-weight:700;flex-shrink:0}.bpm-step-info{flex:1;min-width:0}.bpm-step-name{display:block;font-size:.875rem;font-weight:500;color:var(--text-primary)}.bpm-step-role{display:block;font-size:.75rem;color:var(--text-secondary);margin-top:2px}.bpm-step-next{font-size:.75rem;color:var(--brand-primary);white-space:nowrap;flex-shrink:0}.bpm-step-body{padding:12px 14px 14px;border-top:1px solid var(--border-color);font-size:.83rem;color:var(--text-secondary);line-height:1.6;background:#fff}.bpm-step-body p{margin:0 0 8px}.bpm-step-io{margin-top:8px}.bpm-step-io strong{display:block;font-size:.78rem;color:var(--text-secondary);margin-bottom:4px}.bpm-step-io ul{margin:0;padding-left:18px}.bpm-step-io li{font-size:.8rem}.bpm-step-duration{margin-top:8px;font-size:.78rem;color:var(--text-secondary)}.bpm-mapped-table-wrap{overflow-x:auto;border-radius:8px;border:1px solid var(--border-color)}.bpm-mapped-table{width:100%;border-collapse:collapse;font-size:.83rem}.bpm-mapped-table th{background:var(--bg-secondary);padding:10px 12px;text-align:left;font-size:.75rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border-color);white-space:nowrap}.bpm-mapped-table td{padding:10px 12px;border-bottom:1px solid var(--border-color);color:var(--text-secondary);vertical-align:middle}.bpm-mapped-table tr:last-child td{border-bottom:none}.bpm-mapped-table tr:hover td{background:var(--bg-secondary)}.bpm-td-role{color:var(--text-primary);font-weight:500}.bpm-td-user{font-weight:500;color:var(--text-primary)}.bpm-conf-badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:.72rem;font-weight:600}.conf-high{background:#dcfce7;color:#15803d}.conf-medium{background:#fef9c3;color:#a16207}.conf-low{background:#fee2e2;color:#dc2626}.bpm-td-editable{cursor:pointer}.bpm-td-editable:hover{background:var(--bg-secondary);text-decoration:underline dotted var(--text-secondary)}.bpm-td-actions{white-space:nowrap;width:1%;padding:6px 8px!important}.bpm-edit-actions{display:flex;gap:4px}.bpm-edit-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:6px;border:1px solid var(--border-color);background:#fff;color:var(--text-secondary);cursor:pointer;transition:background .15s,color .15s,border-color .15s;flex-shrink:0}.bpm-edit-btn:hover{background:var(--bg-secondary);color:var(--text-primary)}.bpm-edit-btn--save{color:#15803d;border-color:#bbf7d0}.bpm-edit-btn--save:hover{background:#dcfce7;border-color:#86efac}.bpm-edit-btn--cancel{color:#dc2626;border-color:#fecaca}.bpm-edit-btn--cancel:hover{background:#fee2e2;border-color:#fca5a5}.bpm-edit-btn:disabled{opacity:.5;cursor:not-allowed}.bpm-row-editing td{background:#f0f9ff!important}.bpm-edit-input{width:100%;min-width:100px;padding:4px 7px;border:1px solid #93c5fd;border-radius:5px;font-size:.82rem;font-family:inherit;background:#fff;color:var(--text-primary);outline:none;transition:border-color .15s,box-shadow .15s;appearance:auto}.bpm-edit-input:focus{border-color:var(--brand-primary);box-shadow:0 0 0 2px #3b82f626}.bpm-edit-input:disabled{opacity:.45;cursor:not-allowed;background:var(--bg-secondary)}.bpm-th-initiator,.bpm-td-initiator-check{width:1%;white-space:nowrap;text-align:center!important;padding-left:10px!important;padding-right:10px!important}.bpm-td-initiator-check input[type=checkbox]{cursor:pointer;accent-color:var(--brand-primary);width:15px;height:15px}.bpm-initiator-badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:.72rem;font-weight:600;background:#e0f2fe;color:#0369a1}.bpm-manager-badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:.72rem;font-weight:600;background:#dcfce7;color:#15803d}.bpm-irrelevant-separator td{padding:6px 12px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);background:var(--bg-secondary);border-top:2px solid var(--border-color)}.bpm-irrelevant-row td{opacity:.45;font-style:italic}.bpm-irrelevant-row:hover td{background:transparent}.bpm-irrelevant-reason{color:var(--text-secondary);font-size:.85rem}.bpm-adapted-steps{display:flex;flex-direction:column;gap:8px}.bpm-adapted-step{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px}.bpm-adapted-step-info{flex:1;min-width:0}.bpm-adapted-owner{display:block;font-size:.78rem;color:var(--text-secondary);margin-top:2px}.bpm-adapted-owner strong{color:var(--brand-primary)}.bpm-info-hint{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#e0f2f7;border:1px solid #b0d9e8;border-radius:8px;font-size:.82rem;color:var(--brand-primary)}.bpm-outcome-preview{margin-top:16px}.mt-8{margin-top:8px}.btn-primary{display:inline-flex;align-items:center;gap:6px;background:var(--brand-primary);color:#fff;border:none;border-radius:8px;padding:8px 16px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .15s}.btn-primary:hover:not(:disabled){background:var(--brand-primary-hover)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{display:inline-flex;align-items:center;gap:6px;background:#fff;color:var(--text-secondary);border:1px solid var(--border-color);border-radius:8px;padding:8px 16px;font-size:.875rem;font-weight:500;cursor:pointer;transition:border-color .15s}.btn-secondary:hover:not(:disabled){border-color:#9ca3af;background:var(--bg-secondary)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-icon-danger{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:6px;border:none;background:transparent;color:#9ca3af;cursor:pointer;transition:color .15s,background .15s;flex-shrink:0}.btn-icon-danger:hover{color:#dc2626;background:#fee2e2}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.btn-sm{padding:4px 10px;font-size:.78rem}.bpm-discover-section{margin-bottom:20px}.bpm-discover-title{font-size:.85rem;font-weight:600;color:var(--text-secondary);margin:0 0 10px;text-transform:uppercase;letter-spacing:.04em}.bpm-file-row--selected{background:#eff6ff;border-color:#bfdbfe}.bpm-manual-section{border-top:1px dashed var(--border-color);padding-top:16px;margin-top:4px}.bpm-manual-form{display:flex;gap:10px;align-items:center;margin-top:10px}.bpm-manual-form .bpm-input{flex:1;padding:8px 12px;border:1px solid var(--border-color);border-radius:8px;font-size:14px;outline:none;transition:border-color .15s}.bpm-manual-form .bpm-input:focus{border-color:var(--accent)}.bpm-process-list-header{display:flex;align-items:center;gap:8px;padding:4px 12px 6px;font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.bpm-process-header-name{flex:1}.bpm-process-header-type{width:96px;text-align:center}.bpm-process-header-conf{width:80px;text-align:center}.bpm-process-list{display:flex;flex-direction:column;gap:6px;max-height:320px;overflow-y:auto}.bpm-process-option{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid var(--border-color);border-radius:8px;cursor:pointer;background:#fff;transition:border-color .15s,background .15s}.bpm-process-option:hover{border-color:#93c5fd;background:#f0f9ff}.bpm-process-option--selected{border-color:var(--brand-primary);background:#eff6ff}.bpm-process-option-name{flex:1;font-size:.875rem;color:var(--text-primary)}.bpm-type-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:99px;font-size:.72rem;font-weight:600;white-space:nowrap}.bpm-type-procedural{background:#dbeafe;color:#1d4ed8}.bpm-type-normative{background:#f3e8ff;color:#7e22ce}.bpm-km-list{display:flex;flex-direction:column;gap:10px}.bpm-km-card{border:1px solid var(--border-color);border-radius:10px;padding:14px 16px;background:#fff}.bpm-km-card--na{opacity:.6;background:var(--bg-secondary)}.bpm-km-header{display:flex;align-items:center;gap:10px;margin-bottom:8px}.bpm-km-title{flex:1;font-weight:600;font-size:.9rem;color:var(--text-primary)}.bpm-km-desc{font-size:.85rem;color:var(--text-secondary);margin:0 0 6px;line-height:1.5}.bpm-km-condition{display:flex;align-items:center;gap:4px;font-size:.8rem;color:#92400e;background:#fef3c7;border-radius:6px;padding:4px 8px;margin-top:6px}.bpm-km-note{font-size:.83rem;color:#1d4ed8;background:#eff6ff;border-radius:6px;padding:6px 10px;margin:6px 0}.bpm-km-assigned{display:flex;align-items:center;gap:4px;font-size:.8rem;color:var(--text-secondary);margin-top:4px}.bpm-extractions-history{margin-top:28px;padding-top:24px;border-top:1px solid var(--border-color)}.bpm-extractions-history-title{font-size:.85rem;font-weight:600;color:var(--text-secondary);margin:0 0 14px;text-transform:uppercase;letter-spacing:.04em}.bpm-extraction-card{border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);margin-bottom:8px;overflow:hidden}.bpm-extraction-row{display:flex;align-items:center;gap:12px;padding:12px 14px}.bpm-extraction-status-icon{flex-shrink:0}.bpm-icon-done{color:#15803d}.bpm-icon-processing{color:#1d4ed8}.bpm-icon-failed{color:#dc2626}.bpm-icon-pending{color:var(--text-secondary)}.bpm-extraction-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.bpm-extraction-process{font-weight:600;font-size:.875rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bpm-extraction-file{font-size:.78rem;color:var(--text-secondary)}.bpm-extraction-date{font-size:.72rem;color:#9ca3af}.bpm-extraction-badges{display:flex;flex-direction:column;gap:4px;flex-shrink:0}.bpm-extraction-actions{display:flex;gap:8px;flex-shrink:0}.bpm-status-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:99px;font-size:.72rem;font-weight:600;white-space:nowrap}.bpm-status-badge--done{background:#dcfce7;color:#15803d}.bpm-status-badge--processing{background:#dbeafe;color:#1d4ed8}.bpm-status-badge--pending{background:#f3f4f6;color:#6b7280}.bpm-status-badge--failed{background:#fee2e2;color:#dc2626}.bpm-extraction-expanded{padding:20px 14px;border-top:1px solid var(--border-color);background:#fff}.bpm-file-row--selectable{cursor:pointer;transition:border-color .15s,background .15s}.bpm-file-row--selectable:hover{border-color:#93c5fd;background:#f0f9ff}.bpm-select-prompt{font-size:.85rem;color:var(--text-secondary);margin:0 0 12px}.bpm-req-badge{display:inline-flex;align-items:center;padding:2px 7px;border-radius:99px;font-size:.7rem;font-weight:600;white-space:nowrap}.bpm-req-rule{background:#dcfce7;color:#15803d}.bpm-req-exception{background:#fee2e2;color:#b91c1c}.bpm-req-condition{background:#fef3c7;color:#92400e}.bpm-req-method{background:#dbeafe;color:#1d4ed8}.bpm-req-restriction{background:#fce7f3;color:#9d174d}.bpm-source-block{margin-top:8px}.bpm-source-toggle{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;font-size:11px;color:var(--text-secondary);background:var(--bg-secondary, #f8f9fa);border:1px solid var(--border-color, #e2e8f0);border-radius:4px;cursor:pointer;transition:background .15s,color .15s}.bpm-source-toggle:hover{background:var(--bg-hover, #eef2f7);color:var(--text-primary)}.bpm-source-content{margin-top:6px;padding:10px 12px;background:var(--bg-secondary, #f8f9fa);border-left:3px solid var(--accent, #6366f1);border-radius:0 4px 4px 0;font-size:12px;line-height:1.6}.bpm-source-quote{color:var(--text-primary);font-style:italic;margin:0 0 6px}.bpm-source-full-text{color:var(--text-secondary);margin:0;white-space:pre-wrap;font-size:11px}.raci-wrap{display:flex;flex-direction:column;gap:16px}.raci-legend{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:12px 16px;background:var(--bg-secondary, #f8f9fa);border-radius:8px;border:1px solid var(--border)}.raci-legend-item{display:flex;align-items:center;gap:6px}.raci-legend-label{font-size:12px;color:var(--text-secondary)}.raci-legend-hint{margin-left:auto;font-size:11px;color:var(--text-tertiary, #aaa);font-style:italic}.raci-table-container{overflow-x:auto;border-radius:8px;border:1px solid var(--border)}.raci-table{width:100%;border-collapse:collapse;font-size:13px;min-width:600px}.raci-table thead{background:var(--bg-secondary, #f8f9fa);position:sticky;top:0;z-index:1}.raci-th-step{padding:10px 14px;text-align:left;font-weight:600;border-bottom:2px solid var(--border);min-width:220px;white-space:nowrap}.raci-th-role{padding:8px 10px;text-align:center;font-weight:600;border-bottom:2px solid var(--border);border-left:1px solid var(--border);min-width:90px}.raci-role-name{display:block;font-size:12px;font-weight:600}.raci-role-sub{display:block;font-size:11px;color:var(--text-secondary);font-weight:400;margin-top:2px}.raci-td-step{padding:10px 14px;border-bottom:1px solid var(--border)}.raci-td-step-inner{display:flex;align-items:flex-start;gap:8px}.raci-step-num{flex-shrink:0;width:22px;height:22px;border-radius:50%;background:var(--accent, #5b6af0);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}.raci-step-name{font-size:13px;line-height:1.4}.raci-td-cell{text-align:center;padding:0;border-bottom:1px solid var(--border);border-left:1px solid var(--border);width:90px;height:44px;font-size:15px;font-weight:700;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .12s,opacity .12s}.raci-td-cell:hover{opacity:.8;filter:brightness(.95)}.raci-r{background:#dbeafe;color:#1d4ed8}.raci-a{background:#fee2e2;color:#b91c1c}.raci-c{background:#fef9c3;color:#854d0e}.raci-i{background:#f3f4f6;color:#374151}.raci-cell--badge{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:6px;font-size:13px;font-weight:700}.raci-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding-top:4px}.raci-hidden-hint{font-size:12px;color:var(--text-secondary);display:flex;align-items:center;gap:4px;margin-right:auto}.raci-th-role-inner{display:flex;flex-direction:column;align-items:center;gap:2px;position:relative}.raci-role-remove{position:absolute;top:-4px;right:-4px;width:14px;height:14px;border-radius:50%;background:#ef4444;color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s}.raci-th-role:hover .raci-role-remove{opacity:1}.raci-th-add{width:36px;padding:4px;text-align:center;border-bottom:2px solid var(--border);border-left:1px solid var(--border)}.raci-td-add-placeholder{width:36px;border-bottom:1px solid var(--border);border-left:1px solid var(--border)}.raci-add-wrap{position:relative;display:inline-flex}.raci-add-btn{width:24px;height:24px;border-radius:6px;border:1px dashed var(--border);background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s,border-color .15s}.raci-add-btn:hover:not(:disabled){background:var(--accent, #5b6af0);color:#fff;border-color:var(--accent, #5b6af0)}.raci-add-btn:disabled{opacity:.3;cursor:not-allowed}.raci-add-menu{position:absolute;top:calc(100% + 4px);right:0;min-width:200px;max-height:260px;overflow-y:auto;background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:0 4px 16px #0000001f;z-index:100;display:flex;flex-direction:column}.raci-add-menu-item{display:flex;flex-direction:column;align-items:flex-start;padding:8px 12px;border:none;background:transparent;cursor:pointer;text-align:left;transition:background .1s;border-bottom:1px solid var(--border)}.raci-add-menu-item:last-child{border-bottom:none}.raci-add-menu-item:hover{background:var(--bg-secondary, #f3f4f6)}.raci-add-menu-name{font-size:12px;font-weight:600;color:var(--text-primary)}.raci-add-menu-sub{font-size:11px;color:var(--text-secondary)}.bpm-tab-content--fullheight,.bpm-section--fullheight{flex:1;display:flex;flex-direction:column;min-height:0}.pf-wrap{flex:1;display:flex;flex-direction:column;gap:10px;min-height:0}.pf-toolbar{display:flex;align-items:center;gap:10px;flex-shrink:0}.pf-hint{font-size:12px;color:var(--text-secondary);margin-right:auto}.pf-canvas{flex:1;min-height:480px;border-radius:10px;border:1px solid var(--border);overflow:auto;background:var(--bg-primary, #fff);padding:24px;display:flex;align-items:flex-start;justify-content:center}.pf-loading{display:flex;flex-direction:column;align-items:center;gap:12px;color:var(--text-secondary);font-size:14px;padding:60px 0}.pf-error{color:#b91c1c;font-size:13px;padding:20px}.pf-svg-wrap{display:inline-block;max-width:100%}.pf-svg-wrap svg{height:auto;display:block}.schemas-wrap{display:flex;flex-direction:column;gap:16px}.schemas-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.schemas-subtabs{display:flex;gap:4px;background:var(--bg-secondary, #f3f4f6);border-radius:8px;padding:4px;border:1px solid var(--border)}.schemas-subtab{display:flex;align-items:center;gap:6px;padding:6px 14px;border-radius:6px;border:none;background:transparent;color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:background .15s,color .15s}.schemas-subtab:hover:not(:disabled){background:var(--bg-primary, #fff);color:var(--text-primary)}.schemas-subtab--active{background:var(--bg-primary, #fff)!important;color:var(--accent, #5b6af0)!important;font-weight:600;box-shadow:0 1px 4px #00000014}.schemas-subtab:disabled{opacity:.4;cursor:not-allowed}.schemas-captured-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#22c55e;margin-left:4px;flex-shrink:0}.schemas-toolbar-right{display:flex;align-items:center;gap:10px;margin-left:auto}.schemas-capture-hint{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--text-secondary)}.schemas-hint{font-size:12px;color:var(--text-secondary);background:var(--bg-secondary, #f8f9fa);border:1px solid var(--border);border-radius:6px;padding:8px 12px}.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #777;--xy-background-pattern-lines-color-default: #777;--xy-background-pattern-cross-color-default: #777;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) )}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color, var(--xy-edge-label-color-default))}.rge-layout{display:flex;flex-direction:column;height:100vh;background:#f8fafc;overflow:hidden}.rge-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;gap:16px;color:#64748b}.rge-topbar{display:flex;align-items:center;gap:12px;padding:10px 16px;background:#fff;border-bottom:1px solid #e2e8f0;z-index:10;flex-shrink:0}.rge-back-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:transparent;border:1px solid #e2e8f0;border-radius:6px;color:#475569;font-size:13px;cursor:pointer;transition:all .15s}.rge-back-btn:hover{background:#f1f5f9}.rge-topbar-title{display:flex;align-items:center;gap:8px;flex:1}.rge-graph-name{font-size:15px;font-weight:600;color:#1e293b}.rge-active-badge{padding:2px 8px;background:#dcfce7;color:#16a34a;border-radius:20px;font-size:11px;font-weight:500}.rge-version{font-size:11px;color:#94a3b8}.rge-topbar-actions{display:flex;align-items:center;gap:8px}.rge-save-error{display:flex;align-items:center;gap:4px;font-size:12px;color:#ef4444}.rge-save-ok{display:flex;align-items:center;gap:4px;font-size:12px;color:#16a34a}.rge-btn-primary{display:flex;align-items:center;gap:6px;padding:7px 14px;background:#3b82f6;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background .15s}.rge-btn-primary:hover{background:#2563eb}.rge-btn-primary:disabled{background:#93c5fd;cursor:not-allowed}.rge-btn-danger{display:flex;align-items:center;gap:6px;padding:7px 10px;background:#fef2f2;color:#ef4444;border:1px solid #fecaca;border-radius:6px;font-size:13px;cursor:pointer;transition:all .15s}.rge-btn-danger:hover{background:#fee2e2}.rge-body{display:flex;flex:1;overflow:hidden}.rge-palette{width:140px;flex-shrink:0;background:#fff;border-right:1px solid #e2e8f0;overflow-y:auto;padding:8px 6px}.rge-palette-title{font-size:10px;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.06em;padding:4px 6px 8px}.rge-palette-item{display:flex;align-items:center;gap:6px;width:100%;padding:6px 8px;background:transparent;border:1px solid #e2e8f0;border-left:3px solid var(--node-color, #94a3b8);border-radius:6px;margin-bottom:4px;cursor:pointer;text-align:left;transition:all .15s;font-size:11px;color:#374151}.rge-palette-item:hover{background:#f8fafc;border-color:var(--node-color, #94a3b8)}.rge-palette-icon{font-size:14px;flex-shrink:0}.rge-palette-label{font-size:11px;line-height:1.3}.rge-canvas{flex:1;overflow:hidden;position:relative}.rge-canvas-hint{font-size:11px;color:#94a3b8;background:#ffffffe6;padding:4px 10px;border-radius:20px;border:1px solid #e2e8f0}.gn-card{background:#fff;border:2px solid #e2e8f0;border-top:4px solid var(--node-color, #94a3b8);border-radius:8px;min-width:160px;max-width:220px;box-shadow:0 1px 4px #00000014;cursor:pointer;transition:box-shadow .15s,border-color .15s}.gn-card:hover{box-shadow:0 3px 10px #0000001f}.gn-card.gn-selected{border-color:var(--node-color, #3b82f6);box-shadow:0 0 0 3px #3b82f633}.gn-card-header{display:flex;align-items:center;gap:5px;padding:6px 10px 4px}.gn-card-icon{font-size:13px}.gn-card-type{font-size:10px;color:#94a3b8;font-weight:500;flex:1}.gn-card-deadline{font-size:10px;color:#f59e0b}.gn-card-name{padding:2px 10px 8px;font-size:13px;font-weight:500;color:#1e293b;line-height:1.3}.gn-card-assignees{padding:0 10px 6px;font-size:10px;color:#64748b}.gn-circle{width:72px;height:72px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;cursor:pointer;border:3px solid transparent;transition:box-shadow .15s}.gn-start{background:#dcfce7;border-color:#22c55e}.gn-end{background:#f1f5f9;border-color:#64748b}.gn-circle.gn-selected{box-shadow:0 0 0 3px #3b82f64d}.gn-circle-icon{font-size:20px}.gn-circle-label{font-size:10px;font-weight:600;color:#374151}.rge-sidebar{width:300px;flex-shrink:0;background:#fff;border-left:1px solid #e2e8f0;display:flex;flex-direction:column;overflow:hidden}.rge-sidebar-tabs{display:flex;border-bottom:1px solid #e2e8f0;flex-shrink:0}.rge-tab{flex:1;padding:10px;background:transparent;border:none;border-bottom:2px solid transparent;font-size:13px;color:#64748b;cursor:pointer;transition:all .15s}.rge-tab:hover{color:#1e293b}.rge-tab-active{color:#3b82f6;border-bottom-color:#3b82f6;font-weight:500}.rge-sidebar-content{flex:1;overflow-y:auto;padding:0}.rge-sidebar-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:200px;gap:12px;color:#94a3b8;text-align:center;padding:16px;font-size:13px}.rge-node-config{padding:12px}.rge-node-config-header{display:flex;align-items:flex-start;gap:10px;padding:10px;background:#f8fafc;border-radius:8px;border-left:4px solid #94a3b8;margin-bottom:14px}.rge-node-config-icon{font-size:20px;flex-shrink:0}.rge-node-config-type{font-weight:600;font-size:13px;color:#1e293b}.rge-node-config-desc{font-size:11px;color:#64748b;margin-top:2px;line-height:1.4}.rge-field{margin-bottom:12px}.rge-field label{display:block;font-size:11px;font-weight:500;color:#64748b;margin-bottom:4px;text-transform:uppercase;letter-spacing:.04em}.rge-input{width:100%;padding:7px 10px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;font-size:13px;color:#1e293b;transition:border-color .15s;box-sizing:border-box}.rge-input:focus{outline:none;border-color:#3b82f6;background:#fff}.rge-input-sm{font-size:12px;padding:5px 8px}.rge-textarea{resize:vertical;min-height:60px}.rge-hint{font-size:11px;color:#94a3b8;margin-top:3px;display:block}.rge-assignees{border-top:1px solid #e2e8f0;padding-top:12px;margin-top:4px}.rge-assignees-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.rge-label-sm{font-size:11px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.04em}.rge-assignees-empty{font-size:12px;color:#94a3b8;padding:8px;background:#f8fafc;border-radius:6px;text-align:center}.rge-rule-row{display:flex;flex-direction:column;gap:4px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:8px;margin-bottom:6px;position:relative}.rge-rule-hint{font-size:11px;color:#94a3b8;padding:4px 0}.rge-btn-xs{display:flex;align-items:center;gap:3px;padding:3px 8px;background:#eff6ff;color:#3b82f6;border:1px solid #bfdbfe;border-radius:4px;font-size:11px;cursor:pointer}.rge-btn-xs:hover{background:#dbeafe}.rge-btn-icon-danger{align-self:flex-end;padding:3px 6px;background:#fef2f2;color:#ef4444;border:1px solid #fecaca;border-radius:4px;font-size:11px;cursor:pointer;display:flex;align-items:center}.rge-triggers{padding:12px}.rge-triggers-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;font-size:12px;color:#64748b}.rge-trigger-row{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:10px;margin-bottom:10px}.rge-btn-danger-sm{display:flex;align-items:center;gap:5px;padding:5px 10px;background:#fef2f2;color:#ef4444;border:1px solid #fecaca;border-radius:5px;font-size:12px;cursor:pointer;margin-top:4px}.gn-handle{width:10px!important;height:10px!important;background:#fff!important;border:2px solid #94a3b8!important;border-radius:50%!important;transition:background .15s,border-color .15s!important}.gn-handle:hover{background:#3b82f6!important;border-color:#3b82f6!important;transform:scale(1.3)!important}.rb-table-row-clickable{cursor:pointer}.rb-table-row-clickable:hover td{background:#f8fafc}.nr-wrapper{display:flex;flex-direction:column;height:100%;background-color:#f8fafc;font-family:Inter,system-ui,sans-serif;overflow-y:auto}.nr-page-header{display:flex;align-items:center;justify-content:space-between;padding:20px 32px 18px;background:#fff;border-bottom:1px solid #E2E8F0;flex-wrap:wrap;gap:12px}.nr-page-header-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.nr-page-header-title-row h1{margin:0}.nr-header-total{font-size:.95rem;font-weight:700;color:#0f172a;background:#f1f5f9;padding:2px 10px;border-radius:6px;white-space:nowrap}.nr-page-header-left{display:flex;align-items:center;gap:16px}.nr-page-icon{width:48px;height:48px;background:linear-gradient(135deg,#0ea5e9,#2563eb);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.nr-page-header h1{font-size:1.25rem;font-weight:700;color:#0f172a;margin:0}.nr-page-header p{font-size:.875rem;color:#64748b;margin:0}.nr-header-actions{display:flex;gap:10px;align-items:center}.nr-back-btn{padding:8px!important;flex-shrink:0}.nr-filters{padding:20px 40px;display:flex;gap:12px;align-items:center}.nr-filter-select{width:240px}.nr-search-wrap{position:relative;display:flex;align-items:center;flex:1;max-width:360px}.nr-search-icon{position:absolute;left:10px;color:#94a3b8;pointer-events:none}.nr-search-input{width:100%;padding-left:34px!important}.nr-table-wrapper{padding:0 40px 40px;flex:1}.nr-table{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #00000012}.nr-table th{background:#f1f5f9;padding:12px 16px;text-align:left;font-size:.8rem;font-weight:600;color:#64748b;letter-spacing:.04em;text-transform:uppercase}.nr-table td{padding:14px 16px;font-size:.9rem;color:#1e293b;border-top:1px solid #f1f5f9;vertical-align:middle}.nr-table-row{cursor:pointer;transition:background .12s}.nr-table-row:hover,.nr-child-row{background:#f8fafc}.nr-child-row:hover{background:#f1f5f9}.nr-info-banner{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;color:#1d4ed8;font-size:.875rem;margin-bottom:16px}.nr-info-banner .nr-link{color:#1d4ed8;font-weight:600;text-decoration:underline}.nr-col-number{font-weight:600;white-space:nowrap}.nr-col-title{max-width:280px}.nr-col-person{color:#475569}.nr-col-amount{font-weight:500;white-space:nowrap}.nr-col-date{color:#64748b;font-size:.85rem;white-space:nowrap}.nr-draft-num{color:#94a3b8;font-weight:400;font-style:italic}.nr-badge{display:inline-block;padding:3px 10px;border-radius:9999px;font-size:.78rem;font-weight:500;white-space:nowrap}.nr-badge-draft{background:#f1f5f9;color:#64748b}.nr-badge-pending{background:#fef3c7;color:#92400e}.nr-badge-approved{background:#dcfce7;color:#15803d}.nr-badge-rejected{background:#fee2e2;color:#b91c1c}.nr-badge-returned{background:#fce7f3;color:#9d174d}.nr-btn-primary{display:inline-flex;align-items:center;gap:6px;padding:10px 18px;background:linear-gradient(135deg,#0ea5e9,#2563eb);color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:opacity .15s}.nr-btn-primary:hover:not(:disabled){opacity:.9}.nr-btn-primary:disabled{opacity:.5;cursor:not-allowed}.nr-btn-secondary{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;background:#f1f5f9;color:#2563eb;border:1px solid #e2e8f0;border-radius:7px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .15s}.nr-btn-secondary:hover:not(:disabled){background:#e2e8f0}.nr-btn-secondary:disabled{opacity:.5;cursor:not-allowed}.nr-btn-sm{padding:5px 12px;font-size:.82rem}.nr-btn-ghost{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:transparent;color:#64748b;border:1px solid #e2e8f0;border-radius:7px;font-size:.875rem;cursor:pointer}.nr-btn-ghost:hover:not(:disabled){background:#f8fafc}.nr-btn-ghost:disabled{opacity:.5;cursor:not-allowed}.nr-btn-danger{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:#ef4444;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:opacity .15s}.nr-btn-danger:hover:not(:disabled){opacity:.85}.nr-btn-danger:disabled{opacity:.5;cursor:not-allowed}.nr-btn-warning{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:#f59e0b;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:opacity .15s}.nr-btn-warning:hover:not(:disabled){opacity:.85}.nr-btn-warning:disabled{opacity:.5;cursor:not-allowed}.nr-btn-link{background:none;border:none;padding:0;color:#2563eb;font-size:.875rem;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.nr-btn-link:hover{color:#1d4ed8}.nr-icon-btn{width:32px;height:32px;border:none;border-radius:6px;background:#f1f5f9;color:#475569;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,color .15s}.nr-icon-btn:hover:not(:disabled){background:#e2e8f0}.nr-icon-btn:disabled{opacity:.4;cursor:not-allowed}.nr-icon-btn-danger{color:#ef4444}.nr-icon-btn-danger:hover:not(:disabled){background:#fee2e2}.nr-icon-btn-accent{color:#7c3aed}.nr-icon-btn-accent:hover:not(:disabled){background:#ede9fe}.nr-input,.nr-select{width:100%;padding:8px 12px;border:1px solid #e2e8f0;border-radius:7px;font-size:.875rem;color:#1e293b;background:#fff;outline:none;transition:border-color .15s,box-shadow .15s}.nr-input:focus,.nr-select:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.nr-input:disabled,.nr-select:disabled{background:#f8fafc;cursor:not-allowed}.nr-input-inline{border:none;border-radius:4px;padding:4px 6px;background:transparent;font-size:.875rem}.nr-input-inline:focus{background:#fff;border:1px solid #2563eb;outline:none}.nr-input-num{width:80px;text-align:right}.nr-input-unit{width:60px;text-align:center}.nr-loading{text-align:center;padding:60px;color:#64748b;font-size:.9rem}.nr-returned-success{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;min-height:60vh;text-align:center;padding:40px}.nr-returned-success-icon{width:88px;height:88px;border-radius:50%;background:#fef3c7;color:#d97706;display:flex;align-items:center;justify-content:center}.nr-returned-success h2{font-size:1.5rem;font-weight:600;color:#1e293b;margin:0}.nr-returned-success p{font-size:.95rem;color:#64748b;max-width:420px;margin:0;line-height:1.6}.nr-empty{text-align:center;padding:80px 20px;color:#94a3b8;display:flex;flex-direction:column;align-items:center;gap:16px}.nr-empty p{font-size:1rem;color:#64748b;margin:0}.nr-alert-error{display:flex;align-items:center;gap:8px;margin:0 40px 16px;padding:12px 16px;background:#fee2e2;color:#b91c1c;border-radius:8px;font-size:.875rem}.nr-alert-form{margin:16px 40px}.nr-form-body{padding:24px 40px 40px;display:flex;flex-direction:column;gap:20px}.nr-card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 3px #00000012}.nr-card-title{font-size:.95rem;font-weight:700;color:#0f172a;margin:0 0 20px}.nr-card-head-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.nr-card-head-row .nr-card-title{margin-bottom:0}.nr-field-grid{display:grid;grid-template-columns:1fr 2fr;gap:20px}@media(max-width:768px){.nr-field-grid{grid-template-columns:1fr}}.nr-field{display:flex;flex-direction:column;gap:6px}.nr-field label{font-size:.8rem;font-weight:600;color:#475569;letter-spacing:.03em}.nr-required{color:#ef4444}.nr-items-table-wrap{overflow-x:auto}.nr-items-table{width:100%;border-collapse:collapse;font-size:.875rem}.nr-items-table th{background:#f8fafc;padding:8px 10px;text-align:left;font-size:.78rem;font-weight:600;color:#64748b;letter-spacing:.04em;text-transform:uppercase;border-bottom:1px solid #e2e8f0}.nr-items-table td{padding:6px 10px;border-bottom:1px solid #f1f5f9;vertical-align:middle}.nr-items-col-name{width:auto;min-width:200px}.nr-items-col-qty{width:90px}.nr-items-col-unit{width:80px}.nr-items-col-price{width:120px}.nr-items-col-total{width:130px;text-align:right}.nr-items-col-del{width:44px}.nr-items-col-omts{width:150px;font-size:12px;color:var(--text-muted, #9ca3af)}.nr-col-muted{font-size:12px;color:#9ca3af}.nr-items-total{text-align:right;font-weight:500}.nr-items-table tfoot td{border-top:2px solid #e2e8f0;border-bottom:none;padding-top:10px}.nr-items-footer-label{font-size:.8rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.04em}.nr-items-grand-total{font-size:1rem;font-weight:700;color:#0f172a}.nr-detail-body{padding:24px 40px 40px;display:grid;grid-template-columns:1fr 380px;gap:20px;align-items:start}@media(max-width:1100px){.nr-detail-body{grid-template-columns:1fr}}.nr-detail-left,.nr-detail-right{display:flex;flex-direction:column;gap:20px}.nr-info-grid{display:flex;flex-direction:column;gap:12px}.nr-info-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:12px;border-bottom:1px solid #f1f5f9}.nr-info-row:last-child{border-bottom:none;padding-bottom:0}.nr-info-label{font-size:.85rem;color:#64748b;flex-shrink:0}.nr-total-big{font-size:1.05rem;font-weight:700;color:#0f172a}.nr-modal-overlay{position:fixed;inset:0;background:#0f172a8c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.nr-confirm-dialog{background:#fff;border-radius:16px;padding:32px;width:100%;max-width:420px;text-align:center;box-shadow:0 20px 60px #00000040}.nr-confirm-icon{width:56px;height:56px;background:#dbeafe;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#2563eb;margin:0 auto 16px}.nr-confirm-dialog h3{font-size:1.1rem;font-weight:700;color:#0f172a;margin:0 0 8px}.nr-confirm-dialog p{font-size:.875rem;color:#64748b;margin:0 0 24px;line-height:1.6}.nr-confirm-actions{display:flex;gap:10px;justify-content:center}.rt-wrapper{display:flex;flex-direction:column;gap:0}.rt-step{position:relative;padding-left:36px;padding-bottom:24px}.rt-step:last-child{padding-bottom:0}.rt-line{position:absolute;left:9px;top:24px;bottom:0;width:2px;background:#e2e8f0}.rt-line-done{background:#86efac}.rt-step-head{display:flex;gap:12px;align-items:flex-start}.rt-step-icon{position:absolute;left:0;top:0;flex-shrink:0}.rt-icon-pending{color:#cbd5e1}.rt-icon-active{color:#f59e0b}.rt-icon-completed{color:#22c55e}.rt-icon-rejected{color:#ef4444}.rt-icon-returned{color:#a855f7}.rt-icon-skipped{color:#94a3b8}.rt-step-info{flex:1;padding-top:1px}.rt-step-name{font-size:.9rem;font-weight:600;color:#0f172a;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-bottom:6px}.rt-step-num{font-size:.75rem;font-weight:700;color:#7c3aed;text-transform:uppercase;letter-spacing:.05em;flex-shrink:0}.rt-step-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.rt-step-badge{display:inline-block;padding:2px 8px;border-radius:9999px;font-size:.75rem;font-weight:500}.rt-step-badge-pending{background:#f1f5f9;color:#64748b}.rt-step-badge-active{background:#fef3c7;color:#92400e}.rt-step-badge-completed{background:#dcfce7;color:#15803d}.rt-step-badge-rejected{background:#fee2e2;color:#b91c1c}.rt-step-badge-returned{background:#fce7f3;color:#9d174d}.rt-step-badge-skipped{background:#f1f5f9;color:#94a3b8}.rt-approval-mode{font-size:.75rem;color:#94a3b8}.rt-deadline{font-size:.75rem;color:#64748b}.rt-deadline-overdue{color:#ef4444;font-weight:600}.rt-tasks{margin-top:10px;display:flex;flex-direction:column;gap:6px}.rt-task{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:8px 12px}.rt-task-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.rt-task-name{font-size:.85rem;font-weight:500;color:#1e293b}.rt-task-badge{display:inline-block;padding:2px 8px;border-radius:9999px;font-size:.75rem;font-weight:500;flex-shrink:0}.rt-task-badge-pending{background:#fef3c7;color:#92400e}.rt-task-badge-approved{background:#dcfce7;color:#15803d}.rt-task-badge-rejected{background:#fee2e2;color:#b91c1c}.rt-task-badge-returned{background:#fce7f3;color:#9d174d}.rt-task-badge-cancelled{background:#f1f5f9;color:#94a3b8}.rt-task-comment{margin-top:4px;font-size:.8rem;color:#475569;font-style:italic}.rt-task-date{margin-top:2px;font-size:.75rem;color:#94a3b8}.rt-step-num-parallel{color:#0891b2}.rt-parallel-lanes{margin-top:10px;display:flex;flex-direction:column;gap:8px}.rt-parallel-lane{background:#f8fafc;border:1px solid #e2e8f0;border-left:3px solid #cbd5e1;border-radius:8px;padding:12px 14px}.rt-parallel-lane-active{border-left-color:#f59e0b;background:#fffbeb}.rt-parallel-lane-completed{border-left-color:#22c55e;background:#f0fdf4}.rt-parallel-lane-rejected{border-left-color:#ef4444;background:#fef2f2}.rt-parallel-lane-returned{border-left-color:#a855f7;background:#faf5ff}.rt-parallel-lane-cancelled{border-left-color:#cbd5e1;background:#f8fafc;opacity:.6}.rt-parallel-lane .rt-step-name{font-size:.85rem;margin-bottom:4px}.rt-parallel-lane .rt-tasks{margin-top:8px;padding:0;background:transparent;border:none}.rt-parallel-lane .rt-task{background:transparent;padding:4px 0;border:none;border-bottom:1px solid #e2e8f0}.rt-parallel-lane .rt-task:last-child{border-bottom:none}.mt-tabs{display:flex;gap:4px}.mt-tab{padding:6px 18px;border-radius:8px;border:1px solid #e2e8f0;background:#fff;font-size:.875rem;color:#64748b;cursor:pointer;transition:all .15s}.mt-tab.active{background:#4f46e5;border-color:#4f46e5;color:#fff;font-weight:600}.mt-list{display:flex;flex-direction:column;gap:12px;padding:24px 40px}.mt-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px 24px;display:flex;flex-direction:column;gap:12px;transition:box-shadow .15s}.mt-card:hover{box-shadow:0 4px 16px #00000014}.mt-card-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.mt-card-meta{display:flex;align-items:center;gap:10px}.mt-doc-type{font-size:.78rem;font-weight:600;text-transform:uppercase;color:#6366f1;letter-spacing:.04em}.mt-doc-link{display:inline-flex;align-items:center;gap:4px;font-size:.875rem;font-weight:600;color:#0ea5e9;background:none;border:none;cursor:pointer;padding:0;text-decoration:underline}.mt-doc-link:hover{color:#0284c7}.mt-deadline{display:inline-flex;align-items:center;gap:4px;font-size:.8rem;color:#64748b;background:#f1f5f9;padding:3px 10px;border-radius:9999px}.mt-deadline.overdue{background:#fee2e2;color:#dc2626;font-weight:600}.mt-card-body{display:flex;flex-direction:column;gap:6px}.mt-title{font-size:1rem;font-weight:600;color:#0f172a;margin:0}.mt-details{display:flex;gap:20px;font-size:.85rem;color:#475569}.mt-assign-number-hint{display:inline-flex;align-items:center;gap:5px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;padding:4px 10px;font-size:.8rem;color:#1d4ed8;margin-top:6px}.mt-comment{font-size:.85rem;color:#475569;font-style:italic;margin:4px 0 0}.mt-card-actions{display:flex;gap:8px;padding-top:4px;border-top:1px solid #f1f5f9}.mt-btn{padding:7px 18px;border-radius:8px;border:none;font-size:.85rem;font-weight:600;cursor:pointer;transition:opacity .15s}.mt-btn:hover{opacity:.85}.mt-btn-approve{background:#dcfce7;color:#15803d}.mt-btn-return{background:#fef3c7;color:#92400e}.mt-btn-reject{background:#fee2e2;color:#b91c1c}.mt-btn-rework{background:#fce7f3;color:#9d174d}.mt-section-label{display:flex;align-items:center;gap:6px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8;padding:4px 4px 8px}.mt-card-returned{border-left:3px solid #a855f7;background:#fdf4ff}.mt-card-returned:hover{box-shadow:0 4px 16px #a855f71a}.dm-overlay{position:fixed;inset:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:1000}.dm-modal{background:#fff;border-radius:16px;padding:28px 32px;width:440px;max-width:calc(100vw - 32px);display:flex;flex-direction:column;gap:16px;box-shadow:0 20px 60px #00000040}.dm-title{font-size:1.15rem;font-weight:700;color:#0f172a;margin:0}.dm-subtitle{font-size:.875rem;color:#64748b;margin:0}.dm-field{display:flex;flex-direction:column;gap:6px}.dm-label{font-size:.85rem;font-weight:600;color:#374151}.dm-required{color:#dc2626}.dm-textarea{resize:vertical;border:1px solid #e2e8f0;border-radius:8px;padding:10px 12px;font-size:.9rem;color:#0f172a;font-family:inherit;outline:none;transition:border-color .15s}.dm-textarea:focus{border-color:#6366f1}.dm-input{border:1px solid #e2e8f0;border-radius:8px;padding:9px 12px;font-size:.9rem;color:#0f172a;font-family:inherit;outline:none;transition:border-color .15s;width:100%;box-sizing:border-box}.dm-input:focus{border-color:#6366f1}.dm-hint{font-size:.78rem;color:#94a3b8;margin:0}.dm-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:4px}.dm-btn{padding:9px 22px;border-radius:8px;border:none;font-size:.9rem;font-weight:600;cursor:pointer;transition:opacity .15s}.dm-btn:disabled{opacity:.4;cursor:not-allowed}.dm-btn:not(:disabled):hover{opacity:.88}.dm-btn-cancel{background:#f1f5f9;color:#475569}.dm-btn-confirm{color:#fff}.nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:9999px;background:#dc2626;color:#fff;font-size:.7rem;font-weight:700;margin-left:auto;flex-shrink:0}.nr-approver-hint{display:flex;align-items:center;gap:8px;margin:0 40px 16px;padding:10px 16px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;font-size:.875rem;color:#1d4ed8}.nr-approver-count{margin-left:auto;font-weight:700;background:#dbeafe;padding:2px 8px;border-radius:9999px;font-size:.8rem}.nr-items-col-check{width:36px;text-align:center;padding:0 8px!important}.nr-item-checkbox{width:16px;height:16px;cursor:pointer;accent-color:#4f46e5}.nr-item-approved td{background:#f0fdf4!important}.nr-item-approved td:first-child{border-left:3px solid #22c55e}.nr-btn-approver{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:8px;font-size:.875rem;font-weight:600;border:none;cursor:pointer;transition:opacity .15s}.nr-btn-approver:hover{opacity:.85}.nr-btn-approver.nr-btn-approve{background:#22c55e;color:#fff}.nr-btn-approver.nr-btn-return{background:#f59e0b;color:#fff}.nr-btn-approver.nr-btn-reject{background:#ef4444;color:#fff}.nr-item-rejected td{background:#fef2f2!important}.nr-item-rejected td:first-child{border-left:3px solid #ef4444}.nr-item-returned td{background:#fef9f0!important}.nr-item-returned td:first-child{border-left:3px solid #f59e0b}.nr-item-returned td{text-decoration:line-through;color:#9ca3af!important}.nr-item-locked{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;color:#ef4444;font-size:.75rem;font-weight:700;cursor:help}.nr-item-notes{display:block;font-size:.75rem;color:#94a3b8;margin-top:2px}.nr-item-rejection-label{display:block;font-size:.75rem;color:#ef4444;margin-top:2px}.nr-returned-items-banner{display:flex;flex-direction:row;gap:10px;align-items:flex-start;margin:0 0 4px;padding:12px 16px;background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;font-size:.875rem;color:#9a3412}.nr-returned-items-banner svg{flex-shrink:0;margin-top:2px}.nr-returned-items-banner ul{margin:4px 0 0 16px;padding:0}.nr-returned-items-banner li{margin-bottom:2px}.ct-wrap{display:flex;flex-direction:column;gap:12px}.ct-list{display:flex;flex-direction:column;gap:12px;max-height:360px;overflow-y:auto;padding-right:4px}.ct-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:24px 0;color:#94a3b8;font-size:.875rem}.ct-empty-icon{color:#cbd5e1}.ct-empty p{margin:0}.ct-message{display:flex;align-items:flex-start;gap:10px}.ct-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#0ea5e9,#2563eb);color:#fff;font-size:.7rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;cursor:default}.ct-bubble{flex:1;background:#f1f5f9;border-radius:0 10px 10px;padding:8px 12px}.ct-meta{display:flex;align-items:center;gap:8px;margin-bottom:4px}.ct-author{font-size:.8rem;font-weight:600;color:#1e293b}.ct-date{font-size:.72rem;color:#94a3b8}.ct-text{margin:0;font-size:.875rem;color:#334155;white-space:pre-wrap;word-break:break-word}.ct-error{font-size:.8rem;color:#ef4444;padding:4px 0}.ct-compose{display:flex;gap:8px;align-items:flex-end}.ct-input{flex:1;padding:8px 12px;font-size:.875rem;font-family:inherit;border:1.5px solid #e2e8f0;border-radius:8px;resize:none;outline:none;background:#fff;color:#1e293b;transition:border-color .15s;line-height:1.5}.ct-input:focus{border-color:#0ea5e9}.ct-input:disabled{opacity:.6}.ct-send-btn{padding:8px 12px;background:#0ea5e9;color:#fff;border:none;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,opacity .15s;flex-shrink:0}.ct-send-btn:hover:not(:disabled){background:#0284c7}.ct-send-btn:disabled{opacity:.45;cursor:not-allowed}.nr-row-urgent{background:#fffbeb}.nr-row-urgent:hover{background:#fef3c7}.nr-urgent-badge{display:inline-flex;align-items:center;gap:3px;padding:1px 7px;background:#fef3c7;color:#b45309;border:1px solid #fcd34d;border-radius:9999px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin-right:6px;vertical-align:middle;white-space:nowrap}.nr-field-full{grid-column:1 / -1}.nr-urgent-label{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border:1.5px solid #e2e8f0;border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:500;color:#475569;background:#fff;transition:all .15s;-webkit-user-select:none;user-select:none;width:fit-content}.nr-urgent-label:hover{border-color:#fbbf24;background:#fffbeb;color:#92400e}.nr-urgent-label.active{border-color:#f59e0b;background:#fef3c7;color:#92400e;font-weight:600}.nr-urgent-checkbox{width:16px;height:16px;accent-color:#f59e0b;cursor:pointer}.nr-stock-label{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;color:#475569;cursor:pointer;-webkit-user-select:none;user-select:none}.nr-amount-filter{display:flex;align-items:center;gap:6px;flex-shrink:0}.nr-cp-select-wrap{position:relative}.nr-cp-dropdown{position:absolute;top:100%;left:0;right:0;z-index:100;background:#fff;border:1.5px solid #e2e8f0;border-radius:8px;box-shadow:0 4px 16px #0000001f;max-height:240px;overflow-y:auto;list-style:none;margin:2px 0 0;padding:4px 0}.nr-cp-dropdown-item{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;font-size:.875rem;transition:background .1s}.nr-cp-dropdown-item:hover{background:#f1f5f9}.nr-cp-name{font-weight:500;color:#1e293b}.nr-cp-bin{font-size:.75rem;color:#94a3b8;white-space:nowrap}.nr-attachment-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.nr-attachment-item{display:flex;align-items:center;gap:10px;padding:8px 10px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem}.nr-attachment-name{flex:1;display:flex;align-items:center;gap:6px;color:#2563eb;text-decoration:none;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nr-attachment-name:hover{text-decoration:underline}.nr-btn-link{background:none;border:none;padding:0;cursor:pointer;font-family:inherit;font-size:inherit;text-align:left}.nr-attachment-size{font-size:.75rem;color:#94a3b8;white-space:nowrap}.rp-tabs{display:flex;gap:4px;padding:0 40px;border-bottom:1px solid #e2e8f0;background:#fff}.rp-tab{padding:14px 20px;border:none;border-bottom:2px solid transparent;background:transparent;font-size:.9rem;font-weight:500;color:#64748b;cursor:pointer;transition:all .15s;display:inline-flex;align-items:center;gap:8px;margin-bottom:-1px}.rp-tab.active{color:#2563eb;border-bottom-color:#2563eb;font-weight:600}.rp-tab:hover:not(.active){color:#1e293b;background:#f8fafc}.nr-table-wrapper{padding:20px 40px 40px;flex:1}.rp-person-cell{display:flex;align-items:center;gap:8px}.rp-avatar{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#0ea5e9,#2563eb);color:#fff;font-size:.65rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;letter-spacing:.02em}.rp-card-type{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:2px 8px;border-radius:9999px}.rp-card-type-need{background:#dbeafe;color:#1d4ed8}.rp-card-type-payment{background:#d1fae5;color:#065f46}.rp-card-type-contract{background:#ede9fe;color:#5b21b6}.wz-overlay{position:fixed;inset:0;background:#0f172a99;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.wz-modal{background:#fff;border-radius:20px;width:100%;max-width:680px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 24px 80px #0000004d;overflow:hidden;transition:max-width .2s ease}.wz-modal.wz-modal-wide{max-width:1000px}.wz-header{padding:24px 28px 20px;border-bottom:1px solid #e2e8f0;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-shrink:0}.wz-header-left{display:flex;flex-direction:column;gap:4px}.wz-title{font-size:1.15rem;font-weight:700;color:#0f172a;margin:0}.wz-subtitle{font-size:.85rem;color:#64748b;margin:0}.wz-close{width:32px;height:32px;border-radius:8px;border:none;background:#f1f5f9;color:#64748b;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .15s}.wz-close:hover{background:#e2e8f0}.wz-steps{display:flex;align-items:center;padding:16px 28px;gap:0;flex-shrink:0;border-bottom:1px solid #f1f5f9}.wz-step-item{display:flex;align-items:center;gap:8px;flex:none}.wz-step-num{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:700;flex-shrink:0;border:2px solid #e2e8f0;background:#fff;color:#94a3b8;transition:all .2s}.wz-step-item.active .wz-step-num{background:#2563eb;border-color:#2563eb;color:#fff}.wz-step-item.done .wz-step-num{background:#22c55e;border-color:#22c55e;color:#fff}.wz-step-label{font-size:.82rem;color:#94a3b8;font-weight:500;white-space:nowrap}.wz-step-item.active .wz-step-label{color:#1e293b;font-weight:600}.wz-step-item.done .wz-step-label{color:#64748b}.wz-step-connector{flex:1;height:2px;background:#e2e8f0;margin:0 8px;transition:background .2s}.wz-step-connector.done{background:#22c55e}.wz-body{flex:1;overflow-y:auto;padding:24px 28px}.wz-type-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:4px}.wz-type-card{border:2px solid #e2e8f0;border-radius:16px;padding:24px 20px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;transition:all .15s;background:#fff}.wz-type-card:hover{border-color:#93c5fd;background:#eff6ff}.wz-type-card.selected{border-color:#2563eb;background:#eff6ff}.wz-type-icon{width:56px;height:56px;border-radius:16px;display:flex;align-items:center;justify-content:center;color:#fff}.wz-type-icon-need{background:linear-gradient(135deg,#0ea5e9,#2563eb)}.wz-type-icon-payment{background:linear-gradient(135deg,#10b981,#059669)}.wz-type-name{font-size:.95rem;font-weight:700;color:#0f172a}.wz-type-desc{font-size:.8rem;color:#64748b;line-height:1.5}.wz-form-section{display:flex;flex-direction:column;gap:20px}.wz-section-title{font-size:.875rem;font-weight:700;color:#0f172a;margin:0 0 14px;padding-bottom:8px;border-bottom:1px solid #f1f5f9}.wz-active-company{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#f1f5f9;border-radius:8px;margin-bottom:14px}.wz-active-company-label{font-size:.8rem;color:#64748b;font-weight:500;white-space:nowrap}.wz-active-company-name{font-size:.875rem;color:#0f172a;font-weight:600}.wz-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.wz-field-full{grid-column:1 / -1}.wz-field{display:flex;flex-direction:column;gap:5px}.wz-label{font-size:.8rem;font-weight:600;color:#475569;letter-spacing:.02em}.wz-required{color:#ef4444}.wz-field-hint{font-size:.75rem;color:#94a3b8;font-weight:400;margin-left:6px}.wz-input,.wz-select{width:100%;padding:8px 12px;border:1.5px solid #e2e8f0;border-radius:8px;font-size:.875rem;color:#1e293b;background:#fff;outline:none;transition:border-color .15s,box-shadow .15s;font-family:inherit;box-sizing:border-box}.wz-input:focus,.wz-select:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.wz-items-wrap{overflow-x:auto;border:1px solid #e2e8f0;border-radius:10px}.wz-items-table{width:100%;border-collapse:collapse;font-size:.875rem}.wz-items-table th{background:#f8fafc;padding:8px 10px;text-align:left;font-size:.75rem;font-weight:600;color:#64748b;letter-spacing:.04em;text-transform:uppercase;border-bottom:1px solid #e2e8f0}.wz-items-table td{padding:6px 8px;border-bottom:1px solid #f1f5f9;vertical-align:middle}.wz-items-table tr:last-child td{border-bottom:none}.wz-items-tfoot td{padding:10px;border-top:2px solid #e2e8f0!important;border-bottom:none!important}.wz-items-total-label{font-size:.78rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.04em}.wz-items-total-value{font-size:.95rem;font-weight:700;color:#0f172a;text-align:right}.wz-input-inline{border:none;border-radius:4px;padding:4px 6px;background:transparent;font-size:.875rem;font-family:inherit;width:100%;outline:none;transition:background .12s,border .12s}.wz-input-inline:focus{background:#fff;border:1.5px solid #2563eb;box-shadow:0 0 0 2px #2563eb14}.wz-input-num{width:80px;text-align:right}.wz-input-unit{width:60px;text-align:center}.wz-input-price{width:100px;text-align:right}.wz-col-name{min-width:160px}.wz-col-qty{width:80px}.wz-col-unit{width:70px}.wz-col-price{width:110px}.wz-col-total{width:110px;text-align:right}.wz-col-del{width:36px}.wz-footer{padding:16px 28px;border-top:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0;background:#fff}.wz-footer-right{display:flex;gap:10px;align-items:center}.wz-error{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#fee2e2;color:#b91c1c;border-radius:8px;font-size:.82rem;margin-bottom:16px}.rp-filter-bar{padding:12px 40px;display:flex;gap:12px;align-items:center;background:#fff;border-bottom:1px solid #e2e8f0;flex-wrap:wrap}.rp-chips{display:flex;gap:6px;align-items:center;flex-shrink:0}.rp-chips-divider{width:1px;height:20px;background:#e2e8f0;flex-shrink:0}.rp-filter-chip{padding:5px 12px;border-radius:9999px;border:1.5px solid #e2e8f0;background:#fff;font-size:.8rem;color:#64748b;cursor:pointer;transition:all .15s;font-weight:500;white-space:nowrap;font-family:inherit}.rp-filter-chip:hover:not(.active){border-color:#cbd5e1;color:#334155;background:#f8fafc}.rp-filter-chip.active{background:#eff6ff;border-color:#93c5fd;color:#1d4ed8;font-weight:600}.rp-search-wrap{position:relative;display:flex;align-items:center;flex:1;min-width:180px;max-width:320px;margin-left:auto}.rp-search-icon{position:absolute;left:10px;color:#94a3b8;pointer-events:none;flex-shrink:0}.rp-search-input{width:100%;padding:7px 12px 7px 32px;border:1.5px solid #e2e8f0;border-radius:9999px;font-size:.85rem;color:#1e293b;background:#f8fafc;outline:none;transition:border-color .15s,background .15s,box-shadow .15s;font-family:inherit}.rp-search-input::placeholder{color:#94a3b8}.rp-search-input:focus{border-color:#93c5fd;background:#fff;box-shadow:0 0 0 3px #93c5fd40}.cp-layout{display:flex;flex:1;overflow:hidden;min-height:0}.cp-sidebar{width:300px;flex-shrink:0;border-right:1px solid #e2e8f0;display:flex;flex-direction:column;overflow:hidden;background:#fff}.cp-sidebar-toolbar{padding:16px;border-bottom:1px solid #e2e8f0;display:flex;flex-direction:column;gap:10px}.cp-search-wrap{position:relative}.cp-search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:#94a3b8}.cp-search-input{width:100%;padding:8px 12px 8px 32px;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;color:#0f172a;background:#f8fafc;outline:none;box-sizing:border-box}.cp-search-input:focus{border-color:#6366f1;background:#fff}.cp-inactive-toggle{display:flex;align-items:center;gap:8px;font-size:.8rem;color:#64748b;cursor:pointer;-webkit-user-select:none;user-select:none}.cp-list-error{display:flex;align-items:center;gap:6px;padding:10px 16px;font-size:.8rem;color:#dc2626;background:#fee2e2}.cp-empty-list{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#94a3b8;padding:40px 16px}.cp-empty-list p{font-size:.875rem;margin:0}.cp-list{flex:1;overflow-y:auto;list-style:none;margin:0;padding:0}.cp-list-item{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;cursor:pointer;border-bottom:1px solid #f1f5f9;transition:background .1s;gap:8px}.cp-list-item:hover{background:#f8fafc}.cp-list-item.active{background:#eff6ff;border-left:3px solid #4f46e5}.cp-list-item.inactive{opacity:.55}.cp-list-item-main{display:flex;flex-direction:column;gap:2px;min-width:0}.cp-list-name{font-size:.875rem;font-weight:600;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cp-list-bin{font-size:.75rem;color:#64748b}.cp-list-item-right{display:flex;align-items:center;gap:6px;flex-shrink:0;color:#94a3b8}.cp-contracts-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 5px;border-radius:9999px;background:#e0e7ff;color:#4338ca;font-size:.72rem;font-weight:700}.cp-detail{flex:1;overflow-y:auto;padding:32px 40px;display:flex;flex-direction:column;gap:24px;background:#f8fafc}.cp-detail-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#94a3b8}.cp-detail-empty p{font-size:.95rem;margin:0}.cp-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.cp-detail-name{font-size:1.4rem;font-weight:700;color:#0f172a;margin:0 0 4px}.cp-detail-sub{font-size:.875rem;color:#64748b;margin:0}.cp-detail-actions{display:flex;gap:8px;flex-shrink:0}.cp-btn-danger{color:#dc2626!important;border-color:#fecaca!important}.cp-contracts-section{display:flex;flex-direction:column;gap:12px}.cp-contracts-header{display:flex;align-items:center;justify-content:space-between}.cp-contracts-header h3{font-size:1rem;font-weight:700;color:#0f172a;margin:0;display:flex;align-items:center;gap:8px}.cp-contracts-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:9999px;background:#e0e7ff;color:#4338ca;font-size:.78rem;font-weight:700}.cp-no-contracts{display:flex;flex-direction:column;align-items:center;gap:8px;padding:32px;background:#fff;border:1px dashed #e2e8f0;border-radius:12px;color:#94a3b8}.cp-no-contracts p{font-size:.875rem;margin:0}.cp-contract-list{display:flex;flex-direction:column;gap:8px}.cp-contract-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:14px 18px;display:flex;flex-direction:column;gap:6px;transition:box-shadow .15s}.cp-contract-card:hover{box-shadow:0 2px 10px #00000012}.cp-contract-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.cp-contract-num{font-size:.9rem;font-weight:700;color:#0f172a;margin-right:8px}.cp-contract-status{display:inline-block;padding:2px 8px;border-radius:9999px;font-size:.72rem;font-weight:600;margin-right:6px}.cp-contract-status-active{background:#dcfce7;color:#15803d}.cp-contract-status-expired{background:#fef3c7;color:#92400e}.cp-contract-status-terminated{background:#fee2e2;color:#b91c1c}.cp-contract-type{font-size:.75rem;color:#64748b;background:#f1f5f9;padding:2px 8px;border-radius:9999px}.cp-contract-card-actions{display:flex;gap:4px;flex-shrink:0}.cp-contract-title{font-size:.875rem;color:#475569;margin:0}.cp-contract-returned-banner{display:flex;align-items:flex-start;gap:6px;background:#fff7ed;border:1px solid #fed7aa;border-radius:6px;padding:6px 10px;font-size:.8rem;color:#9a3412;margin-top:6px;line-height:1.4}.cp-contract-meta{display:flex;gap:16px;font-size:.8rem;color:#94a3b8}.cp-modal{background:#fff;border-radius:16px;width:560px;max-width:calc(100vw - 32px);max-height:calc(100vh - 64px);display:flex;flex-direction:column;box-shadow:0 20px 60px #00000040;overflow:hidden}.cp-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid #e2e8f0;flex-shrink:0}.cp-modal-header h3{font-size:1.1rem;font-weight:700;color:#0f172a;margin:0}.cp-modal-close{background:none;border:none;color:#94a3b8;cursor:pointer;padding:4px;border-radius:6px;display:flex;align-items:center;justify-content:center}.cp-modal-close:hover{background:#f1f5f9;color:#475569}.cp-modal-body{padding:20px 24px;overflow-y:auto;flex:1}.cp-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid #e2e8f0;flex-shrink:0}.qt-status-pill{display:inline-flex;align-items:center;padding:4px 12px;border-radius:9999px;font-size:.78rem;font-weight:600;white-space:nowrap}.qt-status-draft{background:#f1f5f9;color:#64748b}.qt-status-on_review{background:#fef3c7;color:#92400e}.qt-status-approved{background:#dcfce7;color:#15803d}.qt-status-rejected{background:#fee2e2;color:#b91c1c}.qt-status-closed{background:#e0e7ff;color:#4338ca}.qt-list-view{display:flex;flex-direction:column;gap:20px;padding:28px 32px 40px;flex:1}.qt-list-filters{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.qt-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.qt-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:20px 22px;cursor:pointer;display:flex;flex-direction:column;gap:10px;transition:box-shadow .15s,transform .15s}.qt-card:hover{box-shadow:0 8px 24px #00000017;transform:translateY(-1px)}.qt-card-top{display:flex;align-items:center;justify-content:space-between}.qt-card-chevron{color:#cbd5e1;transition:color .15s}.qt-card:hover .qt-card-chevron{color:#6366f1}.qt-card-title{font-size:1rem;font-weight:700;color:#0f172a;line-height:1.4}.qt-card-meta{display:flex;flex-wrap:wrap;gap:8px}.qt-card-meta-item{display:inline-flex;align-items:center;gap:4px;font-size:.78rem;color:#64748b;background:#f8fafc;padding:3px 10px;border-radius:9999px}.qt-card-winner{background:#dcfce7;color:#15803d}.qt-card-date{font-size:.75rem;color:#94a3b8}.qt-detail-view{display:flex;flex-direction:column;gap:20px;padding:24px 32px 48px;flex:1}.qt-notes-bar{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;font-size:.875rem;color:#475569}.qt-winner-banner{display:flex;align-items:center;gap:10px;padding:12px 18px;background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1px solid #86efac;border-radius:10px;font-size:.875rem;color:#166534}.qt-section{background:#fff;border:1px solid #e2e8f0;border-radius:14px;overflow:hidden}.qt-section-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #f1f5f9}.qt-section-title{font-size:.875rem;font-weight:600;color:#64748b}.qt-section-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:16px 20px;background:none;border:none;cursor:pointer;font-size:.875rem;font-weight:600;color:#64748b;text-align:left}.qt-section-toggle:hover{background:#f8fafc}.qt-section-body{padding:16px 20px;border-top:1px solid #f1f5f9}.qt-empty-state{display:flex;flex-direction:column;align-items:center;gap:12px;padding:56px 32px;color:#94a3b8}.qt-empty-state p{font-size:.95rem;color:#64748b;margin:0}.qt-table-wrap{overflow-x:auto}.qt-table{width:100%;border-collapse:collapse;font-size:.875rem}.qt-th-pos{padding:12px 20px;text-align:left;font-size:.75rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;background:#f8fafc;border-bottom:1px solid #e2e8f0;min-width:260px;vertical-align:bottom}.qt-th-vendor{padding:10px 8px 6px;text-align:center;background:#f8fafc;border-bottom:2px solid var(--vendor-border, #e2e8f0);vertical-align:bottom}.qt-vendor-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 12px 5px 14px;border-radius:9999px;font-size:.82rem;font-weight:600;max-width:240px}.qt-vendor-chip-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.qt-vendor-min-badge{font-size:.7rem;font-weight:700;background:#00000014;padding:1px 6px;border-radius:9999px;white-space:nowrap;flex-shrink:0}.qt-vendor-add-btn{background:#00000014;border:none;border-radius:9999px;width:20px;height:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .15s}.qt-vendor-add-btn:hover{background:#00000029}.qt-th-add-vendor{padding:10px 16px;background:#f8fafc;border-bottom:2px solid #e2e8f0;vertical-align:bottom;min-width:110px}.qt-add-vendor-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 12px;background:none;border:1.5px dashed #cbd5e1;border-radius:10px;color:#94a3b8;font-size:.75rem;cursor:pointer;width:100%;transition:all .15s}.qt-add-vendor-btn:hover{border-color:#6366f1;color:#6366f1;background:#f5f3ff}.qt-th-sub{padding:6px 10px 8px;text-align:right;font-size:.72rem;font-weight:500;color:#94a3b8;background:#f8fafc;border-bottom:1px solid #e2e8f0;white-space:nowrap;min-width:80px}.qt-th-sub:first-of-type{text-align:center}.qt-th-total{min-width:110px}.qt-row{border-bottom:1px solid #f1f5f9;transition:background .1s}.qt-row:hover{background:#fafbff}.qt-row:last-child{border-bottom:none}.qt-td-pos{padding:12px 20px;vertical-align:top;display:flex;gap:12px;align-items:flex-start}.qt-pos-num{min-width:22px;height:22px;border-radius:9999px;background:#e0e7ff;color:#4338ca;font-size:.72rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px}.qt-pos-info{display:flex;flex-direction:column;gap:2px}.qt-pos-name{font-size:.875rem;font-weight:600;color:#0f172a;line-height:1.4}.qt-pos-article{font-size:.75rem;color:#94a3b8;font-family:Courier New,monospace}.qt-pos-qty{font-size:.75rem;color:#64748b;background:#f1f5f9;padding:1px 6px;border-radius:9999px;width:fit-content}.qt-td{padding:12px 10px;vertical-align:middle;text-align:right;font-size:.875rem;color:#475569;border-left:1px solid #f1f5f9;white-space:nowrap}.qt-td-selected{background:#fafffe;border-top:2px solid transparent}.qt-td-price{color:#1e293b}.qt-td-sum{font-weight:600;color:#0f172a}.qt-td-empty{text-align:center;color:#e2e8f0;font-size:1.2rem;padding:12px 24px;border-left:1px solid #f1f5f9}.qt-delivery{font-size:.78rem;color:#64748b;text-align:center;display:block}.qt-sum-cell{display:flex;align-items:center;justify-content:flex-end;gap:6px}.qt-sum-selected{color:#15803d}.qt-check-icon{flex-shrink:0}.qt-row-actions{display:flex;align-items:center;gap:2px;opacity:0;transition:opacity .15s}.qt-row:hover .qt-row-actions{opacity:1}.qt-action-btn{width:22px;height:22px;border:none;border-radius:5px;background:#f1f5f9;color:#64748b;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .12s,color .12s}.qt-action-btn:hover{background:#e2e8f0;color:#0f172a}.qt-action-danger:hover{background:#fee2e2!important;color:#dc2626!important}.qt-total-row{background:#f8fafc;border-top:2px solid #e2e8f0}.qt-td-total-label{padding:14px 20px;font-size:.82rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.04em;text-align:right}.qt-td-total-val{padding:14px 10px;text-align:right;font-size:1rem;font-weight:700;color:#0f172a;border-left:1px solid #e2e8f0}.qt-total-min{font-size:1rem;font-weight:700}.qt-vendor-meta-grid{display:flex;flex-wrap:wrap;gap:12px;padding:16px 20px;border-top:1px solid #f1f5f9;background:#fafafa}.qt-vendor-meta-card{flex:1;min-width:200px;background:#fff;border:1.5px solid #e2e8f0;border-top-width:3px;border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:6px}.qt-vendor-meta-name{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px}.qt-vendor-meta-row{display:flex;align-items:baseline;gap:6px}.qt-vendor-meta-label{font-size:.72rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.04em;flex-shrink:0;min-width:64px}.qt-vendor-meta-val{font-size:.8rem;color:#1e293b;line-height:1.4}.qt-modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}@media(max-width:600px){.qt-modal-grid{grid-template-columns:1fr}}.qt-modal-section{background:#f8fafc;border-radius:10px;padding:14px 16px}.qt-modal-section-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8;margin-bottom:12px}.fleet-dashboard-scroll{flex:1;overflow-y:auto;overflow-x:hidden;min-height:0}.fleet-dashboard{padding:1.25rem 1.5rem 2rem;display:flex;flex-direction:column;gap:1rem;width:100%;box-sizing:border-box}.fleet-tabs{display:flex;gap:.25rem;border-bottom:1px solid var(--border-color)}.fleet-tab{padding:.45rem .875rem;font-size:.8125rem;font-weight:500;color:var(--text-secondary);border-bottom:2px solid transparent;margin-bottom:-1px;transition:all var(--transition-fast);background:none;border-top:none;border-left:none;border-right:none;white-space:nowrap}.fleet-tab:hover{color:var(--text-primary)}.fleet-tab.active{color:var(--brand-primary);border-bottom-color:var(--brand-primary)}.fleet-stat-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem}.fleet-stat-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:.875rem .875rem .75rem;box-shadow:var(--shadow-sm);min-width:0}.fleet-stat-value{font-size:1.625rem;font-weight:700;color:var(--text-primary);line-height:1}.fleet-stat-label{font-size:.72rem;color:var(--text-secondary);margin-top:.25rem;line-height:1.3}.fleet-stat-delta{display:flex;align-items:center;gap:.2rem;font-size:.7rem;margin-top:.375rem;font-weight:500}.fleet-stat-delta.up{color:#16a34a}.fleet-stat-delta.down{color:#dc2626}.fleet-main-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.875rem}.fleet-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1rem;box-shadow:var(--shadow-sm);min-width:0}.fleet-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.fleet-card-title{font-size:.875rem;font-weight:600;color:var(--text-primary)}.fleet-card-menu{color:var(--text-secondary);padding:.2rem;border-radius:var(--radius-md);flex-shrink:0}.fleet-card-menu:hover{background:var(--bg-secondary)}.fleet-table{width:100%;border-collapse:collapse;font-size:.78rem;table-layout:fixed}.fleet-table thead th{text-align:left;color:var(--text-secondary);font-weight:500;font-size:.68rem;text-transform:uppercase;letter-spacing:.03em;padding:.3rem .375rem;border-bottom:1px solid var(--border-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fleet-table thead th:nth-child(1){width:40%}.fleet-table thead th:nth-child(2){width:15%}.fleet-table thead th:nth-child(3){width:15%}.fleet-table thead th:nth-child(4){width:20%}.fleet-table thead th:nth-child(5){width:10%}.fleet-table-row{cursor:pointer;transition:background var(--transition-fast)}.fleet-table-row:hover td{background:var(--bg-secondary)}.fleet-table tbody td{padding:.5rem .375rem;border-bottom:1px solid var(--border-color);color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fleet-table tbody tr:last-child td{border-bottom:none}.fleet-machine-id-cell{display:flex;align-items:center;gap:.5rem;overflow:hidden}.fleet-machine-icon{width:36px;height:24px;flex-shrink:0;border-radius:3px;object-fit:contain;background:var(--bg-secondary)}.fleet-machine-id-text{font-weight:600;font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary)}.fleet-machine-sub{font-size:.65rem;color:var(--text-secondary);margin-top:1px}.fleet-status-dot{display:inline-flex;align-items:center;gap:.25rem;font-size:.68rem;font-weight:500;padding:.15rem .5rem;border-radius:999px;white-space:nowrap}.fleet-status-dot:before{content:"";width:6px;height:6px;border-radius:50%;flex-shrink:0}.fleet-status-dot.active{background:#dcfce7;color:#16a34a}.fleet-status-dot.active:before{background:#16a34a}.fleet-status-dot.maintenance{background:#fef3c7;color:#d97706}.fleet-status-dot.maintenance:before{background:#d97706}.fleet-status-dot.idle{background:#f1f5f9;color:#475569}.fleet-status-dot.critical{background:#fee2e2;color:#dc2626}.fleet-driver-cell{display:flex;align-items:center;gap:.375rem;overflow:hidden}.fleet-driver-av{width:22px;height:22px;border-radius:50%;background:var(--brand-primary);color:#fff;font-size:.58rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.fleet-driver-name{font-size:.72rem;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fleet-eff-badge{display:inline-flex;align-items:center;gap:.15rem;font-size:.72rem;font-weight:600}.fleet-eff-badge.up{color:#16a34a}.fleet-eff-badge.down{color:#dc2626}.fleet-badge-up{display:inline-flex;align-items:center;gap:.15rem;background:#dcfce7;color:#16a34a;padding:.1rem .375rem;border-radius:999px;font-size:.68rem;font-weight:500}.fleet-row-arrow{color:var(--text-secondary)}.fleet-legend{display:flex;gap:.875rem;margin-bottom:.625rem;flex-wrap:wrap}.fleet-legend-item{display:flex;align-items:center;gap:.3rem;font-size:.7rem;color:var(--text-secondary)}.fleet-legend-item .dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.fleet-legend-item.operator .dot{background:#f59e0b}.fleet-legend-item.sensors .dot{background:#6366f1}.fleet-legend-item.machine .dot{background:#004560}.fleet-chart-wrap{display:flex;flex-direction:column;gap:.25rem}.fleet-chart-svg{width:100%;height:120px}.fleet-chart-labels{display:flex;justify-content:space-between;font-size:.6rem;color:var(--text-secondary)}.fleet-operators-grid{display:flex;gap:0;justify-content:space-between;flex-wrap:nowrap}.fleet-operator-item{display:flex;flex-direction:column;align-items:center;gap:.2rem;flex:1;min-width:0}.fleet-operator-avatar{width:44px;height:44px;border-radius:50%;background:var(--brand-primary);color:#fff;font-size:.8rem;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0}.fleet-operator-score{font-size:1.25rem;font-weight:700;color:var(--text-primary);line-height:1;margin-top:.2rem}.fleet-operator-name{font-size:.65rem;color:var(--text-secondary);text-align:center;max-width:72px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.fleet-operator-delta{display:flex;align-items:center;gap:.15rem;font-size:.65rem;font-weight:500}.fleet-operator-delta.up{color:#16a34a}.fleet-operator-delta.down{color:#dc2626}.fleet-machines-scroll{flex:1;overflow-y:auto;overflow-x:hidden;min-height:0}.fleet-machines{padding:1.25rem 1.5rem 2rem;display:flex;flex-direction:column;gap:1rem;width:100%;box-sizing:border-box}.fleet-machines-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.fleet-machines-title{font-size:1.25rem;font-weight:700;color:var(--text-primary)}.fleet-machines-sub{font-size:.78rem;color:var(--text-secondary);margin-top:.2rem}.fleet-btn-primary{display:inline-flex;align-items:center;gap:.35rem;background:var(--brand-primary);color:#fff;padding:.45rem .875rem;border-radius:var(--radius-md);font-size:.8125rem;font-weight:500;transition:background var(--transition-fast);white-space:nowrap;flex-shrink:0}.fleet-btn-primary:hover{background:var(--brand-primary-hover)}.fleet-btn-outline{display:inline-flex;align-items:center;gap:.3rem;border:1px solid var(--border-color);color:var(--text-secondary);padding:.45rem .75rem;border-radius:var(--radius-md);font-size:.78rem;font-weight:500;background:var(--bg-primary);white-space:nowrap;flex-shrink:0}.fleet-btn-outline:hover{border-color:var(--brand-primary);color:var(--brand-primary)}.fleet-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.fleet-summary-card{background:var(--bg-primary);border:1px solid var(--border-color);border-top:3px solid;border-radius:var(--radius-lg);padding:.875rem;box-shadow:var(--shadow-sm);min-width:0}.fleet-summary-value{font-size:1.75rem;font-weight:700;line-height:1}.fleet-summary-label{font-size:.75rem;color:var(--text-secondary);margin-top:.25rem}.fleet-truck-banner{background:linear-gradient(135deg,#004560,#003348);border-radius:var(--radius-lg);padding:1.125rem 1.25rem;color:#fff}.fleet-truck-banner-content{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.fleet-truck-banner-text h2{font-size:1rem;font-weight:700;margin-bottom:.25rem}.fleet-truck-banner-text p{font-size:.775rem;opacity:.85}.fleet-truck-banner-text strong{color:#f59e0b;font-weight:600}.fleet-banner-images{display:flex;gap:.75rem;flex-shrink:0}.fleet-banner-thumb{width:110px;height:70px;object-fit:contain;filter:drop-shadow(0 3px 8px rgba(0,0,0,.35));border-radius:6px}.fleet-truck-status-row{display:flex;gap:.625rem;flex-wrap:wrap;margin-top:.875rem}.fleet-status-pill{display:inline-flex;align-items:center;gap:.25rem;font-size:.7rem;font-weight:500;padding:.2rem .625rem;border-radius:999px}.fleet-status-pill.active{background:#16a34a33;color:#86efac}.fleet-status-pill.maintenance{background:#f59e0b33;color:#fcd34d}.fleet-status-pill.idle{background:#ffffff1f;color:#e2e8f0}.fleet-status-pill.critical{background:#dc262633;color:#fca5a5}.fleet-status-pill.location{background:#ffffff1f;color:#e2e8f0}.fleet-filters-row{display:flex;align-items:center;gap:.625rem;flex-wrap:wrap}.fleet-search-wrap{position:relative;flex:1;min-width:180px;max-width:300px}.fleet-search-icon{position:absolute;left:.625rem;top:50%;transform:translateY(-50%);color:var(--text-secondary);pointer-events:none}.fleet-search-input{width:100%;padding:.45rem .625rem .45rem 2rem;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:.78rem;background:var(--bg-primary);color:var(--text-primary)}.fleet-search-input:focus{border-color:var(--border-focus);outline:none}.fleet-filter-tabs{display:flex;gap:.2rem;background:var(--bg-secondary);padding:.2rem;border-radius:var(--radius-md);flex-wrap:nowrap}.fleet-filter-tab{padding:.25rem .625rem;font-size:.72rem;font-weight:500;border-radius:calc(var(--radius-md) - 2px);color:var(--text-secondary);white-space:nowrap;transition:all var(--transition-fast)}.fleet-filter-tab:hover{color:var(--text-primary)}.fleet-filter-tab.active{background:var(--bg-primary);color:var(--brand-primary);box-shadow:var(--shadow-sm)}.fleet-machines-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;width:100%}.fleet-machines-table{width:100%;border-collapse:collapse;font-size:.78rem;table-layout:fixed}.fleet-machines-table thead th{text-align:left;padding:.625rem .75rem;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--text-secondary);border-bottom:1px solid var(--border-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fleet-machines-table thead th:nth-child(1){width:22%}.fleet-machines-table thead th:nth-child(2){width:10%}.fleet-machines-table thead th:nth-child(3){width:14%}.fleet-machines-table thead th:nth-child(4){width:9%}.fleet-machines-table thead th:nth-child(5){width:6%}.fleet-machines-table thead th:nth-child(6){width:12%}.fleet-machines-table thead th:nth-child(7){width:5%}.fleet-machines-table thead th:nth-child(8){width:8%}.fleet-machines-table thead th:nth-child(9){width:10%}.fleet-machines-row{cursor:pointer;transition:background var(--transition-fast)}.fleet-machines-row:hover td{background:var(--bg-secondary)}.fleet-machines-table tbody td{padding:.5rem .75rem;border-bottom:1px solid var(--border-color);vertical-align:middle;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fleet-machines-table tbody tr:last-child td{border-bottom:none}.fleet-machine-cell{display:flex;align-items:center;gap:.5rem;overflow:hidden}.fleet-machine-thumb{width:48px;height:32px;border-radius:4px;object-fit:cover;background:var(--bg-secondary);border:1px solid var(--border-color);flex-shrink:0}.fleet-machine-thumb-fallback{width:48px;height:32px;border-radius:4px;background:var(--bg-secondary);border:1px solid var(--border-color);flex-shrink:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 32' fill='none'%3E%3Crect x='2' y='10' width='32' height='14' rx='2' fill='%23CBD5E1'/%3E%3Crect x='34' y='6' width='12' height='18' rx='2' fill='%2394A3B8'/%3E%3Ccircle cx='11' cy='27' r='5' fill='%2364748B'/%3E%3Ccircle cx='35' cy='27' r='5' fill='%2364748B'/%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat;background-position:center}.fleet-machine-id{font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fleet-machine-model{font-size:.68rem;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fleet-td-secondary{color:var(--text-secondary)}.fleet-td-nowrap{white-space:nowrap}.fleet-td-num{text-align:right;padding-right:1rem!important}.fleet-status-badge{display:inline-flex;align-items:center;gap:.2rem;padding:.2rem .5rem;border-radius:999px;font-size:.68rem;font-weight:500;white-space:nowrap}.fleet-status-badge.active{background:#dcfce7;color:#16a34a}.fleet-status-badge.maintenance{background:#fef3c7;color:#d97706}.fleet-status-badge.idle{background:#f1f5f9;color:#475569}.fleet-status-badge.critical{background:#fee2e2;color:#dc2626}.fleet-fuel-cell{display:flex;align-items:center;gap:.375rem}.fleet-fuel-bar-bg{flex:1;height:5px;background:var(--bg-secondary);border-radius:999px;overflow:hidden;min-width:0}.fleet-fuel-bar-fill{height:100%;border-radius:999px}.fleet-fuel-pct{font-size:.7rem;color:var(--text-secondary);flex-shrink:0;width:30px;text-align:right}.fleet-alerts-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;background:#fee2e2;color:#dc2626;font-size:.68rem;font-weight:700;border-radius:999px;padding:0 .35rem}.fleet-no-alerts{color:var(--text-secondary)}.fleet-efficiency-cell{display:inline-flex;align-items:center;gap:.2rem;font-weight:500;font-size:.78rem}.fleet-efficiency-cell.up{color:#16a34a}.fleet-efficiency-cell.down{color:#dc2626}.fleet-driver-cell-table{display:flex;align-items:center;gap:.375rem;overflow:hidden}.fleet-driver-av-sm{width:24px;height:24px;border-radius:50%;background:var(--brand-primary);color:#fff;font-size:.58rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.fleet-driver-ln{font-size:.75rem;font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fleet-driver-fn{font-size:.65rem;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fleet-location-tag{display:inline-block;font-size:.68rem;font-weight:500;color:var(--brand-primary);background:#e0f2fe;padding:.15rem .5rem;border-radius:999px;white-space:nowrap}.fleet-empty{padding:1.5rem;text-align:center;color:var(--text-secondary);font-size:.8125rem}.fmd-scroll{flex:1;overflow-y:auto;overflow-x:hidden;min-height:0}.fmd-page{padding:1.125rem 1.5rem 2rem;display:flex;flex-direction:column;gap:1rem;width:100%;box-sizing:border-box}.fmd-topbar{display:flex;align-items:center;justify-content:space-between}.fmd-back-btn{display:inline-flex;align-items:center;gap:.3rem;color:var(--text-secondary);font-size:.8125rem;font-weight:500;padding:.325rem .625rem;border-radius:var(--radius-md);transition:all var(--transition-fast)}.fmd-back-btn:hover{background:var(--bg-secondary);color:var(--text-primary)}.fmd-topbar-left{display:flex;align-items:center;gap:.75rem}.fmd-nav-btns{display:flex;align-items:center;gap:.25rem}.fmd-nav-btn{width:26px;height:26px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);transition:all var(--transition-fast);background:var(--bg-primary)}.fmd-nav-btn:disabled{opacity:.35;cursor:not-allowed}.fmd-nav-btn:not(:disabled):hover{border-color:var(--brand-primary);color:var(--brand-primary)}.fmd-nav-label{font-size:.72rem;color:var(--text-secondary);padding:0 .25rem}.fmd-topbar-right{display:flex;align-items:center;gap:.625rem}.fmd-alerts-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;background:#fee2e2;color:#dc2626;font-size:.65rem;font-weight:700;border-radius:999px;padding:0 .3rem;margin-left:.3rem}.fmd-status-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .625rem;border-radius:999px;font-size:.75rem;font-weight:500}.fmd-status-badge.active{background:#dcfce7;color:#16a34a}.fmd-status-badge.maintenance{background:#fef3c7;color:#d97706}.fmd-status-badge.idle{background:#f1f5f9;color:#475569}.fmd-status-badge.critical{background:#fee2e2;color:#dc2626}.fmd-menu-btn{color:var(--text-secondary);padding:.3rem;border-radius:var(--radius-md)}.fmd-menu-btn:hover{background:var(--bg-secondary)}.fmd-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:1rem;align-items:start;width:100%}.fmd-left-panel{display:flex;flex-direction:column;gap:.875rem;min-width:0}.fmd-machine-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1rem;box-shadow:var(--shadow-sm)}.fmd-machine-visual{background:var(--bg-secondary);border-radius:var(--radius-md);margin-bottom:.875rem;display:flex;align-items:center;justify-content:center;overflow:hidden;height:150px}.fmd-machine-img{width:100%;height:100%;object-fit:contain;display:block;padding:.5rem}.fmd-machine-info{margin-bottom:.75rem}.fmd-machine-id-row{display:flex;align-items:baseline;gap:.5rem}.fmd-machine-id{font-size:1.375rem;font-weight:700;color:var(--text-primary)}.fmd-machine-year{font-size:.75rem;color:var(--text-secondary);background:var(--bg-secondary);padding:.1rem .4rem;border-radius:999px}.fmd-machine-model{font-size:.8125rem;color:var(--text-secondary);margin-top:.1rem}.fmd-specs-grid{display:grid;grid-template-columns:1fr 1fr;gap:.375rem;margin-bottom:.875rem;padding:.625rem;background:var(--bg-secondary);border-radius:var(--radius-md)}.fmd-spec-item{min-width:0}.fmd-spec-label{font-size:.62rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em}.fmd-spec-value{font-size:.75rem;font-weight:600;color:var(--text-primary);margin-top:.1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fmd-info-rows{display:flex;flex-direction:column;gap:.4rem;margin-bottom:1rem}.fmd-info-row{display:flex;align-items:center;gap:.4rem;font-size:.775rem}.fmd-info-icon{color:var(--text-secondary);flex-shrink:0}.fmd-info-label{color:var(--text-secondary);flex:1}.fmd-info-value{font-weight:500;color:var(--text-primary);text-align:right;white-space:nowrap}.fmd-info-value.overdue{color:#dc2626;font-weight:600}.fmd-operator-chip{display:flex;align-items:center;gap:.3rem;font-weight:500;color:var(--text-primary);min-width:0}.fmd-operator-av{width:20px;height:20px;border-radius:50%;background:var(--brand-primary);color:#fff;font-size:.55rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.fmd-stats-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.375rem;margin-bottom:.875rem;padding:.625rem 0;border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color)}.fmd-stat-block{text-align:center;min-width:0}.fmd-stat-value{font-size:.875rem;font-weight:700;line-height:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fmd-stat-label{font-size:.6rem;color:var(--text-secondary);margin-top:.2rem}.fmd-stat-unit{font-size:.6rem;color:var(--text-secondary)}.fmd-efficiency-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:.3rem;font-size:.75rem}.fmd-efficiency-label{display:flex;align-items:center;gap:.25rem;color:var(--text-secondary)}.fmd-efficiency-pct{font-weight:600;color:#16a34a}.fmd-eff-bar-bg{height:5px;background:var(--bg-secondary);border-radius:999px;overflow:hidden}.fmd-eff-bar-fill{height:100%;background:linear-gradient(90deg,#16a34a,#4ade80);border-radius:999px}.fmd-gauges-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1rem;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:.75rem}.fmd-card-title{font-size:.8125rem;font-weight:600;color:var(--text-primary);margin-bottom:.1rem}.fmd-gauge{display:flex;flex-direction:column;gap:.2rem}.fmd-gauge-header{display:flex;align-items:center;gap:.3rem}.fmd-gauge-label{flex:1;font-size:.75rem;color:var(--text-secondary)}.fmd-gauge-value{font-size:.75rem;font-weight:600}.fmd-gauge-bar-bg{height:4px;background:var(--bg-secondary);border-radius:999px;overflow:hidden}.fmd-gauge-bar-fill{height:100%;border-radius:999px}.fmd-right-panel{display:flex;flex-direction:column;gap:.875rem;min-width:0}.fmd-tabs{display:flex;gap:.2rem;background:var(--bg-secondary);padding:.2rem;border-radius:var(--radius-md);width:fit-content}.fmd-tab{padding:.3rem .875rem;font-size:.78rem;font-weight:500;color:var(--text-secondary);border-radius:calc(var(--radius-md) - 2px);transition:all var(--transition-fast)}.fmd-tab.active{background:var(--bg-primary);color:var(--brand-primary);box-shadow:var(--shadow-sm)}.fmd-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.875rem}.fmd-panel-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1rem;box-shadow:var(--shadow-sm);min-width:0}.fmd-panel-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.fmd-panel-card-title{font-size:.8125rem;font-weight:600;color:var(--text-primary)}.fmd-map-card{grid-column:1 / 2}.fmd-map-wrap{position:relative;border-radius:var(--radius-md);overflow:hidden;height:180px}.fmd-map-iframe{width:100%;height:100%;border:none;display:block}.fmd-map-label{position:absolute;bottom:.5rem;left:.5rem;display:flex;align-items:center;gap:.25rem;background:#ffffffeb;padding:.2rem .5rem;border-radius:999px;font-size:.7rem;font-weight:500;color:var(--brand-primary);box-shadow:var(--shadow-sm);pointer-events:none}.fmd-no-alerts{display:flex;flex-direction:column;align-items:center;gap:.375rem;padding:1.25rem;color:var(--text-secondary);font-size:.775rem}.fmd-alerts-list{display:flex;flex-direction:column;gap:.5rem}.fmd-alert-item{display:flex;align-items:flex-start;gap:.5rem}.fmd-alert-dot{width:7px;height:7px;border-radius:50%;margin-top:.3rem;flex-shrink:0}.fmd-alert-message{font-size:.775rem;color:var(--text-primary)}.fmd-alert-time{font-size:.65rem;color:var(--text-secondary);margin-top:.1rem}.fmd-actions-card{grid-column:1 / -1}.fmd-actions-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem}.fmd-action-btn{display:flex;flex-direction:column;align-items:center;gap:.3rem;padding:.75rem .375rem;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-secondary);font-size:.68rem;text-align:center;transition:all var(--transition-fast);min-width:0}.fmd-action-btn:hover{border-color:var(--brand-primary);color:var(--brand-primary);background:#f0f9ff}.fmd-sensors-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.fmd-sensor-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1rem;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;align-items:center;gap:.375rem;text-align:center;min-width:0}.fmd-sensor-card.warn{border-color:#f59e0b}.fmd-sensor-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center}.fmd-sensor-icon.ok{background:#dcfce7;color:#16a34a}.fmd-sensor-icon.warn{background:#fef3c7;color:#d97706}.fmd-sensor-value{font-size:1rem;font-weight:700;color:var(--text-primary)}.fmd-sensor-label{font-size:.7rem;color:var(--text-secondary)}.fmd-maintenance-list{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1rem;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:.875rem}.fmd-maint-item{display:flex;align-items:flex-start;gap:.625rem}.fmd-maint-dot{width:9px;height:9px;border-radius:50%;margin-top:.3rem;flex-shrink:0}.fmd-maint-dot.done{background:#16a34a}.fmd-maint-dot.planned{background:#f59e0b}.fmd-maint-dot.overdue{background:#dc2626}.fmd-maint-content{flex:1;min-width:0}.fmd-maint-task{font-size:.8125rem;font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fmd-maint-meta{display:flex;align-items:center;gap:.375rem;font-size:.7rem;color:var(--text-secondary);margin-top:.2rem}.fmd-maint-badge{font-size:.65rem;font-weight:500;padding:.15rem .45rem;border-radius:999px;flex-shrink:0;white-space:nowrap}.fmd-maint-badge.done{background:#dcfce7;color:#16a34a}.fmd-maint-badge.planned{background:#fef3c7;color:#d97706}.fmd-maint-badge.overdue{background:#fee2e2;color:#dc2626}.fa-root{flex:1;overflow-y:auto;overflow-x:hidden;min-height:0;background:var(--bg-secondary)}.fa-inner{padding:1.25rem 1.5rem 2rem;display:flex;flex-direction:column;gap:1rem;width:100%;box-sizing:border-box}.fa-page-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.fa-page-title{font-size:1.125rem;font-weight:700;color:var(--text-primary)}.fa-page-sub{font-size:.75rem;color:var(--text-secondary);margin-top:.125rem}.fa-topbar{display:flex;gap:.25rem;border-bottom:1px solid var(--border-color);background:var(--bg-primary);border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:0 .5rem;overflow-x:auto;scrollbar-width:none}.fa-topbar::-webkit-scrollbar{display:none}.fa-topbar-tab{padding:.625rem .875rem;font-size:.78rem;font-weight:500;color:var(--text-secondary);background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;white-space:nowrap;transition:color var(--transition-fast),border-color var(--transition-fast)}.fa-topbar-tab:hover{color:var(--text-primary)}.fa-topbar-tab.active{color:var(--brand-primary);border-bottom-color:var(--brand-primary);font-weight:600}.fa-body{display:flex;gap:1rem;align-items:flex-start}.fa-sidebar{width:200px;flex-shrink:0;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1rem .75rem;display:flex;flex-direction:column;gap:0}.fa-filter-title{font-size:.65rem;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;padding:0 .25rem;margin-bottom:.5rem}.fa-filter-sep{height:1px;background:var(--border-color);margin:.75rem 0}.fa-tree-item{display:flex;align-items:center;gap:.375rem;padding:.2rem .25rem;font-size:.72rem;color:var(--text-secondary);cursor:pointer;border-radius:6px;-webkit-user-select:none;user-select:none;transition:background var(--transition-fast),color var(--transition-fast)}.fa-tree-item:hover{background:var(--bg-secondary);color:var(--text-primary)}.fa-tree-item.selected{color:var(--brand-primary);font-weight:500}.fa-tree-item.indent{padding-left:1.25rem}.fa-tree-arrow{font-size:.55rem;color:#9ca3af;flex-shrink:0}.fa-tree-check{width:14px;height:14px;border:1.5px solid var(--border-color);border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--transition-fast),border-color var(--transition-fast)}.fa-tree-check.on{background:var(--brand-primary);border-color:var(--brand-primary)}.fa-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:1rem}.fa-kpi-row{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem}.fa-kpi-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1rem 1.125rem;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:.25rem;border-left:3px solid var(--brand-primary)}.fa-kpi-card.green{border-left-color:#16a34a}.fa-kpi-card.amber{border-left-color:#d97706}.fa-kpi-card.red{border-left-color:#dc2626}.fa-kpi-label{font-size:.68rem;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fa-kpi-value{font-size:1.75rem;font-weight:700;color:var(--text-primary);line-height:1;letter-spacing:-.03em}.fa-kpi-value.brand{color:var(--brand-primary)}.fa-kpi-value.green{color:#16a34a}.fa-kpi-value.amber{color:#d97706}.fa-kpi-value.red{color:#dc2626}.fa-kpi-sub{font-size:.65rem;color:var(--text-secondary);margin-top:.125rem}.fa-charts{display:grid;grid-template-columns:1fr 1fr;gap:.875rem}.fa-chart-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1rem 1.125rem;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:.5rem;min-height:240px}.fa-chart-title{font-size:.875rem;font-weight:600;color:var(--text-primary)}.fa-chart-legend{display:flex;gap:1rem;flex-wrap:wrap}.fa-legend-item{display:flex;align-items:center;gap:.3rem;font-size:.68rem;color:var(--text-secondary)}.fa-legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.fa-svg-wrap{flex:1;position:relative;min-height:140px}.fa-svg-wrap svg{width:100%;height:100%;position:absolute;top:0;left:0}.fa-x-labels{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between}.fa-x-label{font-size:.57rem;color:var(--text-secondary)}.fa-bar-area{flex:1;display:flex;flex-direction:column;gap:.5rem;min-height:0}.fa-bar-row{display:flex;align-items:center;gap:.625rem}.fa-bar-label{width:130px;flex-shrink:0;font-size:.7rem;color:var(--text-secondary);text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fa-bar-track{flex:1;height:24px;background:var(--bg-secondary);border-radius:4px;overflow:hidden;position:relative}.fa-bar-fill{height:100%;background:var(--brand-primary);border-radius:4px;display:flex;align-items:center;justify-content:flex-end;padding-right:.375rem;transition:width .4s ease}.fa-bar-val{font-size:.65rem;font-weight:600;color:#fff;white-space:nowrap}.fa-bottombar-wrap{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.fa-bottombar{display:flex;align-items:center;border-bottom:1px solid var(--border-color);padding:0 .5rem;overflow-x:auto;scrollbar-width:none}.fa-bottombar::-webkit-scrollbar{display:none}.fa-bottombar-tab{padding:.625rem .875rem;font-size:.75rem;font-weight:500;color:var(--text-secondary);background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;white-space:nowrap;transition:color var(--transition-fast),border-color var(--transition-fast)}.fa-bottombar-tab:hover{color:var(--text-primary)}.fa-bottombar-tab.active{color:var(--brand-primary);border-bottom-color:var(--brand-primary);font-weight:600}.fa-bottombar-content{padding:1rem 1.125rem;font-size:.78rem;color:var(--text-secondary)}.mob-showcase{min-height:100vh;background:linear-gradient(135deg,#0f2027,#203a43,#2c5364);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1rem;gap:1.5rem}.mob-showcase-label{color:#fff9;font-size:.75rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.mob-screen-switcher{display:flex;gap:.5rem}.mob-screen-btn{padding:.375rem .875rem;border-radius:999px;font-size:.75rem;font-weight:500;background:#ffffff1a;color:#ffffffb3;border:1px solid rgba(255,255,255,.15);transition:all .2s}.mob-screen-btn:hover{background:#ffffff2e;color:#fff}.mob-screen-btn.active{background:#fff;color:#004560;border-color:#fff}.mob-phone{width:390px;height:844px;background:#fff;border-radius:54px;box-shadow:0 0 0 2px #1a1a1a,0 0 0 6px #2a2a2a,0 40px 80px #0009,inset 0 0 0 1px #ffffff14;position:relative;overflow:hidden;flex-shrink:0}.mob-notch{position:absolute;top:14px;left:50%;transform:translate(-50%);width:120px;height:36px;background:#000;border-radius:20px;z-index:100;display:flex;align-items:center;justify-content:flex-end;padding-right:10px;gap:6px}.mob-notch-cam{width:12px;height:12px;border-radius:50%;background:#1a1a1a;border:2px solid #2a2a2a;box-shadow:inset 0 0 0 3px #111,0 0 0 1px #444}.mob-statusbar{position:absolute;top:0;left:0;right:0;height:56px;display:flex;align-items:flex-end;justify-content:space-between;padding:0 28px 8px;z-index:90;pointer-events:none}.mob-status-time{font-size:.875rem;font-weight:700;letter-spacing:-.02em}.mob-status-icons{display:flex;align-items:center;gap:6px;font-size:.7rem}.mob-screen{position:absolute;inset:0;overflow:hidden;display:flex;flex-direction:column}.mob-bottom-nav{position:absolute;bottom:0;left:0;right:0;height:82px;background:#fffffff5;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-top:1px solid #F0F0F5;display:flex;align-items:flex-start;justify-content:space-around;padding-top:10px;z-index:80}.mob-nav-item{display:flex;flex-direction:column;align-items:center;gap:3px;flex:1;padding:0;background:none;border:none;cursor:pointer;position:relative}.mob-nav-icon-wrap{width:44px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:14px;transition:background .2s}.mob-nav-item.active .mob-nav-icon-wrap{background:#e0f2fe}.mob-nav-icon{color:#94a3b8;transition:color .2s}.mob-nav-item.active .mob-nav-icon{color:#004560}.mob-nav-label{font-size:.58rem;font-weight:500;color:#94a3b8;transition:color .2s}.mob-nav-item.active .mob-nav-label{color:#004560;font-weight:600}.mob-nav-badge{position:absolute;top:-2px;right:4px;min-width:16px;height:16px;background:#ef4444;color:#fff;font-size:.5rem;font-weight:700;border-radius:999px;display:flex;align-items:center;justify-content:center;padding:0 3px;border:1.5px solid #fff}.mob-auth{flex:1;background:#fff;display:flex;flex-direction:column}.mob-auth-hero{height:260px;background:linear-gradient(160deg,#004560,#006080 60%,#0891b2);display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding-bottom:2rem;position:relative;flex-shrink:0}.mob-auth-hero:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:40px;background:#fff;border-radius:40px 40px 0 0}.mob-auth-logo{width:64px;height:64px;background:#ffffff26;border-radius:20px;display:flex;align-items:center;justify-content:center;margin-bottom:.875rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.mob-auth-logo-inner{font-size:1.5rem;font-weight:800;color:#fff;letter-spacing:-.05em}.mob-auth-app-name{font-size:1.125rem;font-weight:700;color:#fff;letter-spacing:-.02em}.mob-auth-tagline{font-size:.7rem;color:#ffffffa6;margin-top:2px}.mob-auth-body{flex:1;padding:1.5rem 1.5rem 0;display:flex;flex-direction:column;gap:0}.mob-auth-title{font-size:1.375rem;font-weight:700;color:#0f172a;margin-bottom:.25rem}.mob-auth-sub{font-size:.8rem;color:#64748b;margin-bottom:1.5rem}.mob-field{margin-bottom:.875rem}.mob-field-label{font-size:.72rem;font-weight:600;color:#374151;margin-bottom:.375rem;text-transform:uppercase;letter-spacing:.04em}.mob-field-wrap{display:flex;align-items:center;background:#f8fafc;border:1.5px solid #E2E8F0;border-radius:14px;padding:0 1rem;height:52px;gap:.625rem;transition:border-color .2s}.mob-field-wrap:focus-within{border-color:#004560;background:#fff}.mob-field-icon{color:#94a3b8;flex-shrink:0}.mob-field-input{flex:1;border:none;background:transparent;font-size:.9rem;color:#0f172a;outline:none}.mob-field-input::placeholder{color:#cbd5e1}.mob-field-eye{color:#94a3b8;background:none;border:none;padding:0;cursor:pointer;flex-shrink:0}.mob-auth-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.mob-remember{display:flex;align-items:center;gap:.375rem;font-size:.78rem;color:#475569}.mob-checkbox{width:18px;height:18px;border-radius:6px;border:2px solid #cbd5e1;display:flex;align-items:center;justify-content:center;flex-shrink:0}.mob-checkbox.checked{background:#004560;border-color:#004560}.mob-forgot{font-size:.78rem;color:#004560;font-weight:500;background:none;border:none;cursor:pointer}.mob-btn-primary{width:100%;height:54px;background:linear-gradient(135deg,#004560,#006b8f);color:#fff;border:none;border-radius:16px;font-size:1rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:0 4px 20px #00456059;margin-bottom:1.25rem;transition:opacity .2s}.mob-btn-primary:active{opacity:.85}.mob-auth-divider{display:flex;align-items:center;gap:.75rem;margin-bottom:1.25rem}.mob-auth-divider:before,.mob-auth-divider:after{content:"";flex:1;height:1px;background:#e2e8f0}.mob-auth-divider span{font-size:.72rem;color:#94a3b8;white-space:nowrap}.mob-auth-switch{text-align:center;font-size:.82rem;color:#64748b}.mob-auth-switch button{color:#004560;font-weight:600;background:none;border:none;cursor:pointer}.mob-home{flex:1;background:#f4f7fe;overflow-y:auto;padding-bottom:90px}.mob-home-header{background:linear-gradient(160deg,#004560,#006b8f);padding:68px 1.25rem 1.5rem;color:#fff;position:relative}.mob-home-header-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.mob-home-greeting{font-size:.78rem;color:#ffffffa6;margin-bottom:2px}.mob-home-name{font-size:1.125rem;font-weight:700}.mob-home-avatar{width:40px;height:40px;border-radius:50%;background:#fff3;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.875rem;border:2px solid rgba(255,255,255,.3)}.mob-home-stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:.625rem}.mob-home-stat{background:#ffffff1f;border-radius:14px;padding:.75rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);text-align:center}.mob-home-stat-val{font-size:1.375rem;font-weight:700;line-height:1}.mob-home-stat-lbl{font-size:.62rem;color:#ffffffb3;margin-top:3px;line-height:1.3}.mob-section{padding:1.125rem 1.25rem 0}.mob-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.mob-section-title{font-size:.9375rem;font-weight:700;color:#0f172a}.mob-section-link{font-size:.75rem;color:#004560;font-weight:500;background:none;border:none;cursor:pointer}.mob-quick-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:.625rem}.mob-quick-btn{display:flex;flex-direction:column;align-items:center;gap:.375rem;background:none;border:none;cursor:pointer}.mob-quick-icon{width:52px;height:52px;border-radius:16px;display:flex;align-items:center;justify-content:center}.mob-quick-label{font-size:.62rem;color:#475569;text-align:center;font-weight:500;line-height:1.3}.mob-doc-card{background:#fff;border-radius:16px;padding:1rem;margin-bottom:.625rem;box-shadow:0 1px 4px #0000000f;display:flex;flex-direction:column;gap:.5rem;cursor:pointer;transition:transform .15s;border:1px solid #F0F4F8}.mob-doc-card:active{transform:scale(.98)}.mob-doc-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.mob-doc-type-chip{font-size:.62rem;font-weight:600;color:#004560;background:#e0f2fe;padding:.2rem .5rem;border-radius:6px;white-space:nowrap;flex-shrink:0}.mob-doc-status{font-size:.62rem;font-weight:600;padding:.2rem .5rem;border-radius:6px;white-space:nowrap;flex-shrink:0}.mob-doc-status.pending{background:#fef3c7;color:#d97706}.mob-doc-status.approved{background:#dcfce7;color:#16a34a}.mob-doc-status.draft{background:#f1f5f9;color:#475569}.mob-doc-status.rejected{background:#fee2e2;color:#dc2626}.mob-doc-status.returned{background:#fdf4ff;color:#9333ea}.mob-doc-title{font-size:.875rem;font-weight:600;color:#0f172a;line-height:1.3}.mob-doc-card-bottom{display:flex;align-items:center;justify-content:space-between}.mob-doc-meta{display:flex;align-items:center;gap:.375rem;font-size:.72rem;color:#64748b}.mob-doc-amount{font-size:.875rem;font-weight:700;color:#004560}.mob-docs{flex:1;background:#f4f7fe;display:flex;flex-direction:column;overflow:hidden;padding-bottom:82px}.mob-docs-header{background:#fff;padding:68px 1.25rem .875rem;border-bottom:1px solid #F0F4F8;flex-shrink:0}.mob-docs-title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:.875rem}.mob-docs-title{font-size:1.25rem;font-weight:700;color:#0f172a}.mob-docs-add-btn{width:34px;height:34px;border-radius:50%;background:#004560;color:#fff;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 8px #0045604d}.mob-search-bar{display:flex;align-items:center;background:#f4f7fe;border-radius:12px;padding:0 .875rem;height:42px;gap:.5rem;margin-bottom:.875rem}.mob-search-input{flex:1;border:none;background:transparent;font-size:.875rem;color:#0f172a;outline:none}.mob-search-input::placeholder{color:#94a3b8}.mob-filter-chips{display:flex;gap:.5rem;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.mob-filter-chips::-webkit-scrollbar{display:none}.mob-chip{flex-shrink:0;padding:.3rem .875rem;border-radius:999px;font-size:.75rem;font-weight:500;border:1.5px solid #E2E8F0;color:#475569;background:#fff;cursor:pointer;transition:all .15s;white-space:nowrap}.mob-chip.active{background:#004560;border-color:#004560;color:#fff}.mob-docs-list{flex:1;overflow-y:auto;padding:.875rem 1.25rem}.mob-detail{flex:1;background:#f4f7fe;display:flex;flex-direction:column;overflow-y:auto;padding-bottom:100px}.mob-detail-header{background:linear-gradient(160deg,#004560,#006b8f);padding:60px 1.25rem 1.25rem;color:#fff}.mob-detail-back{display:flex;align-items:center;gap:.375rem;color:#fffc;font-size:.82rem;font-weight:500;background:none;border:none;cursor:pointer;margin-bottom:1rem}.mob-detail-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .75rem;border-radius:999px;font-size:.72rem;font-weight:600;background:#ffffff26;color:#fff;margin-bottom:.625rem}.mob-detail-title{font-size:1.125rem;font-weight:700;line-height:1.3;margin-bottom:.375rem}.mob-detail-num{font-size:.75rem;color:#fff9}.mob-detail-body{flex:1;padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.875rem}.mob-info-card{background:#fff;border-radius:16px;padding:1rem;box-shadow:0 1px 4px #0000000d}.mob-info-card-title{font-size:.72rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.75rem}.mob-info-row{display:flex;align-items:flex-start;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid #F8FAFC;gap:.5rem}.mob-info-row:last-child{border-bottom:none;padding-bottom:0}.mob-info-key{font-size:.78rem;color:#64748b;flex-shrink:0}.mob-info-val{font-size:.82rem;font-weight:500;color:#0f172a;text-align:right}.mob-timeline{display:flex;flex-direction:column;gap:0}.mob-timeline-item{display:flex;gap:.75rem}.mob-timeline-line{display:flex;flex-direction:column;align-items:center;flex-shrink:0}.mob-timeline-dot{width:10px;height:10px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 2px currentColor;flex-shrink:0;margin-top:3px}.mob-timeline-connector{width:2px;flex:1;background:#e2e8f0;margin:4px 0;min-height:20px}.mob-timeline-item:last-child .mob-timeline-connector{display:none}.mob-timeline-content{padding-bottom:1rem;flex:1}.mob-timeline-event{font-size:.82rem;font-weight:500;color:#0f172a}.mob-timeline-actor{font-size:.72rem;color:#64748b;margin-top:2px}.mob-timeline-time{font-size:.68rem;color:#94a3b8;margin-top:2px}.mob-action-bar{position:absolute;bottom:0;left:0;right:0;padding:1rem 1.25rem 1.5rem;background:#fffffff5;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-top:1px solid #F0F4F8;display:flex;gap:.625rem}.mob-action-approve{flex:1;height:50px;background:linear-gradient(135deg,#16a34a,#22c55e);color:#fff;border:none;border-radius:14px;font-size:.9rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.375rem;box-shadow:0 4px 12px #16a34a4d}.mob-action-reject{flex:1;height:50px;background:#fff;color:#dc2626;border:1.5px solid #fecaca;border-radius:14px;font-size:.9rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.375rem}.mob-tasks{flex:1;background:#f4f7fe;overflow-y:auto;padding-bottom:90px}.mob-tasks-header{background:#fff;padding:68px 1.25rem 1rem;border-bottom:1px solid #F0F4F8}.mob-task-card{background:#fff;border-radius:14px;padding:.875rem 1rem;margin-bottom:.625rem;box-shadow:0 1px 3px #0000000d;display:flex;align-items:flex-start;gap:.75rem;cursor:pointer;border-left:3px solid transparent}.mob-task-card.urgent{border-left-color:#ef4444}.mob-task-card.normal{border-left-color:#004560}.mob-task-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.mob-task-content{flex:1;min-width:0}.mob-task-title{font-size:.8125rem;font-weight:600;color:#0f172a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mob-task-doc{font-size:.72rem;color:#64748b;margin-top:2px}.mob-task-time{font-size:.65rem;color:#94a3b8;flex-shrink:0;margin-top:2px}.mob-task-urgent-tag{display:inline-flex;align-items:center;gap:.2rem;font-size:.6rem;font-weight:600;color:#ef4444;background:#fee2e2;padding:.1rem .4rem;border-radius:4px;margin-top:4px}.mob-profile{flex:1;background:#f4f7fe;overflow-y:auto;padding-bottom:90px}.mob-profile-hero{background:linear-gradient(160deg,#004560,#006b8f);padding:68px 1.25rem 2rem;display:flex;flex-direction:column;align-items:center;gap:.75rem;color:#fff}.mob-profile-av{width:80px;height:80px;border-radius:50%;background:#fff3;border:3px solid rgba(255,255,255,.4);display:flex;align-items:center;justify-content:center;font-size:1.75rem;font-weight:700}.mob-profile-name{font-size:1.125rem;font-weight:700}.mob-profile-role{font-size:.78rem;color:#ffffffa6;background:#ffffff1a;padding:.25rem .875rem;border-radius:999px}.mob-profile-body{padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.75rem}.mob-profile-section{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 1px 3px #0000000d}.mob-profile-item{display:flex;align-items:center;padding:.875rem 1rem;gap:.875rem;border-bottom:1px solid #F8FAFC;cursor:pointer}.mob-profile-item:last-child{border-bottom:none}.mob-profile-item-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.mob-profile-item-text{flex:1}.mob-profile-item-title{font-size:.875rem;font-weight:500;color:#0f172a}.mob-profile-item-sub{font-size:.7rem;color:#94a3b8;margin-top:1px}.mob-profile-item-arrow{color:#cbd5e1}.mob-logout-btn{width:100%;height:52px;background:#fff;border:1.5px solid #fecaca;border-radius:16px;color:#dc2626;font-size:.9rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem}.hrc-layout{display:grid;grid-template-columns:240px 1fr;height:600px;min-height:500px;background:#fff;border:1px solid #E5E7EB;border-radius:14px;overflow:hidden;box-shadow:0 1px 3px #0000000a}.hrc-sidebar{display:flex;flex-direction:column;border-right:1px solid #F0F2F5;background:#f9fafb;overflow:hidden}.hrc-new-btn{display:flex;align-items:center;gap:.5rem;margin:1rem;padding:.625rem 1rem;background:#004560;color:#fff;border:none;border-radius:10px;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s;flex-shrink:0}.hrc-new-btn:hover{background:#003348}.hrc-sessions{flex:1;overflow-y:auto;padding:0 .5rem 1rem}.hrc-sessions-loading,.hrc-sessions-empty{text-align:center;font-size:.8rem;color:#9ca3af;padding:1.5rem 0}.hrc-session-item{position:relative;padding:.625rem .875rem;border-radius:10px;cursor:pointer;transition:background .1s;margin-bottom:2px}.hrc-session-item:hover{background:#f0f2f5}.hrc-session-item.active{background:#eef2ff}.hrc-session-item__title{font-size:.8rem;font-weight:500;color:#374151;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:1.5rem}.hrc-session-item.active .hrc-session-item__title{color:#004560;font-weight:600}.hrc-session-item__date{font-size:.72rem;color:#9ca3af;margin-top:2px}.hrc-session-item__del{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:none;border:none;color:#d1d5db;cursor:pointer;padding:3px;border-radius:5px;display:none;align-items:center;justify-content:center;transition:all .1s}.hrc-session-item:hover .hrc-session-item__del{display:flex}.hrc-session-item__del:hover{background:#fee2e2;color:#dc2626}.hrc-main{display:flex;flex-direction:column;overflow:hidden}.hrc-messages{flex:1;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem}.hrc-welcome{display:flex;flex-direction:column;align-items:center;text-align:center;padding:2rem 1rem;margin:auto 0}.hrc-welcome__icon{width:64px;height:64px;background:#eef2ff;border-radius:18px;display:flex;align-items:center;justify-content:center;color:#004560;margin-bottom:1rem}.hrc-welcome__title{font-size:1.125rem;font-weight:700;color:#111827;margin-bottom:.4rem}.hrc-welcome__subtitle{font-size:.875rem;color:#6b7280;margin-bottom:1.5rem;max-width:360px}.hrc-suggestions{display:flex;flex-direction:column;gap:.5rem;width:100%;max-width:460px}.hrc-suggestion{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:#f9fafb;border:1px solid #E5E7EB;border-radius:10px;font-size:.875rem;color:#374151;cursor:pointer;text-align:left;transition:all .15s}.hrc-suggestion:hover{background:#eef2ff;border-color:#c7d7f5;color:#004560}.hrc-suggestion svg{color:#004560;flex-shrink:0}.hrc-msg{display:flex;gap:.75rem;align-items:flex-start}.hrc-msg--user{flex-direction:row-reverse}.hrc-msg__avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.hrc-msg--user .hrc-msg__avatar{background:#eef2ff;color:#004560}.hrc-msg--assistant .hrc-msg__avatar{background:#f9fafb;border:1px solid #E5E7EB;color:#6b7280}.hrc-msg__body{max-width:75%;display:flex;flex-direction:column;gap:.4rem}.hrc-msg--user .hrc-msg__body{align-items:flex-end}.hrc-msg__content{padding:.75rem 1rem;border-radius:14px;font-size:.875rem;line-height:1.6;white-space:pre-wrap;word-break:break-word}.hrc-msg--user .hrc-msg__content{background:#004560;color:#fff;border-radius:14px 14px 4px}.hrc-msg--assistant .hrc-msg__content{background:#f9fafb;border:1px solid #F0F2F5;color:#111827;border-radius:14px 14px 14px 4px}.hrc-sql-wrap{display:flex;flex-direction:column;gap:0}.hrc-sql-toggle{display:inline-flex;align-items:center;gap:.3rem;background:none;border:none;font-size:.75rem;color:#9ca3af;cursor:pointer;padding:.25rem 0;transition:color .15s}.hrc-sql-toggle:hover{color:#004560}.hrc-sql-chevron{transition:transform .2s}.hrc-sql-chevron.rotated{transform:rotate(90deg)}.hrc-sql-code{background:#f9fafb;border:1px solid #E5E7EB;border-radius:8px;padding:.75rem;font-size:.75rem;color:#374151;overflow-x:auto;white-space:pre;font-family:Menlo,Monaco,Consolas,monospace;margin-top:.25rem}.hrc-typing{display:flex;align-items:center;gap:4px;padding:.875rem 1rem;background:#f9fafb;border:1px solid #F0F2F5;border-radius:14px 14px 14px 4px;width:56px}.hrc-typing span{width:7px;height:7px;border-radius:50%;background:#9ca3af;animation:hrc-bounce 1.2s infinite}.hrc-typing span:nth-child(2){animation-delay:.2s}.hrc-typing span:nth-child(3){animation-delay:.4s}@keyframes hrc-bounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-5px);opacity:1}}.hrc-input-area{display:flex;align-items:flex-end;gap:.625rem;padding:1rem 1.25rem;border-top:1px solid #F0F2F5;background:#fff}.hrc-input{flex:1;background:#f9fafb;border:1px solid #E5E7EB;border-radius:12px;padding:.75rem 1rem;font-size:.875rem;font-family:inherit;color:#111827;resize:none;outline:none;transition:border-color .15s;max-height:120px;line-height:1.5}.hrc-input:focus{border-color:#004560;background:#fff}.hrc-input::placeholder{color:#9ca3af}.hrc-input:disabled{opacity:.6}.hrc-send-btn{width:40px;height:40px;background:#004560;color:#fff;border:none;border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .15s}.hrc-send-btn:hover:not(:disabled){background:#003348}.hrc-send-btn:disabled{opacity:.4;cursor:not-allowed}.hrc-send-btn--cancel{width:auto;padding:0 1rem;font-size:.8rem;font-weight:600;background:#fef2f2;color:#dc2626;border:1px solid #FECACA}.hrc-send-btn--cancel:hover{background:#fee2e2}.hr-dashboard{padding:2rem 2.5rem;max-width:1400px;background-color:#f4f7fe;min-height:100%}.hr-dashboard__header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1.75rem}.hr-dashboard__title{font-size:1.6rem;font-weight:700;color:#111827;margin:0;letter-spacing:-.3px}.hr-dashboard__subtitle{font-size:.875rem;color:#6b7280;margin-top:.25rem}.hr-stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.75rem}.hr-stat-card{background:#fff;border:1px solid #E5E7EB;border-radius:14px;padding:1.25rem 1.5rem;display:flex;align-items:center;gap:1rem;box-shadow:0 1px 3px #0000000a;transition:box-shadow .2s}.hr-stat-card:hover{box-shadow:0 4px 12px #00000012}.hr-stat-card__icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.hr-stat-card__icon--blue{background:#eef2ff;color:#004560}.hr-stat-card__icon--green{background:#ecfdf5;color:#059669}.hr-stat-card__icon--red{background:#fef2f2;color:#dc2626}.hr-stat-card__value{font-size:1.75rem;font-weight:700;color:#111827;line-height:1}.hr-stat-card__label{font-size:.8rem;color:#6b7280;margin-top:.25rem;font-weight:500}.hr-tabs{display:flex;gap:0;border-bottom:1px solid #E5E7EB;margin-bottom:1.5rem}.hr-tab{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:none;border:none;border-bottom:2px solid transparent;color:#6b7280;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .15s;margin-bottom:-1px;white-space:nowrap}.hr-tab:hover{color:#374151}.hr-tab--active{color:#004560;border-bottom-color:#004560}.hr-toolbar{display:flex;gap:.75rem;margin-bottom:1rem;align-items:center}.hr-search-wrap{position:relative;flex:1;max-width:340px}.hr-search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:#9ca3af;pointer-events:none}.hr-search-input{width:100%;background:#fff;border:1px solid #E5E7EB;border-radius:10px;padding:.6rem .875rem .6rem 2.25rem;color:#111827;font-size:.875rem;outline:none;transition:border-color .15s}.hr-search-input:focus{border-color:#004560}.hr-search-input::placeholder{color:#9ca3af}.hr-filter-wrap{display:flex;align-items:center;gap:.5rem;color:#9ca3af;font-size:.875rem}.hr-filter-select{background:#fff;border:1px solid #E5E7EB;border-radius:10px;padding:.6rem .875rem;color:#374151;font-size:.875rem;cursor:pointer;outline:none}.hr-filter-select:focus{border-color:#004560}.hr-birthday-banner{background:#fdf2f8;border:1px solid #FBCFE8;border-radius:12px;padding:.75rem 1.25rem;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;font-size:.875rem;color:#831843}.hr-birthday-banner__icon{color:#db2777;flex-shrink:0}.hr-birthday-link{background:none;border:none;color:#db2777;cursor:pointer;text-decoration:underline;font-size:.875rem;padding:0;font-weight:600}.hr-employees-panel{background:#fff;border:1px solid #E5E7EB;border-radius:14px;padding:1.25rem 1.5rem;box-shadow:0 1px 3px #0000000a}.hr-employee-table-wrap{overflow-x:auto}.hr-employee-table{width:100%;border-collapse:collapse;font-size:.875rem}.hr-employee-table thead tr{border-bottom:1px solid #F0F2F5}.hr-employee-table th{text-align:left;padding:.75rem 1rem;color:#9ca3af;font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}.hr-employee-row{cursor:pointer;transition:background .1s}.hr-employee-row:hover{background:#f9fafb}.hr-employee-row td{padding:.875rem 1rem;border-bottom:1px solid #F9FAFB;color:#374151;vertical-align:middle}.hr-emp-name-cell{display:flex;align-items:center;gap:.75rem}.hr-emp-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;flex-shrink:0}.hr-emp-avatar--initials{background:#eef2ff;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;color:#004560}.hr-emp-fullname{font-weight:600;color:#111827}.hr-emp-email{font-size:.8rem;color:#9ca3af;margin-top:1px}.hr-emp-position{font-weight:500;color:#374151}.hr-emp-department{font-size:.8rem;color:#9ca3af}.hr-status-badge{display:inline-block;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600}.hr-status-badge--active{background:#ecfdf5;color:#059669}.hr-status-badge--inactive{background:#fef2f2;color:#dc2626}.hr-row-arrow{color:#d1d5db}.hr-empty-row{text-align:center;padding:2.5rem;color:#9ca3af;font-size:.875rem}.hr-loading{padding:3rem;text-align:center;color:#9ca3af;font-size:.875rem}.hrd-header-actions{display:flex;align-items:center;gap:.5rem}.hrd-calendar-btn{display:flex;align-items:center;gap:.5rem;background:#fff;border:1px solid #E5E7EB;border-radius:10px;padding:.5rem 1rem;font-size:.875rem;font-weight:600;color:#004560;cursor:pointer;transition:all .15s}.hrd-calendar-btn:hover{background:#eef2ff;border-color:#c7d7f5}.hrd-refresh-btn{width:36px;height:36px;background:#fff;border:1px solid #E5E7EB;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#6b7280;cursor:pointer;transition:all .15s}.hrd-refresh-btn:hover{background:#f4f7fe;color:#004560}.hrd-tab-badge{background:#dc2626;color:#fff;font-size:.7rem;font-weight:700;border-radius:99px;padding:1px 6px;min-width:18px;text-align:center}.hrd-overview-grid{display:grid;grid-template-columns:1fr 360px;gap:1.25rem;align-items:start}.hrd-right-col{display:flex;flex-direction:column;gap:1.25rem}.hrd-section{background:#fff;border:1px solid #E5E7EB;border-radius:14px;overflow:hidden;box-shadow:0 1px 3px #0000000a}.hrd-section__header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #F0F2F5}.hrd-section__title{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:700;color:#111827}.hrd-section__count{background:#fef2f2;color:#dc2626;font-size:.72rem;font-weight:700;padding:1px 7px;border-radius:99px}.hrd-section__icon--pink{color:#db2777}.hrd-section__icon--blue{color:#004560}.hrd-empty{display:flex;flex-direction:column;align-items:center;padding:2rem 1rem;gap:.5rem;color:#9ca3af;font-size:.875rem}.hrd-empty__icon--green{color:#059669;opacity:.6}.hrd-leave-list{display:flex;flex-direction:column;divide-y:1px solid #F0F2F5}.hrd-leave-card{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid #F9FAFB;transition:background .1s}.hrd-leave-card:last-child{border-bottom:none}.hrd-leave-card:hover{background:#fafafa}.hrd-leave-card__left{display:flex;align-items:flex-start;gap:.875rem;flex:1;min-width:0}.hrd-leave-card__avatar{width:38px;height:38px;border-radius:50%;object-fit:cover;flex-shrink:0}.hrd-leave-card__avatar--initials{background:#eef2ff;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;color:#004560}.hrd-leave-card__name{font-size:.875rem;font-weight:600;color:#111827}.hrd-leave-card__meta{font-size:.8rem;color:#6b7280;margin-top:2px}.hrd-leave-card__comment{font-size:.78rem;color:#9ca3af;margin-top:3px;font-style:italic}.hrd-leave-card__actions{display:flex;flex-direction:column;gap:.375rem;flex-shrink:0}.hrd-action-btn{display:inline-flex;align-items:center;gap:.3rem;padding:.4rem .875rem;border-radius:8px;font-size:.8rem;font-weight:600;cursor:pointer;border:none;transition:all .15s;white-space:nowrap}.hrd-action-btn--approve{background:#ecfdf5;color:#059669}.hrd-action-btn--approve:hover{background:#d1fae5}.hrd-action-btn--reject{background:#fef2f2;color:#dc2626}.hrd-action-btn--reject:hover{background:#fee2e2}.hrd-action-btn--reject:disabled{opacity:.5;cursor:not-allowed}.hrd-action-btn--ghost{background:#f3f4f6;color:#6b7280}.hrd-action-btn--ghost:hover{background:#e5e7eb}.hrd-reject-form{display:flex;flex-direction:column;gap:.375rem;min-width:180px}.hrd-reject-input{background:#f9fafb;border:1px solid #E5E7EB;border-radius:8px;padding:.4rem .625rem;font-size:.8rem;color:#111827;outline:none;font-family:inherit}.hrd-reject-input:focus{border-color:#dc2626}.hrd-reject-form__btns{display:flex;gap:.375rem}.hrd-birthday-list{display:flex;flex-direction:column}.hrd-birthday-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.25rem;border-bottom:1px solid #F9FAFB;cursor:pointer;transition:background .1s}.hrd-birthday-item:last-child{border-bottom:none}.hrd-birthday-item:hover{background:#fafafa}.hrd-birthday-avatar{width:34px;height:34px;border-radius:50%;object-fit:cover;flex-shrink:0}.hrd-birthday-avatar--initials{background:#fdf2f8;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;color:#db2777}.hrd-birthday-info{flex:1;min-width:0}.hrd-birthday-name{font-size:.8rem;font-weight:600;color:#111827}.hrd-birthday-date{font-size:.75rem;color:#9ca3af}.hrd-birthday-badge{font-size:.72rem;font-weight:600;color:#9ca3af;background:#f3f4f6;padding:2px 8px;border-radius:99px;white-space:nowrap}.hrd-birthday-badge--today{background:#fdf2f8;color:#db2777}.hrd-onleave-list{display:flex;flex-direction:column}.hrd-onleave-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.25rem;border-bottom:1px solid #F9FAFB}.hrd-onleave-item:last-child{border-bottom:none}.hrd-onleave-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;flex-shrink:0}.hrd-onleave-avatar--initials{background:#eef2ff;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;color:#004560}.hrd-onleave-info{flex:1;min-width:0}.hrd-onleave-name{font-size:.8rem;font-weight:600;color:#111827}.hrd-onleave-meta{font-size:.75rem;color:#9ca3af}.hrd-days-left{font-size:.72rem;font-weight:600;color:#004560;background:#eef2ff;padding:2px 8px;border-radius:99px;white-space:nowrap}.hr-stat-card__icon--purple{background:#f5f3ff;color:#7c3aed}.hr-stat-card__icon--yellow{background:#fffbeb;color:#d97706}.hr-stat-card__icon--pink{background:#fdf2f8;color:#db2777}@media(max-width:1100px){.hrd-overview-grid{grid-template-columns:1fr}.hrd-right-col{display:grid;grid-template-columns:1fr 1fr}}.hr-calendar-redirect,.hr-analytics-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem;gap:1rem;color:#d1d5db}.hr-open-calendar-btn{display:flex;align-items:center;gap:.5rem;background:#004560;color:#fff;border:none;border-radius:10px;padding:.75rem 1.5rem;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .15s}.hr-open-calendar-btn:hover{background:#003348}.hr-analytics-placeholder__icon{opacity:.2}.hrd-docs-panel{display:flex;flex-direction:column;gap:1.5rem}.hrd-docs-upload{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem 1.5rem}.hrd-docs-upload__title{display:flex;align-items:center;gap:.5rem;font-size:.95rem;font-weight:600;color:#1e293b;margin:0 0 1rem}.hrd-docs-upload__form{display:flex;gap:.75rem;flex-wrap:wrap}.hrd-docs-input{flex:1;min-width:200px;border:1px solid #e2e8f0;border-radius:8px;padding:.5rem .75rem;font-size:.875rem;outline:none}.hrd-docs-input:focus{border-color:#3b82f6}.hrd-docs-file-label{display:flex;align-items:center;gap:.5rem;border:1px dashed #cbd5e1;border-radius:8px;padding:.5rem 1rem;font-size:.8rem;color:#64748b;cursor:pointer;transition:border-color .15s;white-space:nowrap;max-width:260px;overflow:hidden;text-overflow:ellipsis}.hrd-docs-file-label:hover{border-color:#3b82f6;color:#3b82f6}.hrd-docs-upload-btn{background:#3b82f6;color:#fff;border:none;border-radius:8px;padding:.5rem 1.25rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s;white-space:nowrap}.hrd-docs-upload-btn:disabled{background:#94a3b8;cursor:not-allowed}.hrd-docs-upload-btn:not(:disabled):hover{background:#2563eb}.hrd-docs-hint{margin:.75rem 0 0;font-size:.78rem;color:#94a3b8}.hrd-docs-list{display:flex;flex-direction:column;gap:.5rem}.hrd-doc-card{display:flex;align-items:center;gap:.75rem;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:.875rem 1rem}.hrd-doc-card__icon{color:#64748b;flex-shrink:0}.hrd-doc-card__info{flex:1;min-width:0}.hrd-doc-card__title{font-size:.9rem;font-weight:600;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hrd-doc-card__meta{font-size:.78rem;color:#94a3b8;margin-top:2px}.hrd-doc-status{font-size:.78rem;font-weight:600;padding:3px 10px;border-radius:20px;white-space:nowrap;flex-shrink:0}.hrd-doc-status--indexed{background:#dcfce7;color:#16a34a}.hrd-doc-status--pending{background:#fef9c3;color:#854d0e}.hrd-doc-status--indexing{background:#e0f2fe;color:#0369a1}.hrd-doc-status--failed{background:#fee2e2;color:#dc2626}.hrd-doc-delete-btn{background:none;border:none;cursor:pointer;color:#cbd5e1;padding:4px;border-radius:6px;display:flex;align-items:center;transition:color .15s;flex-shrink:0}.hrd-doc-delete-btn:hover{color:#ef4444}.hrd-company-filter{display:flex;align-items:center;gap:.4rem;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;padding:.35rem .75rem}.hrd-company-filter__icon{color:#64748b;flex-shrink:0}.hrd-company-select{border:none;background:transparent;font-size:.85rem;color:#1e293b;cursor:pointer;outline:none;max-width:200px}.hrd-company-tag{display:inline-block;font-size:.72rem;font-weight:600;color:#0369a1;background:#e0f2fe;border-radius:4px;padding:1px 6px;margin-right:6px}.hr-emp-company{font-size:.8rem;color:#0369a1;font-weight:500}@media(max-width:900px){.hr-stats-row{grid-template-columns:repeat(2,1fr)}.hr-dashboard{padding:1.25rem}}@media(max-width:600px){.hr-stats-row{grid-template-columns:1fr}}.ef-page{padding:2rem 2.5rem;max-width:1400px;width:100%;background-color:#f4f7fe;min-height:100%}.ef-loading{padding:4rem;text-align:center;color:#9ca3af;font-size:.875rem}.ef-back-btn{display:flex;align-items:center;gap:.4rem;background:none;border:none;color:#6b7280;font-size:.875rem;font-weight:500;cursor:pointer;margin-bottom:1.25rem;padding:0;transition:color .15s}.ef-back-btn:hover{color:#004560}.ef-profile-header{display:flex;align-items:flex-start;gap:1.25rem;background:#fff;border:1px solid #E5E7EB;border-radius:16px;padding:1.75rem;margin-bottom:1.5rem;box-shadow:0 1px 3px #0000000a}.ef-profile-avatar{width:76px;height:76px;border-radius:50%;object-fit:cover;flex-shrink:0;border:3px solid #EEF2FF}.ef-profile-avatar--initials{background:#eef2ff;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;color:#004560}.ef-profile-info{flex:1}.ef-profile-name{font-size:1.3rem;font-weight:700;color:#111827;margin-bottom:.2rem}.ef-profile-position{font-size:.875rem;color:#6b7280;margin-bottom:.6rem}.ef-profile-contacts{display:flex;flex-wrap:wrap;gap:1rem;font-size:.8rem;color:#9ca3af;margin-bottom:.75rem}.ef-profile-contacts span{display:flex;align-items:center;gap:.3rem}.ef-edit-btn{background:#004560;color:#fff;border:none;border-radius:10px;padding:.6rem 1.25rem;font-size:.8rem;font-weight:600;cursor:pointer;flex-shrink:0;align-self:flex-start;transition:background .15s}.ef-edit-btn:hover{background:#003348}.ef-tabs{margin-bottom:1.5rem}.ef-overview-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.ef-card{background:#fff;border:1px solid #E5E7EB;border-radius:14px;padding:1.25rem 1.5rem;box-shadow:0 1px 3px #00000008}.ef-card__title{display:flex;align-items:center;gap:.5rem;font-size:.75rem;font-weight:700;color:#9ca3af;margin-bottom:1rem;text-transform:uppercase;letter-spacing:.07em}.ef-card__title svg{color:#004560}.ef-info-table{width:100%;font-size:.875rem;border-collapse:collapse}.ef-info-table td{padding:.45rem 0;color:#374151;vertical-align:top}.ef-info-table td:first-child{color:#9ca3af;width:45%;font-weight:500}.ef-empty{color:#c9cdd4;font-size:.875rem}.ef-birthday-hint{color:#db2777;font-size:.8rem;font-weight:600}.ef-emergency{margin-top:1rem;padding-top:1rem;border-top:1px solid #F0F2F5;font-size:.875rem;color:#374151}.ef-emergency__label{font-size:.75rem;color:#9ca3af;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.3rem}.ef-education-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.ef-edu-institution{font-size:.875rem;font-weight:600;color:#111827}.ef-edu-specialty{font-size:.8rem;color:#9ca3af;margin-top:1px}.ef-history-timeline{background:#fff;border:1px solid #E5E7EB;border-radius:14px;display:flex;flex-direction:column;gap:0;padding:1.5rem 2rem 1.5rem 2.5rem;border-left:none;position:relative}.ef-history-timeline:before{content:"";position:absolute;left:1.75rem;top:1.5rem;bottom:1.5rem;width:2px;background:#e5e7eb}.ef-timeline-item{position:relative;padding:0 0 1.5rem 1.5rem}.ef-timeline-item:last-child{padding-bottom:0}.ef-timeline-dot{position:absolute;left:-5px;top:4px;width:10px;height:10px;border-radius:50%;background:#004560;border:2px solid #FFFFFF;box-shadow:0 0 0 2px #eef2ff}.ef-timeline-date{font-size:.75rem;color:#9ca3af;margin-bottom:.25rem;font-weight:500}.ef-timeline-position{font-size:.95rem;font-weight:700;color:#111827}.ef-timeline-dept{font-size:.8rem;color:#6b7280;margin-top:1px}.ef-timeline-reason{font-size:.8rem;color:#9ca3af;margin-top:.25rem}.ef-timeline-order{font-size:.75rem;color:#c9cdd4}.ef-documents-list{display:flex;flex-direction:column;gap:.75rem}.ef-doc-item{display:flex;align-items:center;gap:.875rem;background:#fff;border:1px solid #E5E7EB;border-radius:12px;padding:1rem 1.25rem;transition:box-shadow .15s}.ef-doc-item:hover{box-shadow:0 2px 8px #0000000f}.ef-doc-icon{color:#004560;flex-shrink:0}.ef-doc-title{font-size:.875rem;font-weight:600;color:#111827}.ef-doc-meta{font-size:.78rem;color:#9ca3af;margin-top:1px}.ef-doc-download{margin-left:auto;font-size:.8rem;color:#004560;text-decoration:none;font-weight:600;padding:.35rem .75rem;border-radius:8px;background:#eef2ff;transition:background .15s}.ef-doc-download:hover{background:#e0e7ff}.ef-disciplinary-list{display:flex;flex-direction:column;gap:.75rem}.ef-disc-item{background:#fff;border:1px solid #E5E7EB;border-radius:12px;padding:1rem 1.25rem}.ef-disc-badge{display:inline-block;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:700;margin-bottom:.6rem}.ef-disc-desc{font-size:.875rem;color:#374151;margin-bottom:.35rem}.ef-disc-meta{font-size:.78rem;color:#9ca3af}.ef-notes{background:#fffbeb;border:1px solid #FDE68A;border-radius:14px;padding:1.5rem}.ef-notes-content{font-size:.875rem;color:#374151;white-space:pre-wrap;line-height:1.7}@media(max-width:700px){.ef-overview-grid{grid-template-columns:1fr}.ef-page{padding:1.25rem}}.hr-cal-page{padding:2rem 2.5rem;max-width:1400px;background-color:#f4f7fe;min-height:100%}.hr-cal-header{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-bottom:1.75rem}.hr-cal-title{font-size:1.6rem;font-weight:700;color:#111827;margin:0;letter-spacing:-.3px}.hr-cal-legend{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.hr-cal-legend-item{display:flex;align-items:center;gap:.4rem;background:#fff;border:1px solid #E5E7EB;border-radius:20px;padding:.35rem .875rem;font-size:.78rem;font-weight:600;color:#6b7280;cursor:pointer;transition:all .15s}.hr-cal-legend-item:hover{border-color:#004560;color:#004560}.hr-cal-legend-item.active{background:#eef2ff;border-color:#004560;color:#004560}.hr-cal-legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.hr-cal-body{display:grid;grid-template-columns:1fr 300px;gap:1.25rem;align-items:start}.hr-cal-grid-wrap{background:#fff;border:1px solid #E5E7EB;border-radius:16px;padding:1.5rem;box-shadow:0 1px 3px #0000000a}.hr-cal-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem}.hr-cal-nav-btn{background:#f4f7fe;border:1px solid #E5E7EB;border-radius:9px;width:34px;height:34px;display:flex;align-items:center;justify-content:center;color:#6b7280;cursor:pointer;transition:all .15s}.hr-cal-nav-btn:hover{background:#eef2ff;border-color:#004560;color:#004560}.hr-cal-month-label{font-size:1rem;font-weight:700;color:#111827}.hr-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.hr-cal-weekday{text-align:center;font-size:.72rem;font-weight:700;color:#9ca3af;padding:.4rem 0 .75rem;text-transform:uppercase;letter-spacing:.06em}.hr-cal-cell{min-height:78px;background:#fafafa;border-radius:10px;padding:.4rem .4rem .3rem;cursor:pointer;transition:background .1s,box-shadow .1s;position:relative;border:1px solid transparent}.hr-cal-cell:hover{background:#f0f4ff;border-color:#c7d7f5}.hr-cal-cell--empty{background:transparent;cursor:default;border:none}.hr-cal-cell--empty:hover{background:transparent}.hr-cal-cell--today{background:#eef2ff;border-color:#c7d7f5}.hr-cal-cell--today .hr-cal-day-num{background:#004560;color:#fff;border-radius:50%;width:22px;height:22px;display:flex;align-items:center;justify-content:center}.hr-cal-cell--selected{background:#eef2ff;border-color:#004560;box-shadow:0 0 0 1px #004560}.hr-cal-cell--weekend{background:#f9fafb}.hr-cal-cell--weekend .hr-cal-day-num{color:#9ca3af}.hr-cal-cell--weekend:hover{background:#f0f4ff}.hr-cal-day-num{font-size:.8rem;font-weight:600;color:#374151;width:22px;height:22px;display:flex;align-items:center;justify-content:center;margin-bottom:.2rem}.hr-cal-dots{display:flex;flex-wrap:wrap;gap:2px;padding:0 1px}.hr-cal-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.hr-cal-dot-more{font-size:.65rem;color:#9ca3af;font-weight:600;line-height:6px}.hr-cal-sidebar{background:#fff;border:1px solid #E5E7EB;border-radius:16px;padding:1.5rem;box-shadow:0 1px 3px #0000000a;min-height:200px}.hr-cal-sidebar__title{font-size:.95rem;font-weight:700;color:#111827;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid #F0F2F5}.hr-cal-sidebar__empty{color:#c9cdd4;font-size:.875rem;text-align:center;padding:1.5rem 0;line-height:1.6}.hr-cal-sidebar__loading{color:#9ca3af;font-size:.875rem;text-align:center;padding:1rem 0}.hr-cal-event-list{display:flex;flex-direction:column;gap:.625rem}.hr-cal-event-item{border-left:3px solid;border-radius:8px;padding:.75rem .875rem;background:#f9fafb;transition:background .1s}.hr-cal-event-item:hover{background:#f4f7fe}.hr-cal-event-type{display:flex;align-items:center;gap:.3rem;font-size:.7rem;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.3rem}.hr-cal-event-title{font-size:.8rem;font-weight:600;color:#111827}.hr-cal-event-user{font-size:.78rem;color:#6b7280;margin-top:.2rem}.hr-cal-event-dates{font-size:.75rem;color:#9ca3af;margin-top:.3rem}@media(max-width:1024px){.hr-cal-body{grid-template-columns:1fr}.hr-cal-sidebar{margin-top:0}}@media(max-width:600px){.hr-cal-page{padding:1.25rem}.hr-cal-cell{min-height:54px}.hr-cal-header{flex-direction:column}}.mhr-page{padding:2rem 2.5rem;max-width:1400px;width:100%;background-color:#f4f7fe;min-height:100%}.mhr-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1.75rem;gap:1rem}.mhr-title{font-size:1.6rem;font-weight:700;color:#111827;margin:0;letter-spacing:-.3px}.mhr-subtitle{font-size:.875rem;color:#6b7280;margin-top:.25rem}.mhr-summary-row{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.75rem}.mhr-summary-card{background:#fff;border:1px solid #E5E7EB;border-radius:14px;padding:1.125rem 1.25rem;display:flex;align-items:center;gap:.875rem;box-shadow:0 1px 3px #0000000a}.mhr-summary-card__icon{width:40px;height:40px;border-radius:11px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.mhr-summary-card__icon--blue{background:#eef2ff;color:#004560}.mhr-summary-card__icon--yellow{background:#fffbeb;color:#d97706}.mhr-summary-card__icon--red{background:#fef2f2;color:#dc2626}.mhr-summary-card__icon--purple{background:#f5f3ff;color:#7c3aed}.mhr-summary-card__value{font-size:1.6rem;font-weight:700;color:#111827;line-height:1}.mhr-summary-card__label{font-size:.78rem;color:#6b7280;margin-top:.2rem;font-weight:500}.mhr-btn{display:inline-flex;align-items:center;gap:.4rem;border:none;border-radius:10px;padding:.625rem 1.25rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap}.mhr-btn--primary{background:#004560;color:#fff}.mhr-btn--primary:hover{background:#003348}.mhr-btn--primary:disabled{opacity:.6;cursor:not-allowed}.mhr-btn--ghost{background:#f4f7fe;color:#374151;border:1px solid #E5E7EB}.mhr-btn--ghost:hover{background:#e5e7eb}.mhr-content{background:#fff;border:1px solid #E5E7EB;border-radius:14px;padding:1.5rem;box-shadow:0 1px 3px #0000000a}.mhr-section-title{font-size:.8rem;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.07em;margin-bottom:1rem}.mhr-loading{padding:3rem;text-align:center;color:#9ca3af;font-size:.875rem}.mhr-balance-section{margin-bottom:.5rem}.mhr-balance-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.875rem}.mhr-balance-card{background:#f9fafb;border:1px solid #F0F2F5;border-radius:12px;padding:1rem 1.125rem}.mhr-balance-card__type{font-size:.8rem;font-weight:600;color:#374151;margin-bottom:.625rem}.mhr-balance-card__numbers{display:flex;align-items:baseline;gap:.3rem;margin-bottom:.5rem}.mhr-balance-card__remaining{font-size:1.75rem;font-weight:700;color:#004560;line-height:1}.mhr-balance-card__total{font-size:.8rem;color:#9ca3af}.mhr-balance-bar{height:5px;background:#e5e7eb;border-radius:99px;overflow:hidden;margin-bottom:.5rem}.mhr-balance-bar__fill{height:100%;background:#004560;border-radius:99px;transition:width .4s ease}.mhr-balance-card__meta{font-size:.75rem;color:#9ca3af}.mhr-list{display:flex;flex-direction:column;gap:.625rem}.mhr-list-item{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.125rem;background:#f9fafb;border:1px solid #F0F2F5;border-radius:12px;transition:border-color .15s,box-shadow .15s}.mhr-list-item:hover{border-color:#d1d5db;box-shadow:0 2px 6px #0000000d}.mhr-list-item__left{display:flex;align-items:flex-start;gap:.875rem;flex:1;min-width:0}.mhr-list-item__icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.mhr-list-item__icon--blue{background:#eef2ff;color:#004560}.mhr-list-item__icon--red{background:#fef2f2;color:#dc2626}.mhr-list-item__icon--purple{background:#f5f3ff;color:#7c3aed}.mhr-list-item__title{font-size:.875rem;font-weight:600;color:#111827}.mhr-list-item__dates{font-size:.8rem;color:#6b7280;margin-top:.15rem}.mhr-list-item__days{color:#9ca3af;margin-left:.25rem}.mhr-list-item__hr-comment{font-size:.78rem;color:#9ca3af;margin-top:.25rem;font-style:italic}.mhr-badge{display:inline-block;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;white-space:nowrap;flex-shrink:0}.mhr-badge--gray{background:#f3f4f6;color:#6b7280}.mhr-badge--yellow{background:#fffbeb;color:#d97706}.mhr-badge--green{background:#ecfdf5;color:#059669}.mhr-badge--red{background:#fef2f2;color:#dc2626}.mhr-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;gap:.875rem;color:#9ca3af;font-size:.875rem}.mhr-empty__icon{opacity:.25}.mhr-modal-overlay{position:fixed;inset:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.mhr-modal{background:#fff;border-radius:18px;width:100%;max-width:480px;box-shadow:0 20px 60px #00000026;overflow:hidden}.mhr-modal__header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid #F0F2F5;font-size:1rem;font-weight:700;color:#111827}.mhr-modal__close{background:#f4f7fe;border:none;border-radius:8px;width:30px;height:30px;display:flex;align-items:center;justify-content:center;color:#6b7280;cursor:pointer;transition:all .15s}.mhr-modal__close:hover{background:#e5e7eb;color:#111827}.mhr-modal__body{padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.mhr-modal__footer{display:flex;justify-content:flex-end;gap:.625rem;padding-top:.5rem}.mhr-field{display:flex;flex-direction:column;gap:.375rem}.mhr-field-row{display:grid;grid-template-columns:1fr 1fr;gap:.875rem}.mhr-label{font-size:.8rem;font-weight:600;color:#374151}.mhr-optional{font-weight:400;color:#9ca3af}.mhr-input,.mhr-select,.mhr-textarea{background:#f9fafb;border:1px solid #E5E7EB;border-radius:10px;padding:.625rem .875rem;font-size:.875rem;color:#111827;font-family:inherit;outline:none;transition:border-color .15s;width:100%}.mhr-input:focus,.mhr-select:focus,.mhr-textarea:focus{border-color:#004560;background:#fff}.mhr-textarea{resize:vertical;min-height:80px}.mhr-select-wrap{position:relative}.mhr-select{appearance:none;padding-right:2rem;cursor:pointer}.mhr-select-arrow{position:absolute;right:10px;top:50%;transform:translateY(-50%);color:#9ca3af;pointer-events:none}.mhr-days-hint{font-size:.8rem;color:#374151;background:#eef2ff;border-radius:8px;padding:.5rem .875rem}.mhr-days-note{color:#9ca3af;margin-left:.3rem}.mhr-error{font-size:.8rem;color:#dc2626;background:#fef2f2;border-radius:8px;padding:.5rem .875rem}@media(max-width:800px){.mhr-summary-row{grid-template-columns:repeat(2,1fr)}.mhr-page{padding:1.25rem}}@media(max-width:500px){.mhr-summary-row,.mhr-field-row{grid-template-columns:1fr}}
