@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}.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-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}@keyframes spin{to{transform:rotate(360deg)}}.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}.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}.mt-price-entry{margin-top:14px;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.mt-price-instruction{padding:10px 14px;background:#f8fafc;font-size:.8125rem;color:#64748b;border-bottom:1px solid #e2e8f0;margin:0}.mt-price-table{width:100%;border-collapse:collapse;font-size:.8125rem}.mt-price-table th{padding:8px 12px;background:#f1f5f9;text-align:left;font-weight:600;color:#475569;white-space:nowrap}.mt-price-table td{padding:7px 12px;border-top:1px solid #f1f5f9;color:#1e293b}.mt-price-table tr:hover td{background:#fafafa}.mt-price-input{width:110px;padding:5px 8px;border:1px solid #cbd5e1;border-radius:6px;font-size:.8125rem;font-family:inherit;text-align:right;transition:border-color .15s}.mt-price-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 2px #6366f126}.mt-price-total{text-align:right;font-weight:500;color:#0f172a;white-space:nowrap}.mt-btn:disabled{opacity:.5;cursor:not-allowed}.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}
