:root{font-family:Segoe UI Variable,Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}[data-theme=light]{--bg-primary: #f8fafc;--bg-secondary: #ffffff;--bg-tertiary: #f1f5f9;--bg-gradient: linear-gradient(135deg, #7859FF 0%, #FF82B8 25%, #FDCCFF 50%, #A9D5FF 75%, #4DA9FF 100%);--text-primary: #0f172a;--text-secondary: #64748b;--text-muted: #94a3b8;--border-color: #e2e8f0;--border-light: #f1f5f9;--primary-color: #4f46e5;--primary-color-hover: #4338ca;--primary-color-light: #818cf8;--primary-color-alpha: rgba(79, 70, 229, .1);--primary-text: #ffffff;--secondary-color: #64748b;--secondary-color-hover: #475569;--user-message-bg: linear-gradient(135deg, #4f46e5, #7c3aed);--assistant-message-bg: #f8fafc;--assistant-message-text: #1e293b;--assistant-message-border: #e2e8f0;--error-bg: #fef2f2;--error-text: #dc2626;--error-border: #fecaca;--success-bg: #f0fdf4;--success-text: #16a34a;--success-border: #bbf7d0;--warning-bg: #fffbeb;--warning-text: #d97706;--warning-border: #fde68a;--scrollbar-thumb: #cbd5e1;--scrollbar-thumb-hover: #94a3b8;--shadow-sm: 0 1px 2px rgba(0,0,0,.05);--shadow-md: 0 4px 6px -1px rgba(0,0,0,.07), 0 2px 4px -1px rgba(0,0,0,.04);--shadow-lg: 0 10px 15px -3px rgba(0,0,0,.08), 0 4px 6px -2px rgba(0,0,0,.04);--shadow-xl: 0 20px 25px -5px rgba(0,0,0,.08), 0 10px 10px -5px rgba(0,0,0,.03);--shadow-2xl: 0 25px 50px -12px rgba(0,0,0,.15);--sidebar-bg: #ffffff;--sidebar-border: #e2e8f0}[data-theme=dark]{--bg-primary: #0f172a;--bg-secondary: #1e293b;--bg-tertiary: #334155;--bg-gradient: linear-gradient(135deg, #7859FF 0%, #FF82B8 25%, #FDCCFF 50%, #A9D5FF 75%, #4DA9FF 100%);--text-primary: #f1f5f9;--text-secondary: #94a3b8;--text-muted: #64748b;--border-color: #2d3f54;--border-light: #1e293b;--primary-color: #818cf8;--primary-color-hover: #6366f1;--primary-color-light: #a5b4fc;--primary-color-alpha: rgba(129, 140, 248, .15);--primary-text: #ffffff;--secondary-color: #64748b;--user-message-bg: linear-gradient(135deg, #4f46e5, #7c3aed);--assistant-message-bg: #1e293b;--assistant-message-text: #e2e8f0;--assistant-message-border: #334155;--error-bg: rgba(127,29,29,.4);--error-text: #fca5a5;--error-border: #7f1d1d;--success-bg: rgba(20,83,45,.4);--success-text: #86efac;--success-border: #166534;--warning-bg: rgba(120,53,15,.4);--warning-text: #fcd34d;--warning-border: #92400e;--scrollbar-thumb: #334155;--scrollbar-thumb-hover: #475569;--shadow-sm: 0 1px 2px rgba(0,0,0,.3);--shadow-md: 0 4px 6px -1px rgba(0,0,0,.4), 0 2px 4px -1px rgba(0,0,0,.3);--shadow-lg: 0 10px 15px -3px rgba(0,0,0,.4), 0 4px 6px -2px rgba(0,0,0,.3);--shadow-xl: 0 20px 25px -5px rgba(0,0,0,.5), 0 10px 10px -5px rgba(0,0,0,.4);--shadow-2xl: 0 25px 50px -12px rgba(0,0,0,.6);--sidebar-bg: #131c2e;--sidebar-border: #1e2d40}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--bg-primary);color:var(--text-primary);transition:background-color .25s ease,color .25s ease}#root{min-height:100vh}html{scroll-behavior:smooth}:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px;border-radius:4px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.app{display:flex;min-height:100vh}.sidebar{width:256px;background:var(--sidebar-bg);border-right:1px solid var(--sidebar-border);display:flex;flex-direction:column;flex-shrink:0;position:sticky;top:0;height:100vh;overflow-y:auto;overflow-x:hidden}.sidebar-brand{display:flex;align-items:center;gap:.625rem;padding:1.25rem 1.25rem 1rem;border-bottom:1px solid var(--sidebar-border)}.sidebar-brand-logo{width:38px;height:38px;border-radius:10px;flex-shrink:0;object-fit:contain;filter:drop-shadow(0 0 6px rgba(0,212,255,.45));transition:filter .3s ease,transform .3s cubic-bezier(.34,1.56,.64,1)}.sidebar-brand:hover .sidebar-brand-logo{transform:scale(1.15);filter:drop-shadow(0 0 8px rgba(0,212,255,.9)) drop-shadow(0 0 20px rgba(0,212,255,.55)) brightness(1.2)}.sidebar-logo{font-size:1.05rem;display:flex;align-items:baseline;gap:.3rem}.sidebar-logo-b{font-family:Space Grotesk,sans-serif;font-weight:700;font-size:1.05rem;letter-spacing:-.02em;color:var(--text-primary)}.sidebar-logo-hr{font-family:Space Grotesk,sans-serif;font-weight:700;font-size:1.05rem;letter-spacing:.02em;background:linear-gradient(135deg,#a78bfa,#06b6d4);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.sidebar-nav{flex:1;padding:.75rem .75rem 0;display:flex;flex-direction:column;gap:2px;overflow-y:auto}.nav-item{--nav-color: var(--primary-color);display:flex;align-items:center;gap:.6rem;padding:.575rem .875rem;border-radius:10px;color:var(--text-secondary);text-decoration:none;font-size:.875rem;font-weight:500;transition:background .15s,color .15s,box-shadow .15s;cursor:pointer;line-height:1}.nav-item--dashboard{--nav-color: #4f46e5}.nav-item--employees{--nav-color: #0d9488}.nav-item--org-chart{--nav-color: #7c3aed}.nav-item--leave{--nav-color: #2563eb}.nav-item--events{--nav-color: #ea580c}.nav-item--transactions{--nav-color: #c026d3}.nav-item--expenses{--nav-color: #d97706}.nav-item--requests{--nav-color: #059669}.nav-item--chat{--nav-color: #6366f1}.nav-item--profile{--nav-color: #0ea5e9}.nav-item--settings{--nav-color: #64748b}.nav-item:hover{background:color-mix(in srgb,var(--nav-color) 10%,transparent);color:var(--nav-color)}.nav-item.active{background:color-mix(in srgb,var(--nav-color) 12%,transparent);color:var(--nav-color);font-weight:600;box-shadow:inset 3px 0 0 var(--nav-color)}.nav-item .nav-icon{flex-shrink:0;opacity:.75;transition:opacity .15s}.nav-item:hover .nav-icon,.nav-item.active .nav-icon{opacity:1}.nav-divider{height:1px;background:var(--sidebar-border);margin:.5rem .25rem}.sidebar-footer{padding:.75rem;border-top:1px solid var(--sidebar-border);display:flex;flex-direction:column;gap:.5rem;flex-shrink:0}.sidebar-contact-link{display:flex;align-items:center;gap:.6rem;padding:.45rem .75rem;border-radius:8px;color:var(--text-muted);text-decoration:none;font-size:.8rem;font-weight:500;transition:color .15s,background .15s}.sidebar-contact-link:hover{color:var(--primary-color);background:var(--primary-color-alpha)}.sidebar-contact-link .nav-icon{opacity:.6}.sidebar-contact-link:hover .nav-icon{opacity:1}.sidebar-user{display:flex;align-items:center;gap:.625rem;padding:.5rem .625rem;border-radius:10px;background:var(--bg-tertiary);border:1px solid var(--sidebar-border)}.sidebar-user-avatar{width:32px;height:32px;border-radius:8px;background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff;font-size:.75rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.sidebar-user-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.sidebar-user-name{font-size:.8rem;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-user-email{font-size:.7rem;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-signout{width:28px;height:28px;border-radius:7px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s,color .15s;padding:0}.sidebar-signout:hover{background:var(--error-bg);color:var(--error-text)}.main-wrapper{flex:1;display:flex;flex-direction:column;min-width:0;overflow:hidden}.header{display:flex;align-items:center;justify-content:space-between;padding:0 1.5rem;height:60px;background:color-mix(in srgb,var(--bg-secondary) 90%,transparent);border-bottom:1px solid var(--border-color);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);position:sticky;top:0;z-index:50;flex-shrink:0}.header-breadcrumb{display:flex;align-items:center}.header-brand-mobile{display:none;align-items:baseline;gap:.3rem;font-size:1rem}.header-actions{display:flex;align-items:center;gap:.625rem}.header-lang{display:flex;border:1px solid var(--border-color);border-radius:8px;overflow:hidden;background:var(--bg-tertiary)}.header-lang button{padding:.3rem .65rem;font-size:.78rem;font-weight:600;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;transition:background .15s,color .15s;font-family:inherit}.header-lang button:hover{color:var(--text-primary);background:var(--bg-secondary)}.header-lang button.active{background:var(--primary-color);color:#fff}.header-user-chip{display:flex;align-items:center;gap:.5rem;padding:.3rem .7rem .3rem .3rem;border-radius:24px;border:1px solid var(--border-color);background:var(--bg-tertiary)}.header-user-avatar{width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff;font-size:.68rem;font-weight:700;display:flex;align-items:center;justify-content:center}.header-user-name{font-size:.82rem;font-weight:600;color:var(--text-primary)}.main{flex:1;padding:2rem 2rem 4rem;overflow:auto;background:var(--bg-primary)}.card{background:var(--bg-secondary);border-radius:16px;border:1px solid var(--border-color);padding:1.5rem;margin-bottom:1.25rem;box-shadow:var(--shadow-sm);transition:box-shadow .2s,border-color .2s}.card:hover{box-shadow:var(--shadow-md)}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.55rem 1.1rem;border-radius:10px;border:none;cursor:pointer;font-size:.9rem;font-weight:600;font-family:inherit;transition:box-shadow .2s,filter .2s,transform .2s,border-color .2s;text-decoration:none;line-height:1}.btn-primary{background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff;box-shadow:0 2px 8px #4f46e559}.btn-primary:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px);box-shadow:0 6px 20px #4f46e573}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover:not(:disabled){border-color:var(--primary-color);box-shadow:0 0 14px #4f46e52e}.btn-danger{background:#dc2626;color:#fff}.btn-danger:hover:not(:disabled){filter:brightness(1.1);box-shadow:0 0 14px #dc262659}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-icon{width:38px;height:38px;padding:0;border-radius:10px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:border-color .2s,box-shadow .2s}.btn-icon svg{width:20px;height:20px}.btn-icon:hover{border-color:var(--primary-color);box-shadow:0 0 12px #4f46e533}.btn:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px;box-shadow:0 0 0 4px #4f46e533}input,select,textarea{width:100%;padding:.55rem .875rem;border:1px solid var(--border-color);border-radius:10px;background:var(--bg-primary);color:var(--text-primary);font-size:.9rem;font-family:inherit;transition:border-color .2s,box-shadow .2s}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #4f46e51f}label{display:block;margin-bottom:.3rem;font-weight:600;color:var(--text-secondary);font-size:.825rem}.form-group{margin-bottom:1.1rem}table{width:100%;border-collapse:collapse}th,td{padding:.7rem 1rem;text-align:left;border-bottom:1px solid var(--border-color)}th{font-weight:700;color:var(--text-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;background:var(--bg-tertiary)}tr:last-child td{border-bottom:none}tbody tr:hover td{background:var(--primary-color-alpha)}.empty{color:var(--text-muted);padding:3rem;text-align:center;font-size:.9rem}.error{color:var(--error-text);font-size:.875rem;margin-top:.4rem}.loading{text-align:center;padding:3rem;color:var(--text-secondary);font-size:.9rem}.page-title{margin:0 0 .4rem;font-size:1.5rem;font-weight:800;letter-spacing:-.02em;color:var(--text-primary)}.page-sub{margin:0 0 1.75rem;font-size:.925rem;color:var(--text-secondary);line-height:1.5}.header-link{text-decoration:none}.header-title{margin:0;font-size:1.15rem;font-weight:700;color:var(--text-primary)}.header-user{color:var(--text-muted);font-size:.875rem}.cw-fab{position:fixed;bottom:28px;right:28px;z-index:1000;width:58px;height:58px;border-radius:50%;border:none;cursor:grab;background:linear-gradient(135deg,#a78bfa,#06b6d4);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 24px #a78bfa73,0 2px 8px #00000026;transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s,background .25s;-webkit-user-select:none;user-select:none}.cw-fab:hover{transform:scale(1.1) translateY(-2px);box-shadow:0 10px 32px #a78bfa99,0 4px 12px #00000026}.cw-fab.is-open{background:linear-gradient(135deg,#b49ffa,#22d3ee);transform:scale(1.05)}.cw-fab.is-dragging{cursor:grabbing;transform:scale(1.12);transition:none}.cw-fab-icon{display:flex;align-items:center;justify-content:center;transition:transform .25s}.cw-fab.is-open .cw-fab-icon{transform:rotate(90deg)}.cw-fab-pulse{position:absolute;inset:-6px;border-radius:50%;border:2px solid rgba(167,139,250,.5);animation:pulse-ring 2.5s ease-out infinite;pointer-events:none}@keyframes pulse-ring{0%{transform:scale(1);opacity:.7}70%,to{transform:scale(1.35);opacity:0}}.cw-overlay{position:fixed;inset:0;z-index:998;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.cw-panel{position:fixed;bottom:100px;right:28px;z-index:999;width:400px;max-height:560px;display:flex;flex-direction:column;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:20px;box-shadow:0 4px 6px #0000000a,0 20px 60px #0000002e,0 40px 80px #a78bfa14;overflow:hidden;opacity:0;transform:translateY(24px) scale(.96);pointer-events:none;transition:opacity .22s,transform .25s cubic-bezier(.34,1.2,.64,1),width .3s,height .3s,inset .3s,border-radius .3s,max-height .3s;transform-origin:bottom right}.cw-panel.is-open{opacity:1;transform:translateY(0) scale(1);pointer-events:all}.cw-panel.is-fullscreen{inset:50% auto auto 50%;transform:translate(-50%,-50%) scale(1)!important;width:min(90vw,720px);max-height:min(85vh,700px);height:min(85vh,700px);border-radius:20px;box-shadow:0 25px 80px #0000004d,0 0 0 1px var(--border-color);transform-origin:center center}.cw-embedded{display:flex;flex-direction:column;height:100%;width:100%;background:var(--bg-secondary);border-radius:16px;border:1px solid var(--border-color);overflow:hidden;box-shadow:var(--shadow-md)}.cw-header{display:flex;align-items:center;justify-content:space-between;padding:.875rem 1rem;background:linear-gradient(135deg,#a78bfa,#06b6d4);flex-shrink:0}.cw-header-left{display:flex;align-items:center;gap:.625rem}.cw-avatar{width:34px;height:34px;border-radius:10px;background:#fff3;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.cw-header-text{display:flex;flex-direction:column;gap:1px}.cw-title{font-size:.95rem;font-weight:700;color:#fff;display:flex;align-items:center;gap:.35rem}.cw-title .logo-wordmark{font-family:Space Grotesk,sans-serif;color:#fff;font-weight:700;letter-spacing:-.02em;font-size:1rem}.cw-title-hr{font-family:Space Grotesk,sans-serif;background:linear-gradient(135deg,#adf3e1,#fff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:700;letter-spacing:.02em;font-size:1rem;padding:.05rem .4rem;border-radius:4px;background-color:#ffffffeb}.cw-status{display:flex;align-items:center;gap:.3rem;font-size:.72rem;color:#fffc;font-weight:500}.cw-status-dot{width:6px;height:6px;border-radius:50%;background:#4ade80;box-shadow:0 0 6px #4ade80;display:block;animation:status-pulse 2s ease-in-out infinite}@keyframes status-pulse{0%,to{opacity:1}50%{opacity:.6}}.cw-header-actions{display:flex;align-items:center;gap:.25rem}.cw-header-btn{width:28px;height:28px;border-radius:8px;border:none;background:#ffffff1f;color:#ffffffd9;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s;padding:0}.cw-header-btn:hover{background:#ffffff3d;color:#fff}.cw-messages{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.625rem;scroll-behavior:smooth}.cw-messages::-webkit-scrollbar{width:4px}.cw-messages::-webkit-scrollbar-track{background:transparent}.cw-messages::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:2px}.cw-msg{display:flex;flex-direction:column;max-width:82%;gap:.25rem;position:relative}.cw-msg.user{align-self:flex-end;align-items:flex-end}.cw-msg.assistant{align-self:flex-start;align-items:flex-start}.cw-bubble{padding:.6rem .875rem;border-radius:14px;font-size:.875rem;line-height:1.55;white-space:pre-wrap;word-break:break-word}.cw-msg.user .cw-bubble{background:linear-gradient(135deg,#a78bfa,#06b6d4);color:#fff;border-bottom-right-radius:4px;box-shadow:0 2px 8px #a78bfa4d}.cw-msg.assistant .cw-bubble{background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border-color);border-bottom-left-radius:4px}.cw-tts-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:6px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;transition:color .2s,background .2s;padding:0}.cw-tts-btn:hover{color:#06b6d4;background:#06b6d414}.cw-typing{display:flex;align-items:center;gap:4px;padding:.75rem 1rem;min-width:52px}.cw-typing span{width:7px;height:7px;border-radius:50%;background:var(--text-muted);display:block;animation:typing-bounce 1.2s ease-in-out infinite}.cw-typing span:nth-child(2){animation-delay:.2s}.cw-typing span:nth-child(3){animation-delay:.4s}@keyframes typing-bounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-6px);opacity:1}}.cw-notice{display:flex;align-items:flex-start;gap:.5rem;padding:.625rem .75rem;border-radius:10px;font-size:.8rem;line-height:1.5}.cw-notice.warn{background:var(--warning-bg);color:var(--warning-text);border:1px solid var(--warning-border)}.cw-notice.error{background:var(--error-bg);color:var(--error-text);border:1px solid var(--error-border)}.cw-notice svg{flex-shrink:0;margin-top:1px}.cw-input-area{display:flex;flex-direction:column;gap:.25rem;padding:.75rem .875rem;border-top:1px solid var(--border-color);background:var(--bg-secondary);flex-shrink:0}.cw-input-row{display:flex;align-items:flex-end;gap:.5rem;width:100%}.cw-input{flex:1;resize:none;border:1px solid var(--border-color);border-radius:12px;padding:.55rem .8rem;font-size:.875rem;font-family:inherit;line-height:1.5;color:var(--text-primary);background:var(--bg-primary);max-height:120px;transition:border-color .2s,box-shadow .2s;width:100%;overflow-y:auto}.cw-input:focus{outline:none;border-color:#06b6d4;box-shadow:0 0 0 3px #06b6d426}.cw-input:disabled{opacity:.55;cursor:not-allowed}.cw-mic-btn{width:38px;height:38px;flex-shrink:0;border-radius:10px;border:none;background:var(--bg-tertiary);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;padding:0}.cw-mic-btn:hover{color:#06b6d4;background:#06b6d41a}.cw-mic-btn.is-recording{background:#ef4444;color:#fff;box-shadow:0 0 0 4px #ef444433;animation:mic-pulse 1.5s ease-in-out infinite}@keyframes mic-pulse{0%,to{box-shadow:0 0 0 4px #ef444433}50%{box-shadow:0 0 0 8px #ef44441a}}.cw-mic-btn:disabled{opacity:.4;cursor:not-allowed}.cw-send{width:38px;height:38px;flex-shrink:0;border-radius:10px;border:none;background:linear-gradient(135deg,#a78bfa,#06b6d4);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s,filter .2s;padding:0;box-shadow:0 2px 8px #a78bfa4d}.cw-send:hover:not(:disabled){transform:scale(1.1) translateY(-1px);box-shadow:0 4px 14px #a78bfa73;filter:brightness(1.08)}.cw-send:active:not(:disabled){transform:scale(.95)}.cw-send:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.cw-history-backdrop{position:absolute;inset:0;z-index:10;background:#00000040;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);border-radius:inherit}.cw-history-sidebar{position:absolute;top:0;left:0;bottom:0;z-index:11;width:260px;max-width:80%;background:var(--bg-secondary);border-right:1px solid var(--border-color);display:flex;flex-direction:column;transform:translate(-100%);transition:transform .25s cubic-bezier(.4,0,.2,1);border-radius:inherit;border-top-right-radius:0;border-bottom-right-radius:0;overflow:hidden}.cw-history-sidebar.is-open{transform:translate(0)}.cw-history-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem .875rem;border-bottom:1px solid var(--border-color);flex-shrink:0;background:linear-gradient(135deg,#a78bfa,#06b6d4)}.cw-history-header .cw-header-btn{background:#ffffff1f;color:#ffffffd9}.cw-history-header .cw-header-btn:hover{background:#ffffff3d;color:#fff}.cw-history-title{font-size:.85rem;font-weight:700;color:#fff}.cw-history-new{display:flex;align-items:center;gap:.4rem;margin:.5rem .625rem;padding:.5rem .75rem;border-radius:10px;border:1px dashed var(--border-color);background:var(--bg-primary);color:var(--text-primary);font-size:.8rem;font-weight:600;cursor:pointer;transition:background .2s,border-color .2s}.cw-history-new:hover{background:#06b6d40f;border-color:#06b6d4}.cw-history-list{flex:1;overflow-y:auto;padding:.25rem .5rem}.cw-history-empty{padding:1.5rem .75rem;text-align:center;font-size:.78rem;color:var(--text-muted)}.cw-history-item{position:relative;padding:.55rem .625rem;margin-bottom:2px;border-radius:8px;cursor:pointer;transition:background .15s}.cw-history-item:hover{background:#06b6d412}.cw-history-item-title{font-size:.8rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:1.5rem}.cw-history-item-meta{font-size:.68rem;color:var(--text-muted);margin-top:2px}.cw-history-delete{position:absolute;top:50%;right:.5rem;transform:translateY(-50%);width:22px;height:22px;border-radius:5px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s,color .15s,background .15s;padding:0}.cw-history-item:hover .cw-history-delete{opacity:1}.cw-history-delete:hover{color:#ef4444;background:#ef444414}.cw-msg-actions{display:flex;align-items:center;gap:2px;opacity:0;transition:opacity .15s;margin-top:2px}.cw-msg:hover .cw-msg-actions{opacity:1}.cw-action-btn{position:relative;width:24px;height:24px;border-radius:6px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .2s,background .2s;padding:0}.cw-action-btn:hover{color:#06b6d4;background:#06b6d414}.cw-copied-tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%);padding:3px 8px;border-radius:5px;background:var(--text-primary);color:var(--bg-primary);font-size:.68rem;font-weight:600;white-space:nowrap;pointer-events:none;animation:cw-fade-in-up .2s ease-out}@keyframes cw-fade-in-up{0%{opacity:0;transform:translate(-50%) translateY(4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.cw-edit-wrap{display:flex;flex-direction:column;gap:.35rem;width:100%}.cw-edit-input{width:100%;resize:none;min-height:50px;border:1.5px solid #06b6d4;border-radius:10px;padding:.5rem .7rem;font-size:.85rem;font-family:inherit;line-height:1.5;color:var(--text-primary);background:var(--bg-primary);transition:box-shadow .2s}.cw-edit-input:focus{outline:none;box-shadow:0 0 0 3px #06b6d426}.cw-edit-actions{display:flex;align-items:center;gap:.35rem;justify-content:flex-end}.cw-edit-btn{padding:.3rem .65rem;border-radius:7px;border:none;font-size:.75rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,transform .15s}.cw-edit-btn.save{background:linear-gradient(135deg,#a78bfa,#06b6d4);color:#fff}.cw-edit-btn.save:hover{filter:brightness(1.08);transform:scale(1.03)}.cw-edit-btn.cancel{background:var(--bg-tertiary, #f3f4f6);color:var(--text-muted);width:26px;height:26px;padding:0}.cw-edit-btn.cancel:hover{background:#ef44441a;color:#ef4444}.cw-file-chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.cw-file-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:6px;font-size:.7rem;font-weight:500;background:#06b6d414;color:var(--text-muted);border:1px solid rgba(6,182,212,.15)}.cw-msg.user .cw-file-chip{background:#ffffff26;color:#ffffffd9;border-color:#fff3}.cw-file-input-chips{display:flex;flex-wrap:wrap;gap:4px;padding:0 0 .25rem}.cw-file-input-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:7px;font-size:.72rem;font-weight:500;background:#06b6d414;color:var(--text-primary);border:1px solid var(--border-color)}.cw-file-input-name{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cw-file-remove{width:16px;height:16px;border-radius:50%;border:none;background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:color .15s,background .15s}.cw-file-remove:hover{color:#ef4444;background:#ef44441a}.cw-file-hidden{display:none}.cw-attach-btn{width:38px;height:38px;flex-shrink:0;border-radius:10px;border:none;background:var(--bg-tertiary);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;padding:0}.cw-attach-btn:hover{color:#06b6d4;background:#06b6d41a}.cw-attach-btn:disabled{opacity:.4;cursor:not-allowed}@media(max-width:480px){.cw-fab{bottom:20px;right:16px;width:52px;height:52px}.cw-panel{right:0;bottom:0;left:0;width:100%;max-height:65vh;border-radius:20px 20px 0 0}.cw-panel.is-open{transform:translateY(0) scale(1)}.cw-panel:not(.is-open){transform:translateY(100%) scale(1)}.cw-panel.is-fullscreen{width:100%;height:100vh;max-height:100vh;top:0;left:0;border-radius:0;transform:none!important}.cw-history-sidebar{width:100%;max-width:100%}}.landing{min-height:100vh;background:var(--bg-primary);color:var(--text-primary);display:flex;flex-direction:column;position:relative;overflow-x:hidden}.landing:before,.landing:after{content:"";position:fixed;border-radius:50%;pointer-events:none;z-index:0;filter:blur(80px);opacity:.35}.landing:before{width:700px;height:700px;background:radial-gradient(circle,rgba(99,102,241,.28) 0%,transparent 70%);top:-200px;right:-150px}.landing:after{width:500px;height:500px;background:radial-gradient(circle,rgba(139,92,246,.2) 0%,transparent 70%);bottom:5%;left:-100px}.landing-header{display:flex;align-items:center;justify-content:space-between;padding:0 2rem;height:60px;border-bottom:1px solid var(--border-color);background:color-mix(in srgb,var(--bg-secondary) 85%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);flex-shrink:0;position:sticky;top:0;z-index:100}.landing-header-left{display:flex;align-items:center;gap:1.5rem}.landing-logo{display:flex;align-items:center;gap:.45rem}.landing-logo-b{font-family:Space Grotesk,sans-serif;font-weight:700;font-size:1.2rem;letter-spacing:-.02em;color:var(--text-primary)}.landing-logo-hr{font-family:Space Grotesk,sans-serif;font-weight:700;font-size:1.2rem;letter-spacing:.02em;background:linear-gradient(135deg,#4f46e5,#7c3aed);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.landing-logo-img{width:40px;height:40px;border-radius:50%;flex-shrink:0;object-fit:contain;filter:drop-shadow(0 0 6px rgba(0,212,255,.45));transition:filter .3s ease,transform .3s cubic-bezier(.34,1.56,.64,1)}.landing-logo:hover .landing-logo-img{transform:scale(1.22);filter:drop-shadow(0 0 8px rgba(0,212,255,.9)) drop-shadow(0 0 20px rgba(0,212,255,.55)) brightness(1.2)}[data-theme=dark] .landing-logo-hr{background:linear-gradient(135deg,#818cf8,#a78bfa);-webkit-background-clip:text;background-clip:text}.landing-link-nav{font-size:.875rem;font-weight:500;color:var(--text-secondary);text-decoration:none;padding:.35rem .8rem;border-radius:8px;border:1px solid var(--border-color);background:transparent;transition:border-color .2s,color .2s,background .2s}.landing-link-nav:hover{color:var(--primary-color);border-color:var(--primary-color);background:color-mix(in srgb,var(--primary-color) 8%,transparent)}.landing-header-right{display:flex;align-items:center;gap:.75rem}.landing-lang{display:flex;border:1px solid var(--border-color);border-radius:8px;overflow:hidden;background:var(--bg-tertiary)}.landing-lang-btn{padding:.3rem .6rem;font-size:.78rem;font-weight:600;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;transition:background .2s,color .2s}.landing-lang-btn:hover{color:var(--text-primary);background:var(--bg-secondary)}.landing-lang-btn.active{background:var(--primary-color);color:var(--primary-text)}.landing-btn-icon{width:36px;height:36px;padding:0;border-radius:9px;border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:border-color .2s,box-shadow .2s}.landing-btn-icon:hover{border-color:var(--primary-color);box-shadow:0 0 12px #6366f140}.landing-btn-signin{padding:.45rem 1.1rem;border-radius:9px;border:none;background:var(--primary-color);color:var(--primary-text);font-weight:700;font-size:.875rem;cursor:pointer;transition:box-shadow .2s,filter .2s,transform .2s;font-family:inherit}.landing-btn-signin:hover:not(:disabled){filter:brightness(1.08);box-shadow:0 0 20px #6366f173;transform:translateY(-1px)}.landing-btn-signin:disabled{opacity:.55;cursor:not-allowed}.landing-main{flex:1;max-width:1140px;margin:0 auto;padding:3rem 2rem 4rem;width:100%;position:relative;z-index:1}.landing-hero{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:center;margin-bottom:5rem;padding:1rem 0}.landing-hero-text{display:flex;flex-direction:column;align-items:flex-start}.landing-title{margin:0 0 1rem;font-size:clamp(2.2rem,4.5vw,3.5rem);font-weight:800;line-height:1.13;letter-spacing:-.03em;color:#0f2385;display:block;cursor:default}[data-theme=dark] .landing-title{color:#c7d0ff}.landing-title{animation:title-in .9s cubic-bezier(.22,1,.36,1) both}@keyframes title-in{0%{opacity:0;transform:translateY(18px);filter:blur(4px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}.landing-subtitle{margin:0 0 2rem;font-size:1.075rem;color:var(--text-secondary);line-height:1.65;max-width:500px;animation:title-in .9s .1s cubic-bezier(.22,1,.36,1) both}.landing-try-now{display:inline-flex;align-items:center;gap:.5rem;padding:.85rem 2rem;border-radius:12px;border:none;font-size:1rem;font-weight:700;font-family:inherit;cursor:pointer;background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff;box-shadow:0 6px 24px #4f46e566,0 1px 4px #0000001a;transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s,filter .2s;animation:title-in .9s .2s cubic-bezier(.22,1,.36,1) both;position:relative;overflow:hidden}.landing-try-now:after{content:"";position:absolute;top:0;left:-80%;width:60%;height:100%;background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.3) 50%,transparent 70%);pointer-events:none}.landing-try-now:hover:not(:disabled):after{left:140%;transition:left .5s ease}.landing-try-now:hover:not(:disabled){transform:translateY(-3px) scale(1.02);box-shadow:0 12px 32px #4f46e580;filter:brightness(1.06)}.landing-try-now:active:not(:disabled){transform:translateY(0) scale(.99)}.landing-try-now:disabled{opacity:.55;cursor:not-allowed}.landing-hero-visual{position:relative;height:380px;animation:title-in .9s .15s cubic-bezier(.22,1,.36,1) both}.landing-dash-window{width:100%;height:100%;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:20px;overflow:hidden;box-shadow:0 2px 4px #0000000a,0 12px 32px #0000001a,0 40px 80px #4f46e51a}.landing-dash-titlebar{display:flex;align-items:center;gap:.75rem;padding:.625rem 1rem;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color)}.landing-dash-dots{display:flex;gap:5px;flex-shrink:0}.landing-dash-dots i{display:block;width:10px;height:10px;border-radius:50%;font-style:normal}.landing-dash-dots i:nth-child(1){background:#ff5f57}.landing-dash-dots i:nth-child(2){background:#febc2e}.landing-dash-dots i:nth-child(3){background:#28c840}.landing-dash-tabname{font-size:.75rem;font-weight:600;color:var(--text-secondary);flex:1}.landing-dash-pills{display:flex;gap:.375rem}.ldp{font-size:.62rem;font-weight:700;padding:.18rem .5rem;border-radius:20px;letter-spacing:.04em}.ldp-green{background:#10b98126;color:#10b981;border:1px solid rgba(16,185,129,.3)}.landing-dash-body{display:flex;height:calc(100% - 40px)}.landing-dash-sidebar{width:46px;border-right:1px solid var(--border-color);background:var(--bg-primary);display:flex;flex-direction:column;align-items:center;padding:.875rem 0;gap:.375rem}.landing-dash-navitem{width:30px;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--text-muted);cursor:default;transition:background .2s,color .2s}.landing-dash-navitem.active{background:var(--primary-color);color:#fff}.landing-dash-navitem:not(.active):hover{background:var(--bg-tertiary);color:var(--text-primary)}.landing-dash-content{flex:1;padding:.875rem;display:flex;flex-direction:column;gap:.625rem;overflow:hidden}.landing-dash-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.landing-dash-metric{border-radius:10px;padding:.6rem .75rem;display:flex;flex-direction:column;gap:1px}.landing-dash-metric.m1{background:#6366f11a;border:1px solid rgba(99,102,241,.2)}.landing-dash-metric.m2{background:#10b98114;border:1px solid rgba(16,185,129,.2)}.landing-dash-metric.m3{background:#f59e0b14;border:1px solid rgba(245,158,11,.2)}.ldm-label{font-size:.62rem;color:var(--text-secondary);font-weight:500}.ldm-value{font-size:1.2rem;font-weight:800;color:var(--text-primary);line-height:1.1}.ldm-trend{font-size:.58rem;color:var(--text-muted);font-weight:600}.ldm-trend.up{color:#10b981}.landing-dash-chart{display:flex;align-items:flex-end;gap:5px;padding:.625rem .75rem;background:var(--bg-primary);border-radius:10px;border:1px solid var(--border-color);height:72px}.landing-dash-bar{flex:1;border-radius:4px 4px 0 0;background:linear-gradient(to top,#6366f1,#818cf8);min-height:4px;transition:filter .2s}.landing-dash-bar:nth-child(2n){background:linear-gradient(to top,#7c3aed,#a78bfa)}.landing-dash-bar.highlight{background:linear-gradient(to top,#4f46e5,#818cf8);box-shadow:0 0 10px #6366f180}.landing-dash-rows{display:flex;flex-direction:column;gap:.35rem}.landing-dash-row{display:flex;align-items:center;gap:.5rem;padding:.4rem .5rem;background:var(--bg-primary);border-radius:8px;border:1px solid var(--border-color)}.landing-dash-avatar{width:22px;height:22px;border-radius:50%;flex-shrink:0}.landing-dash-avatar.av1{background:linear-gradient(135deg,#6366f1,#8b5cf6)}.landing-dash-avatar.av2{background:linear-gradient(135deg,#0ea5e9,#2563eb)}.landing-dash-avatar.av3{background:linear-gradient(135deg,#f59e0b,#ef4444)}.landing-dash-rowlines{flex:1;display:flex;flex-direction:column;gap:3px}.ldl{height:5px;border-radius:3px;background:var(--bg-tertiary)}.ldl.w70{width:70%}.ldl.w45{width:45%}.landing-dash-status{width:8px;height:8px;border-radius:50%;flex-shrink:0}.landing-dash-status.green{background:#10b981;box-shadow:0 0 6px #10b981}.landing-dash-status.blue{background:#6366f1;box-shadow:0 0 6px #6366f1}.landing-dash-status.orange{background:#f59e0b;box-shadow:0 0 6px #f59e0b}.landing-float{position:absolute;display:flex;align-items:center;gap:.5rem;padding:.45rem .9rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:40px;font-size:.78rem;font-weight:600;color:var(--text-primary);box-shadow:0 4px 20px #00000024,0 1px 4px #0000000f;white-space:nowrap;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.lf1{bottom:-18px;left:-24px;animation:float-bob 3.5s ease-in-out infinite alternate}.lf2{top:-18px;right:-18px;animation:float-bob 4s 1s ease-in-out infinite alternate-reverse}.lf3{top:50%;right:-28px;transform:translateY(-50%);animation:float-bob 5s .5s ease-in-out infinite alternate}@keyframes float-bob{0%{transform:translateY(0)}to{transform:translateY(-10px)}}.lf3{top:50%;animation:float-bob-middle 4.5s .3s ease-in-out infinite alternate}@keyframes float-bob-middle{0%{transform:translateY(-50%)}to{transform:translateY(calc(-50% - 10px))}}.lf-icon{font-size:.95rem;line-height:1}.landing-error-card{padding:1rem 1.25rem;margin-bottom:2rem;border:1px solid var(--error-border);border-radius:14px;background:var(--error-bg)}.landing-error-card p{margin:0 0 .4rem;color:var(--error-text);font-size:.9rem;line-height:1.5}.landing-error-card p:last-child{margin-bottom:0}.landing-error-hint{font-size:.8rem!important;color:var(--text-secondary)!important}.landing-error-hint strong{word-break:break-all}.landing-apps{margin-bottom:3.5rem}.landing-apps-badge{font-size:clamp(1.2rem,3vw,1.6rem);font-weight:800;letter-spacing:.07em;color:var(--primary-color);margin-bottom:.6rem;text-align:center;transition:transform .3s ease}.landing-apps-badge.highlight-played{animation:hepsi-highlight .9s ease-out forwards}@keyframes hepsi-highlight{0%{transform:scale(1);text-shadow:none}25%{transform:scale(1.07);text-shadow:0 0 22px rgba(99,102,241,.5)}to{transform:scale(1);text-shadow:none}}.landing-apps-heading{margin:0 0 .5rem;font-size:1.5rem;font-weight:700;color:var(--text-primary);text-align:center}.landing-apps-intro{margin:0 0 1.75rem;font-size:.95rem;color:var(--text-secondary);line-height:1.6;text-align:center;max-width:640px;margin-left:auto;margin-right:auto}.landing-tabs{border:1px solid var(--border-color);border-radius:20px;overflow:hidden;background:var(--bg-secondary);box-shadow:0 4px 24px #0000000f}.landing-tabbar{display:flex;flex-wrap:wrap;padding:.625rem .625rem 0;border-bottom:1px solid var(--border-color);background:var(--bg-primary);gap:2px}.landing-tab-btn{display:inline-flex;align-items:center;gap:.45rem;padding:.55rem .95rem;border:none;border-radius:10px 10px 0 0;font-size:.875rem;font-weight:600;background:transparent;color:var(--text-secondary);cursor:pointer;transition:background .2s,color .2s;font-family:inherit}.landing-tab-btn:hover{color:var(--text-primary);background:color-mix(in srgb,var(--tab-color, #6366f1) 10%,transparent)}.landing-tab-btn.landing-tab-personel{--tab-color: #0d9488}.landing-tab-btn.landing-tab-bordro{--tab-color: #2563eb}.landing-tab-btn.landing-tab-performans{--tab-color: #7c3aed}.landing-tab-btn.landing-tab-aday-takip{--tab-color: #059669}.landing-tab-btn.landing-tab-vardiya{--tab-color: #ea580c}.landing-tab-btn.landing-tab-ik-analitigi{--tab-color: #4f46e5}.landing-tab-btn.landing-tab-ucret{--tab-color: #c2410c}.landing-tab-btn.is-active{background:color-mix(in srgb,var(--tab-color) 14%,var(--bg-secondary));color:var(--tab-color);border-bottom:2px solid var(--tab-color);margin-bottom:-1px}.landing-tab-btn .landing-tab-svg{flex-shrink:0;color:inherit}.landing-tab-btn:not(.is-active) .landing-tab-svg{color:var(--text-muted)}.landing-tab-panels{padding:2rem;transition:background .3s ease}.landing-panels-personel{--panels-color: #0d9488}.landing-panels-bordro{--panels-color: #2563eb}.landing-panels-performans{--panels-color: #7c3aed}.landing-panels-aday-takip{--panels-color: #059669}.landing-panels-vardiya{--panels-color: #ea580c}.landing-panels-ik-analitigi{--panels-color: #4f46e5}.landing-panels-ucret{--panels-color: #c2410c}.landing-tab-panels[class*=landing-panels-]{background:color-mix(in srgb,var(--panels-color) 5%,var(--bg-secondary))}.landing-panel-personel{--panel-color: #0d9488}.landing-panel-bordro{--panel-color: #2563eb}.landing-panel-performans{--panel-color: #7c3aed}.landing-panel-aday-takip{--panel-color: #059669}.landing-panel-vardiya{--panel-color: #ea580c}.landing-panel-ik-analitigi{--panel-color: #4f46e5}.landing-panel-ucret{--panel-color: #c2410c}.landing-tab-panel{display:none}.landing-tab-panel.is-active{display:block;animation:panel-fade-in .3s ease-out}@keyframes panel-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.landing-panel-content{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:center}.landing-panel-text{min-width:0}.landing-panel-badge{display:inline-block;font-size:.68rem;font-weight:700;letter-spacing:.06em;margin-bottom:.6rem}.landing-badge-personel{color:#0d9488}.landing-badge-bordro{color:#2563eb}.landing-badge-performans{color:#7c3aed}.landing-badge-aday-takip{color:#059669}.landing-badge-vardiya{color:#ea580c}.landing-badge-ik-analitigi{color:#4f46e5}.landing-badge-ucret{color:#c2410c}.landing-panel-title{margin:0 0 1rem;font-size:1.3rem;font-weight:700;color:var(--text-primary);line-height:1.3}.landing-panel-bullets{margin:0 0 1.5rem;padding-left:0;list-style:none}.landing-panel-bullets li{display:flex;align-items:flex-start;gap:.6rem;margin-bottom:.6rem;font-size:.95rem;color:var(--text-secondary);line-height:1.55}.landing-bullet-icon{flex-shrink:0;width:7px;height:7px;border-radius:50%;background:var(--panel-color, var(--primary-color));margin-top:.48rem}.landing-panel-cta{display:inline-flex;align-items:center;gap:.5rem;padding:.65rem 1.35rem;border:none;border-radius:10px;font-size:.95rem;font-weight:700;color:#fff;cursor:pointer;font-family:inherit;transition:filter .2s,transform .2s,box-shadow .2s}.landing-panel-cta:disabled{opacity:.55;cursor:not-allowed}.landing-panel-cta:not(:disabled):hover{filter:brightness(1.1);transform:translateY(-2px);box-shadow:0 6px 18px #0000002e}.landing-cta-personel{background:#0d9488}.landing-cta-bordro{background:#2563eb}.landing-cta-performans{background:#7c3aed}.landing-cta-aday-takip{background:#059669}.landing-cta-vardiya{background:#ea580c}.landing-cta-ik-analitigi{background:#4f46e5}.landing-cta-ucret{background:#c2410c}.landing-cta-arrow{display:inline-flex}.landing-panel-mockup{min-height:220px;display:flex;align-items:center;justify-content:center}.landing-mockup-placeholder{width:100%;max-width:340px;height:220px;border-radius:14px;background:var(--bg-primary);border:1px solid var(--border-color);overflow:hidden;position:relative;box-shadow:0 4px 20px #00000014}.landing-mockup-placeholder:before{content:"";display:block;height:28px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);background-image:radial-gradient(circle,#ff5f57 5px,transparent 5px),radial-gradient(circle,#febc2e 5px,transparent 5px),radial-gradient(circle,#28c840 5px,transparent 5px);background-repeat:no-repeat;background-position:10px center,24px center,38px center;background-size:10px 10px,10px 10px,10px 10px}.landing-mockup-placeholder:after{content:"";position:absolute;top:44px;left:12px;right:12px;height:6px;background:linear-gradient(90deg,color-mix(in srgb,var(--panel-color, #6366f1) 25%,var(--bg-tertiary)) 0%,var(--bg-tertiary) 100%);border-radius:3px;box-shadow:0 18px 0 var(--bg-tertiary),0 28px 0 var(--bg-tertiary),0 38px 0 var(--bg-tertiary),0 48px 0 var(--bg-tertiary),0 58px 0 var(--bg-tertiary),0 68px 0 var(--bg-tertiary),0 78px 0 var(--bg-tertiary),0 88px 0 var(--bg-tertiary),0 98px 0 var(--bg-tertiary),0 108px 0 var(--bg-tertiary),0 118px 0 var(--bg-tertiary),0 128px 0 var(--bg-tertiary),0 138px 0 var(--bg-tertiary),0 148px 0 var(--bg-tertiary)}.landing-onboard{margin-bottom:3.5rem;padding:3rem 2.5rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:24px;box-shadow:0 4px 24px #0000000d}.landing-onboard-header{text-align:center;margin-bottom:2.75rem}.landing-onboard-badge{display:inline-flex;align-items:center;gap:.4rem;font-size:.75rem;font-weight:700;letter-spacing:.12em;color:var(--primary-color);margin-bottom:1rem;padding:.3rem .75rem;border-radius:20px;background:color-mix(in srgb,var(--primary-color) 10%,transparent);border:1px solid color-mix(in srgb,var(--primary-color) 25%,transparent)}.landing-onboard-title{margin:0 0 1rem;font-size:clamp(1.5rem,3.5vw,2.2rem);font-weight:800;letter-spacing:-.02em;line-height:1.25;color:#0f2385;white-space:pre-line}[data-theme=dark] .landing-onboard-title{color:#c7d0ff}.landing-onboard-desc{font-size:1rem;color:var(--text-secondary);line-height:1.65;max-width:600px;margin:0 auto}.landing-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.landing-step{display:flex;flex-direction:column;align-items:center;text-align:center;padding:1.75rem 1.25rem;border-radius:18px;border:1px solid var(--border-color);background:var(--bg-primary);transition:transform .25s,box-shadow .25s,border-color .25s}.landing-step:hover{transform:translateY(-5px);border-color:var(--primary-color);box-shadow:0 14px 36px #6366f11f}.landing-step-visual{margin-bottom:1.25rem;position:relative;display:inline-flex}.landing-step-icon-wrap{display:flex;align-items:center;justify-content:center;width:80px;height:80px;border-radius:22px;color:#fff;position:relative;transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s ease}.landing-step-icon-wrap:before{content:"";position:absolute;inset:-6px;border-radius:28px;opacity:.3;filter:blur(10px);background:inherit;z-index:-1;transition:opacity .3s}.landing-step:hover .landing-step-icon-wrap{transform:translateY(-4px) scale(1.04)}.landing-step:hover .landing-step-icon-wrap:before{opacity:.55}.landing-step-icon-1{background:linear-gradient(135deg,#34d399,#059669)}.landing-step-icon-2{background:linear-gradient(135deg,#3b82f6,#4f46e5)}.landing-step-icon-3{background:linear-gradient(135deg,#8b5cf6,#6d28d9)}.landing-step-num{position:absolute;top:-8px;right:-8px;width:22px;height:22px;border-radius:50%;background:var(--bg-secondary);border:2px solid var(--border-color);font-size:.7rem;font-weight:900;color:var(--primary-color);display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #0000001f;z-index:1}.landing-step-body{flex:1}.landing-step-title{margin:0 0 .5rem;font-size:1.05rem;font-weight:700;color:var(--text-primary)}.landing-step-desc{margin:0;font-size:.875rem;color:var(--text-secondary);line-height:1.55}.landing-cta{padding:2.5rem;border:1px solid var(--border-color);border-radius:24px;background:var(--bg-secondary);text-align:center;margin-bottom:2rem;background:linear-gradient(135deg,color-mix(in srgb,#4f46e5 8%,var(--bg-secondary)),color-mix(in srgb,#7c3aed 6%,var(--bg-secondary)))}.landing-cta-text{margin:0 0 1.5rem;font-size:1rem;color:var(--text-secondary)}.landing-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem}.landing-btn-primary{padding:.85rem 2rem;border-radius:12px;border:none;background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff;font-weight:700;font-size:1rem;cursor:pointer;font-family:inherit;transition:box-shadow .2s,filter .2s,transform .2s;box-shadow:0 4px 18px #4f46e559}.landing-btn-primary:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-2px);box-shadow:0 8px 28px #4f46e580}.landing-btn-primary:disabled{opacity:.55;cursor:not-allowed}.landing-footer{padding:1.25rem 2rem;border-top:1px solid var(--border-color);background:var(--bg-secondary);display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:1.25rem;position:relative;z-index:1}.landing-footer-link{font-size:.875rem;font-weight:500;color:var(--text-secondary);text-decoration:none;transition:color .2s}.landing-footer-link:hover{color:var(--primary-color)}.landing-footer-copy{font-size:.8rem;color:var(--text-muted)}@media(max-width:900px){.landing-hero{grid-template-columns:1fr;gap:2.5rem;text-align:center}.landing-hero-text{align-items:center}.landing-hero-visual{height:300px;max-width:480px;margin:0 auto;width:100%}.lf3{display:none}}@media(max-width:768px){.landing-header{flex-wrap:wrap;height:auto;padding:.75rem 1rem;gap:.5rem}.landing-header-left{gap:.75rem}.landing-header-right{margin-left:auto;gap:.5rem}.landing-link-nav{font-size:.8rem;padding:.3rem .6rem}.landing-main{padding:2rem 1.25rem 3rem}.landing-hero{margin-bottom:3.5rem}.landing-title{font-size:clamp(1.85rem,7vw,2.75rem)}.landing-subtitle{font-size:.95rem}.landing-try-now{padding:.75rem 1.6rem;font-size:.95rem}.landing-apps{margin-bottom:2.5rem}.landing-apps-heading{font-size:1.25rem}.landing-tabbar{gap:.2rem}.landing-tab-btn{padding:.5rem .7rem;font-size:.8rem}.landing-tab-panels{padding:1.25rem}.landing-panel-content{grid-template-columns:1fr;gap:1.5rem}.landing-panel-mockup{min-height:160px;order:-1}.landing-mockup-placeholder{max-width:100%;height:170px}.landing-panel-title{font-size:1.1rem}.landing-onboard{padding:1.75rem 1.25rem;border-radius:18px}.landing-onboard-title{font-size:clamp(1.25rem,5vw,1.75rem)}.landing-onboard-desc{font-size:.9rem}.landing-steps{grid-template-columns:1fr;gap:1rem}.landing-step{flex-direction:row;text-align:left;padding:1.125rem;gap:1rem}.landing-step-visual{margin-bottom:0;flex-shrink:0}.landing-step-icon-wrap{width:58px;height:58px;border-radius:14px}.landing-step-icon-wrap svg{width:26px;height:26px}.landing-cta{padding:1.75rem 1.25rem;border-radius:18px}.landing-actions{flex-direction:column;align-items:stretch}.landing-btn-primary{width:100%;text-align:center}.landing-footer{flex-direction:column;gap:.5rem;padding:1rem;text-align:center}.lf1,.lf2{display:none}}@media(max-width:480px){.landing-header-left{width:100%;justify-content:space-between}.landing-header-right{width:100%;justify-content:flex-end}.landing-btn-signin{font-size:.8rem;padding:.4rem .9rem}.landing-lang-btn{font-size:.7rem;padding:.25rem .5rem}.landing-tab-btn span:last-child{max-width:65px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.landing-tab-btn .landing-tab-svg{width:14px;height:14px}.landing-panel-cta{width:100%;justify-content:center}.landing-onboard-header{margin-bottom:1.5rem}.landing-step-icon-wrap{width:56px;height:56px;border-radius:14px}.landing-step-icon-wrap svg{width:26px;height:26px}.landing-step{padding:.875rem;gap:.75rem}}@media(max-width:360px){.landing-main{padding:1.25rem .875rem 2rem}.landing-title{font-size:1.65rem}.landing-onboard{padding:1.25rem .875rem}}.reveal-item{opacity:0;transform:translateY(32px);transition:opacity .65s cubic-bezier(.22,1,.36,1),transform .65s cubic-bezier(.22,1,.36,1)}.reveal-item.in-view{opacity:1;transform:translateY(0)}.lm-frame{width:100%;max-width:340px;height:225px;border-radius:14px;border:1px solid var(--border-color);overflow:hidden;box-shadow:0 6px 28px #0000001a,0 1px 4px #0000000f;background:var(--bg-primary);display:flex;flex-direction:column;transition:box-shadow .25s,transform .25s}.lm-frame:hover{box-shadow:0 12px 36px #00000024;transform:translateY(-3px)}.lm-titlebar{display:flex;align-items:center;padding:0 10px;height:26px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);flex-shrink:0}.lm-dots{display:flex;gap:5px}.lm-dots i{display:block;width:8px;height:8px;border-radius:50%;font-style:normal}.lm-dots i:nth-child(1){background:#ff5f57}.lm-dots i:nth-child(2){background:#febc2e}.lm-dots i:nth-child(3){background:#28c840}.lm-body{flex:1;overflow:hidden;padding:7px 9px;display:flex;flex-direction:column;gap:4px}.lm-searchbar{display:flex;align-items:center;gap:5px;padding:4px 7px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-secondary);margin-bottom:2px;color:var(--text-muted)}.lm-thead{display:flex;align-items:center;gap:5px;padding:2px 0 3px;border-bottom:1px solid var(--border-color);margin-bottom:1px}.lm-thead span{font-size:.5rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.lm-thead span:first-child{flex:2}.lm-thead span:nth-child(2){flex:1.5}.lm-thead span:last-child{flex:1}.lm-row{display:flex;align-items:center;gap:5px;padding:3px 0;border-bottom:1px solid var(--border-color)}.lm-row:last-child{border-bottom:none}.lm-av{width:22px;height:22px;border-radius:50%;flex-shrink:0}.lm-av-sm{width:16px;height:16px}.lm-av-p{background:linear-gradient(135deg,#6366f1,#8b5cf6)}.lm-av-b{background:linear-gradient(135deg,#0ea5e9,#2563eb)}.lm-av-o{background:linear-gradient(135deg,#f59e0b,#ef4444)}.lm-rowtext{flex:2;display:flex;flex-direction:column;gap:2px}.lm-line{height:5px;border-radius:3px;background:var(--bg-tertiary)}.lm-muted{background:color-mix(in srgb,var(--bg-tertiary) 60%,transparent)}.lm-w45{width:45%}.lm-w55{width:55%}.lm-w60{width:60%}.lm-w65{width:65%}.lm-w70{width:70%}.lm-w75{width:75%}.lm-w80{width:80%}.lm-deptbar{flex:1.5;height:5px;border-radius:3px;background:linear-gradient(90deg,var(--panel-color, #6366f1) 0%,color-mix(in srgb,var(--panel-color, #6366f1) 40%,var(--bg-tertiary)) 100%);opacity:.7}.lm-tag{font-size:.5rem;font-weight:700;padding:2px 5px;border-radius:6px;white-space:nowrap;flex-shrink:0}.lm-tag-green{background:#10b98124;color:#10b981}.lm-tag-blue{background:#6366f124;color:#6366f1}.lm-tag-orange{background:#f59e0b24;color:#f59e0b}.lm-statrow{display:flex;gap:4px;margin-bottom:3px}.lm-stat{flex:1;padding:4px 5px;border-radius:7px;display:flex;flex-direction:column;gap:1px}.lm-stat-blue{background:#2563eb1a;border:1px solid rgba(37,99,235,.2)}.lm-stat-green{background:#10b9811a;border:1px solid rgba(16,185,129,.2)}.lm-stat-amber{background:#f59e0b1a;border:1px solid rgba(245,158,11,.2)}.lm-stat-val{font-size:.6rem;font-weight:800;color:var(--text-primary);line-height:1.1}.lm-stat-lbl{font-size:.48rem;color:var(--text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.lm-amount{font-size:.55rem;font-weight:700;color:var(--text-primary);white-space:nowrap;flex-shrink:0}.lm-check{font-size:.6rem;font-weight:700;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.lm-check-ok{background:#10b98126;color:#10b981}.lm-check-wait{background:#f59e0b26;color:#f59e0b}.lm-perf-top{display:flex;align-items:center;gap:10px;flex:1}.lm-score-ring{position:relative;flex-shrink:0;display:flex;align-items:center;justify-content:center}.lm-score-num{position:absolute;font-size:.75rem;font-weight:900;color:var(--text-primary)}.lm-perf-bars{flex:1;display:flex;flex-direction:column;gap:5px}.lm-pbar-row{display:flex;align-items:center;gap:4px}.lm-pbar-lbl{font-size:.48rem;color:var(--text-muted);width:52px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}.lm-pbar-track{flex:1;height:5px;background:var(--bg-tertiary);border-radius:3px;overflow:hidden}.lm-pbar-fill{height:100%;background:linear-gradient(90deg,#7c3aed,#a78bfa);border-radius:3px}.lm-pbar-pct{font-size:.48rem;font-weight:700;color:var(--text-secondary);width:18px;text-align:right;flex-shrink:0}.lm-kanban{display:flex;gap:5px;flex:1;overflow:hidden}.lm-kb-col{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0}.lm-kb-head{font-size:.48rem;font-weight:700;padding:3px 5px;border-radius:5px;display:flex;align-items:center;justify-content:space-between}.lm-kb-head span{font-size:.42rem;padding:1px 4px;border-radius:8px;background:#ffffff40}.lm-kb-green{background:#10b98124;color:#059669}.lm-kb-blue{background:#6366f124;color:#4f46e5}.lm-kb-purple{background:#8b5cf624;color:#7c3aed}.lm-kb-card{display:flex;align-items:center;gap:4px;padding:3px 4px;border-radius:5px;border:1px solid var(--border-color);background:var(--bg-secondary)}.lm-kbc-green{border-color:#10b98133}.lm-kbc-blue{border-color:#6366f133}.lm-kbc-purple{border-color:#8b5cf633}.lm-shifts{display:flex;flex-direction:column;gap:3px;flex:1}.lm-sh-head,.lm-sh-row{display:flex;align-items:center;gap:3px}.lm-sh-name{width:18px;flex-shrink:0}.lm-sh-day{flex:1;font-size:.45rem;font-weight:700;color:var(--text-muted);text-align:center;text-transform:uppercase;letter-spacing:.03em}.lm-sh-cell{flex:1;height:16px;border-radius:4px}.lm-sh-empty{background:var(--bg-tertiary);opacity:.4}.lm-sh-block{border-radius:4px}.lm-shb-b{background:linear-gradient(135deg,#6366f1,#818cf8)}.lm-shb-g{background:linear-gradient(135deg,#10b981,#34d399)}.lm-shb-o{background:linear-gradient(135deg,#f59e0b,#fbbf24)}.lm-metrics-row{display:flex;gap:4px;margin-bottom:4px}.lm-kpi{flex:1;padding:4px 5px;border-radius:7px;display:flex;flex-direction:column;gap:1px}.lm-kpi-red{background:#ef44441a;border:1px solid rgba(239,68,68,.2)}.lm-kpi-blue{background:#2563eb1a;border:1px solid rgba(37,99,235,.2)}.lm-kpi-green{background:#10b9811a;border:1px solid rgba(16,185,129,.2)}.lm-kpi-val{font-size:.62rem;font-weight:800;color:var(--text-primary)}.lm-kpi-lbl{font-size:.46rem;color:var(--text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.lm-area{flex:1;border-radius:7px;border:1px solid var(--border-color);background:var(--bg-secondary);overflow:hidden;min-height:50px}.lm-row-ucret{gap:4px}.lm-ucurr,.lm-unext{font-size:.5rem;font-weight:600;color:var(--text-secondary);white-space:nowrap;flex-shrink:0}.lm-unext{color:var(--text-primary);font-weight:700}.lm-upct{font-size:.48rem;font-weight:700;padding:1px 4px;border-radius:5px;white-space:nowrap;flex-shrink:0}.lm-upct-green{background:#10b98124;color:#10b981}.lm-upct-gray{background:var(--bg-tertiary);color:var(--text-muted)}.dashboard{max-width:1000px;margin:0 auto}.dashboard-hero{border-radius:20px;padding:2.25rem 2.5rem;margin-bottom:2rem;background:linear-gradient(135deg,#4f46e5,#7c3aed 55%,#a855f7);position:relative;overflow:hidden;box-shadow:0 8px 32px #4f46e559}.dashboard-hero:before,.dashboard-hero:after{content:"";position:absolute;border-radius:50%;pointer-events:none;opacity:.12}.dashboard-hero:before{width:280px;height:280px;background:#fff;top:-80px;right:-60px}.dashboard-hero:after{width:180px;height:180px;background:#fff;bottom:-60px;right:120px}.dashboard-title{margin:0 0 .5rem;font-size:clamp(1.4rem,3vw,1.9rem);font-weight:800;letter-spacing:-.02em;color:#fff;position:relative;z-index:1}.dashboard-subtitle{margin:0;font-size:.975rem;color:#ffffffd1;line-height:1.6;max-width:540px;position:relative;z-index:1}.dashboard-subtitle strong{color:#fff;font-weight:700}.dashboard-intro{margin-bottom:2rem;padding:1.5rem 1.75rem}.dashboard-intro h2{margin:0 0 .625rem;font-size:1.05rem;font-weight:700;color:var(--text-primary)}.dashboard-intro-text{margin:0;color:var(--text-secondary);line-height:1.65;font-size:.925rem}.dashboard-grid{margin-bottom:2rem}.dashboard-section-title{margin:0 0 1.1rem;font-size:1rem;font-weight:700;color:var(--text-primary);display:flex;align-items:center;gap:.5rem}.dashboard-section-title:after{content:"";flex:1;height:1px;background:var(--border-color)}.dashboard-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem}.dashboard-card{display:flex;flex-direction:column;text-decoration:none;color:inherit;border-radius:16px;border:1px solid var(--border-color);padding:1.375rem;background:var(--bg-secondary);box-shadow:var(--shadow-sm);transition:transform .2s cubic-bezier(.34,1.4,.64,1),box-shadow .2s ease,border-color .2s ease;position:relative;overflow:hidden}.dashboard-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--card-accent, #4f46e5),var(--card-accent2, #7c3aed));opacity:0;transition:opacity .2s}.dashboard-card:hover:before{opacity:1}.dashboard-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--primary-color)}.dashboard-card-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;margin-bottom:1rem;color:var(--card-accent, var(--primary-color));background:color-mix(in srgb,var(--card-accent, var(--primary-color)) 12%,transparent);transition:transform .2s,background .2s}.dashboard-card-icon svg{display:block}.dashboard-card:hover .dashboard-card-icon{transform:scale(1.1);background:color-mix(in srgb,var(--card-accent, var(--primary-color)) 20%,transparent)}.dashboard-card h3{margin:0 0 .4rem;font-size:.975rem;font-weight:700;color:var(--text-primary)}.dashboard-card p{margin:0;font-size:.84rem;color:var(--text-secondary);line-height:1.5;flex:1}.dashboard-card:nth-child(1){--card-accent: #4f46e5;--card-accent2: #7c3aed}.dashboard-card:nth-child(2){--card-accent: #0d9488;--card-accent2: #059669}.dashboard-card:nth-child(3){--card-accent: #2563eb;--card-accent2: #0ea5e9}.dashboard-card:nth-child(4){--card-accent: #d97706;--card-accent2: #ea580c}.dashboard-card:nth-child(5){--card-accent: #7c3aed;--card-accent2: #a855f7}.dashboard-card:nth-child(6){--card-accent: #c2410c;--card-accent2: #d97706}.dashboard-card:nth-child(7){--card-accent: #16a34a;--card-accent2: #0d9488}.dashboard-card:nth-child(8){--card-accent: #4338ca;--card-accent2: #6366f1}@media(max-width:768px){.dashboard-hero{padding:1.75rem 1.5rem;border-radius:16px}.dashboard-cards{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem}.dashboard-card{padding:1.125rem}}@media(max-width:480px){.dashboard-cards{grid-template-columns:1fr 1fr}}.emp-page h2{margin:0}.emp-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-bottom:1.25rem}.emp-header-left{display:flex;align-items:baseline;gap:.75rem}.emp-count{font-size:.85rem;color:var(--text-muted, #64748b)}.emp-header-right{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.emp-search{display:flex;align-items:center;gap:.5rem;padding:.5rem .85rem;border-radius:10px;border:1px solid var(--border-color, #e2e8f0);background:var(--bg-secondary);transition:border-color .2s}.emp-search:focus-within{border-color:var(--primary, #6366f1)}.emp-search svg{color:var(--text-muted);flex-shrink:0}.emp-search input{border:none;background:transparent;outline:none;font-size:.88rem;color:var(--text-primary);width:160px;font-family:inherit}.emp-view-toggle{display:flex;border:1px solid var(--border-color, #e2e8f0);border-radius:10px;overflow:hidden}.emp-view-toggle button{border:none;background:var(--bg-secondary);padding:.5rem .65rem;cursor:pointer;color:var(--text-muted);transition:all .2s;display:flex;align-items:center}.emp-view-toggle button.active{background:var(--primary, #6366f1);color:#fff}.emp-view-toggle button:not(.active):hover{background:var(--bg-tertiary)}.emp-add-btn{font-size:.88rem!important;padding:.55rem 1rem!important}.emp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.emp-card{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.5rem 1rem 1.25rem;border-radius:14px;border:1px solid var(--border-color, #e2e8f0);background:var(--bg-secondary);text-decoration:none;color:inherit;transition:box-shadow .2s,border-color .2s,transform .15s;box-shadow:var(--shadow-sm)}.emp-card:hover{border-color:var(--primary, #6366f1);box-shadow:0 4px 20px #6366f121;transform:translateY(-2px)}.emp-card-avatar{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700;color:#fff;letter-spacing:1px;flex-shrink:0}.emp-card-avatar--photo{object-fit:cover;border:3px solid var(--bg-secondary);box-shadow:0 2px 8px #0000001f}.emp-card-name{font-weight:600;font-size:.95rem;text-align:center;color:var(--text-primary)}.emp-card-title{font-size:.82rem;color:var(--primary, #6366f1);font-weight:500;text-align:center}.emp-card-email{font-size:.78rem;color:var(--text-muted, #64748b);text-align:center;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.emp-card-dept{font-size:.78rem;color:var(--text-secondary);text-align:center}.emp-card--readonly{cursor:default;padding:1.25rem 1rem}.emp-card--readonly:hover{transform:none;border-color:var(--border-color, #e2e8f0);box-shadow:var(--shadow-sm)}.emp-list-wrap{padding:0!important;overflow-x:auto}.emp-table{width:100%;border-collapse:collapse;font-size:.9rem}.emp-table th{text-align:left;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted, #64748b);padding:.75rem 1rem;border-bottom:2px solid var(--border-color, #e2e8f0)}.emp-table td{padding:.7rem 1rem;border-bottom:1px solid var(--border-color, #e2e8f0)}.emp-table tbody tr:hover{background:var(--bg-hover, rgba(99,102,241,.04))}.emp-table tbody tr:last-child td{border-bottom:none}.emp-list-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;color:#fff;letter-spacing:1px}.emp-list-avatar--photo{object-fit:cover;border:2px solid var(--bg-secondary);box-shadow:0 1px 4px #0000001a}.emp-list-name{font-weight:600}.emp-list-email{color:var(--text-muted);font-size:.85rem}.emp-role-badge{display:inline-block;padding:.2rem .6rem;border-radius:999px;font-size:.78rem;font-weight:600}.emp-role-badge.role--manager{background:#ede9fe;color:#6d28d9}.emp-role-badge.role--owner{background:#fef3c7;color:#92400e}.emp-role-badge.role--employee{background:#e0f2fe;color:#0369a1}[data-theme=dark] .emp-role-badge.role--manager{background:#6d28d933;color:#a78bfa}[data-theme=dark] .emp-role-badge.role--owner{background:#92400e33;color:#fbbf24}[data-theme=dark] .emp-role-badge.role--employee{background:#0369a133;color:#7dd3fc}.emp-list-actions{display:flex;gap:.5rem}.emp-action-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;border:1px solid var(--border-color, #e2e8f0);color:var(--text-muted);transition:all .2s;background:transparent}.emp-action-btn:hover{border-color:var(--primary, #6366f1);color:var(--primary, #6366f1)}.emp-empty{color:var(--text-muted);padding:2rem;text-align:center}@media(max-width:640px){.emp-grid{grid-template-columns:repeat(2,1fr)}.emp-search input{width:120px}}.ev-page{max-width:720px;margin:0 auto}.ev-top-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem;gap:.75rem}.ev-back{display:inline-flex;align-items:center;gap:.45rem;padding:.5rem 1rem;border-radius:10px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);font-size:.85rem;font-weight:600;text-decoration:none;transition:all .2s ease;box-shadow:var(--shadow-sm)}.ev-back:hover{color:var(--primary-color);border-color:var(--primary-color);background:var(--primary-color-alpha);transform:translate(-2px);box-shadow:var(--shadow-md)}.ev-back:active{transform:translate(0)}.ev-back svg{transition:transform .2s ease;flex-shrink:0}.ev-back:hover svg{transform:translate(-3px)}.ev-card{padding:0;overflow:hidden}.ev-profile-header{display:flex;align-items:center;gap:1rem;padding:1.5rem;background:linear-gradient(135deg,color-mix(in srgb,var(--primary-color) 8%,var(--bg-secondary)),var(--bg-secondary));border-bottom:1px solid var(--border-color)}.ev-avatar{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff;font-size:1.1rem;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 12px #4f46e54d}.ev-avatar-photo{object-fit:cover;border:2px solid var(--bg-secondary)}.ev-profile-name{display:flex;flex-direction:column;gap:.15rem;min-width:0}.ev-profile-name h2{margin:0;font-size:1.25rem;font-weight:700;color:var(--text-primary);line-height:1.25}.ev-title{font-size:.82rem;color:var(--text-secondary);font-weight:500}.ev-fields{display:grid;grid-template-columns:1fr 1fr;gap:0}.ev-field{display:flex;flex-direction:column;gap:.2rem;padding:1rem 1.5rem;border-bottom:1px solid var(--border-color)}.ev-field:nth-child(odd){border-right:1px solid var(--border-color)}.ev-field:nth-last-child(-n+2){border-bottom:none}.ev-field label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:0}.ev-field span{font-size:.9rem;font-weight:500;color:var(--text-primary);word-break:break-word}@media(max-width:600px){.ev-top-bar{flex-direction:column;align-items:stretch}.ev-top-bar .btn{text-align:center}.ev-fields{grid-template-columns:1fr}.ev-field:nth-child(odd){border-right:none}.ev-field:nth-last-child(-n+2){border-bottom:1px solid var(--border-color)}.ev-field:last-child{border-bottom:none}.ev-profile-header{padding:1.25rem}.ev-field{padding:.875rem 1.25rem}}.photo-upload{position:relative;cursor:pointer;border-radius:50%;flex-shrink:0;-webkit-user-select:none;user-select:none;transition:transform .2s ease}.photo-upload:hover{transform:scale(1.04)}.photo-upload--sm{width:40px;height:40px}.photo-upload--md{width:80px;height:80px}.photo-upload--lg{width:110px;height:110px}.photo-upload-input{display:none}.photo-upload-img{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block;border:3px solid var(--bg-secondary);box-shadow:var(--shadow-md)}.photo-upload-initials{width:100%;height:100%;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;background:linear-gradient(135deg,#4f46e5,#7c3aed);border:3px solid var(--bg-secondary);box-shadow:var(--shadow-md)}.photo-upload--sm .photo-upload-initials{font-size:.75rem;border-width:2px}.photo-upload--md .photo-upload-initials{font-size:1.4rem}.photo-upload--lg .photo-upload-initials{font-size:2rem}.photo-upload-overlay{position:absolute;inset:0;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#00000073;color:#fff;opacity:0;transition:opacity .2s ease}.photo-upload:hover .photo-upload-overlay{opacity:1}.photo-upload-remove{position:absolute;top:-2px;right:-2px;width:22px;height:22px;border-radius:50%;background:#ef4444;color:#fff;border:2px solid var(--bg-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .15s ease,transform .15s ease;padding:0}.photo-upload:hover .photo-upload-remove{opacity:1}.photo-upload-remove:hover{transform:scale(1.15);background:#dc2626}.org-page{max-width:1200px;margin:0 auto;padding:1.5rem}.org-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-bottom:1.25rem}.org-header h2{margin:0;font-size:1.5rem;font-weight:700;color:var(--text-primary)}.org-header-actions{display:flex;align-items:center;gap:.75rem}.org-search-wrap{display:flex;align-items:center;gap:.5rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;padding:.45rem .85rem;min-width:220px}.org-search-wrap svg{color:var(--text-muted);flex-shrink:0}.org-search{border:none;outline:none;background:transparent;font:inherit;color:var(--text-primary);width:100%;font-size:.85rem}.org-view-toggle{display:flex;border:1px solid var(--border-color);border-radius:10px;overflow:hidden}.org-view-btn{background:var(--bg-secondary);border:none;padding:.4rem .7rem;cursor:pointer;color:var(--text-muted);display:flex;align-items:center;transition:all .15s}.org-view-btn.active{background:linear-gradient(135deg,#a78bfa,#06b6d4);color:#fff}.org-view-btn:not(.active):hover{background:var(--bg-tertiary)}.org-stats{display:flex;gap:1rem;margin-bottom:1.25rem}.org-stat-card{flex:1;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1rem 1.25rem;text-align:center}.org-stat-value{font-size:1.75rem;font-weight:800;background:linear-gradient(135deg,#a78bfa,#06b6d4);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.org-stat-label{font-size:.8rem;color:var(--text-muted);margin-top:.15rem;font-weight:500}.org-toolbar{display:flex;gap:.5rem;margin-bottom:1rem}.org-expand-btn{font-size:.78rem;padding:.35rem .85rem;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;transition:all .15s;font-weight:500}.org-expand-btn:hover{border-color:#a78bfa;color:#a78bfa}.org-tree-container{padding-left:.25rem}.org-tree-node{position:relative}.org-tree-row{display:flex;align-items:flex-start;gap:0;cursor:pointer;position:relative}.org-tree-connector{display:flex;flex-direction:column;align-items:center;width:24px;flex-shrink:0;position:relative;padding-top:12px}.org-tree-line{width:2px;height:12px;background:var(--border-color)}.org-tree-dot{width:12px;height:12px;border-radius:50%;border:2.5px solid #a78bfa;background:var(--bg-secondary);flex-shrink:0;transition:all .2s;z-index:1}.depth-0>.org-tree-row>.org-tree-connector>.org-tree-line{display:none}.org-tree-card{flex:1;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;margin:.35rem 0;overflow:hidden;transition:box-shadow .2s,border-color .2s}.org-tree-card:hover{box-shadow:var(--shadow-md)}.org-tree-card.is-open{border-color:#a78bfa66}.org-tree-card-header{display:flex;align-items:center;justify-content:space-between;padding:.65rem 1rem;border-left:3px solid #a78bfa;gap:.5rem}.org-tree-card-title{font-weight:600;font-size:.9rem;color:var(--text-primary)}.org-tree-card-meta{display:flex;align-items:center;gap:.5rem}.org-tree-badge{font-size:.72rem;padding:.15rem .55rem;border-radius:20px;font-weight:600}.org-tree-toggle{font-size:.9rem;color:var(--text-muted)}.org-tree-members{display:flex;flex-wrap:wrap;gap:.5rem;padding:.5rem 1rem .75rem;border-top:1px solid var(--border-color)}.org-tree-member{display:flex;align-items:center;gap:.5rem;min-width:200px}.org-tree-avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.65rem;font-weight:700;flex-shrink:0}.org-tree-avatar--sm{width:28px;height:28px;font-size:.58rem}.org-tree-member-info{display:flex;flex-direction:column;gap:1px}.org-tree-member-name{font-size:.82rem;font-weight:600;color:var(--text-primary)}.org-tree-member-title{font-size:.72rem;color:var(--text-muted)}.org-tree-children{padding-left:2rem;position:relative}.org-tree-children:before{content:"";position:absolute;left:11px;top:0;bottom:12px;width:2px;background:var(--border-color)}.org-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.25rem}.org-dept-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;border-top:3px solid #a78bfa;overflow:hidden;transition:box-shadow .2s}.org-dept-card:hover{box-shadow:var(--shadow-lg)}.org-dept-card-header{display:flex;align-items:center;gap:.75rem;padding:1rem 1.15rem}.org-dept-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:800}.org-dept-name{font-weight:700;font-size:.95rem;color:var(--text-primary);margin:0}.org-dept-count{font-size:.78rem;color:var(--text-muted)}.org-dept-manager{padding:.5rem 1.15rem;background:var(--bg-tertiary);border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color)}.org-dept-manager-label{font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-weight:600}.org-dept-manager-row{display:flex;align-items:center;gap:.5rem;margin-top:.35rem;font-weight:600;font-size:.85rem;color:var(--text-primary)}.org-dept-members{padding:.75rem 1.15rem;display:flex;flex-direction:column;gap:.5rem}.org-dept-member{display:flex;align-items:center;gap:.6rem}.org-dept-member-info{display:flex;flex-direction:column}.org-dept-member-name{font-size:.82rem;font-weight:600;color:var(--text-primary)}.org-dept-member-title{font-size:.72rem;color:var(--text-muted)}.org-empty{text-align:center;color:var(--text-muted);padding:3rem 1rem;font-size:.9rem}@media(max-width:640px){.org-header{flex-direction:column;align-items:stretch}.org-header-actions{flex-direction:column}.org-search-wrap{min-width:unset}.org-stats{flex-direction:column}.org-tree-children{padding-left:1.25rem}.org-cards-grid{grid-template-columns:1fr}.org-tree-members{flex-direction:column}}.events-page{display:flex;flex-direction:column;gap:1.25rem}.events-header{display:flex;align-items:center;justify-content:space-between}.events-header h2{margin:0;color:var(--text-primary)}.events-add-btn{width:40px;height:40px;border-radius:50%;border:none;background:var(--primary-color);color:#fff;font-size:1.5rem;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s,box-shadow .2s;box-shadow:var(--shadow-sm)}.events-add-btn:hover{transform:scale(1.1);box-shadow:var(--shadow-md)}.events-add-panel{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1.25rem;box-shadow:var(--shadow-sm);animation:slideDown .25s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.events-add-panel h3{margin:0 0 1rem;color:var(--text-primary);font-size:1.1rem}.events-add-form{display:flex;flex-direction:column;gap:.75rem}.events-form-row{display:flex;flex-direction:column;gap:.3rem}.events-form-row label{font-size:.85rem;font-weight:600;color:var(--text-secondary)}.events-form-row input,.events-form-row select,.events-form-row textarea{padding:.55rem .75rem;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-size:.9rem;transition:border-color .2s}.events-form-row input:focus,.events-form-row select:focus,.events-form-row textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #3b82f626}.events-form-error{color:#ef4444;font-size:.85rem;margin:0}.events-form-success{color:#10b981;font-size:.85rem;margin:0}.events-form-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:.25rem}.events-btn-primary,.events-btn-secondary{padding:.5rem 1.25rem;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;border:none;transition:background .2s,transform .15s}.events-btn-primary{background:var(--primary-color);color:#fff}.events-btn-primary:hover{filter:brightness(1.1);transform:translateY(-1px)}.events-btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color)}.events-btn-secondary:hover{background:var(--bg-secondary)}.calendar-container{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;overflow:hidden;box-shadow:var(--shadow-sm)}.calendar-nav{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border-color)}.calendar-nav-btn{width:36px;height:36px;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s,border-color .2s}.calendar-nav-btn:hover{background:var(--bg-tertiary);border-color:var(--primary-color)}.calendar-title{display:flex;align-items:center;gap:.75rem}.calendar-month-year{font-size:1.15rem;font-weight:700;color:var(--text-primary)}.calendar-today-btn{padding:.3rem .75rem;border-radius:6px;border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-secondary);font-size:.8rem;font-weight:600;cursor:pointer;transition:background .2s,color .2s}.calendar-today-btn:hover{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-day-header{padding:.6rem .5rem;text-align:center;font-size:.8rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color)}.calendar-cell{position:relative;min-height:80px;padding:.4rem;border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color);cursor:pointer;transition:background .15s;display:flex;flex-direction:column;gap:.25rem}.calendar-cell:nth-child(7n+7){border-right:none}.calendar-cell:hover{background:var(--bg-tertiary)}.calendar-cell--outside{background:var(--bg-tertiary);opacity:.45}.calendar-cell--outside:hover{opacity:.65}.calendar-cell--today{background:#3b82f614}.calendar-cell--today .calendar-cell-day{background:var(--primary-color);color:#fff;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-weight:700}.calendar-cell--selected{box-shadow:inset 0 0 0 2px var(--primary-color);z-index:1}.calendar-cell-day{font-size:.85rem;font-weight:500;color:var(--text-primary);width:28px;height:28px;display:flex;align-items:center;justify-content:center}.calendar-cell-dots{display:flex;gap:3px;flex-wrap:wrap;padding:0 2px}.calendar-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.calendar-dot-more{font-size:.6rem;color:var(--text-muted);line-height:7px}.calendar-cell-count{position:absolute;top:4px;right:4px;min-width:18px;height:18px;border-radius:9px;background:var(--bg-tertiary);color:var(--text-muted);font-size:.65rem;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 4px}.calendar-cell--has-events .calendar-cell-count{background:var(--primary-color);color:#fff}.events-detail-panel{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1.25rem;box-shadow:var(--shadow-sm);animation:slideDown .2s ease-out}.events-detail-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.events-detail-header h3{margin:0;font-size:1.05rem;color:var(--text-primary)}.events-today-badge{padding:.15rem .6rem;border-radius:999px;background:var(--primary-color);color:#fff;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.events-detail-empty{color:var(--text-muted);font-size:.9rem;margin:0;padding:.5rem 0}.events-detail-list{display:flex;flex-direction:column;gap:.6rem}.events-detail-item{display:flex;gap:.75rem;padding:.75rem;border-radius:8px;background:var(--bg-primary);border:1px solid var(--border-color);transition:box-shadow .15s}.events-detail-item:hover{box-shadow:var(--shadow-sm)}.events-detail-item-color{width:4px;border-radius:4px;flex-shrink:0}.events-detail-item-content{flex:1;min-width:0}.events-detail-item-top{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.events-detail-item-title{font-weight:600;font-size:.9rem;color:var(--text-primary)}.events-detail-type-badge{padding:.15rem .5rem;border-radius:999px;font-size:.7rem;font-weight:600;white-space:nowrap}.events-detail-item-desc{margin:.3rem 0 0;font-size:.82rem;color:var(--text-muted)}@media(max-width:768px){.calendar-cell{min-height:56px;padding:.25rem}.calendar-cell-day{font-size:.78rem;width:24px;height:24px}.calendar-cell--today .calendar-cell-day{width:24px;height:24px}.calendar-cell-count{display:none}.calendar-dot{width:5px;height:5px}.calendar-month-year{font-size:1rem}.calendar-nav{padding:.75rem}.events-detail-item-top{flex-direction:column;align-items:flex-start;gap:.3rem}}@media(max-width:480px){.calendar-cell{min-height:44px}.calendar-day-header{font-size:.68rem;padding:.4rem .2rem}.calendar-cell-dots{gap:2px}.calendar-dot{width:4px;height:4px}.calendar-title{flex-direction:column;gap:.3rem}.events-add-panel{padding:1rem}}.txn-page h2{margin:0}.txn-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem}.txn-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.25rem}.txn-stat-card{display:flex;align-items:center;gap:.85rem;padding:1.1rem 1.25rem;border-radius:14px;border:1px solid var(--border-color, #e2e8f0);background:var(--bg-secondary);box-shadow:var(--shadow-sm)}.txn-stat-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.txn-stat--paid .txn-stat-icon{background:#22c55e1f;color:#22c55e}.txn-stat--pending .txn-stat-icon{background:#f59e0b1f;color:#f59e0b}.txn-stat--count .txn-stat-icon{background:#6366f11f;color:#6366f1}.txn-stat-info{display:flex;flex-direction:column;gap:.1rem}.txn-stat-label{font-size:.78rem;color:var(--text-muted, #64748b);font-weight:500;text-transform:uppercase;letter-spacing:.03em}.txn-stat-value{font-size:1.2rem;font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums}.txn-stat--paid{border-left:4px solid #22c55e}.txn-stat--pending{border-left:4px solid #f59e0b}.txn-stat--count{border-left:4px solid #6366f1}.txn-filters{display:flex;gap:.5rem;margin-bottom:1rem;flex-wrap:wrap}.txn-filter-btn{display:flex;align-items:center;gap:.35rem;padding:.45rem .85rem;border-radius:999px;border:1px solid var(--border-color, #e2e8f0);background:var(--bg-secondary);font-size:.85rem;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .2s;font-family:inherit}.txn-filter-btn:hover{border-color:var(--primary, #6366f1)}.txn-filter-btn.active{background:var(--primary, #6366f1);color:#fff;border-color:var(--primary, #6366f1)}.txn-filter-count{background:#fff3;padding:.05rem .4rem;border-radius:999px;font-size:.75rem;font-weight:600}.txn-filter-btn:not(.active) .txn-filter-count{background:var(--bg-tertiary)}.txn-form-card h3{margin-top:0}.txn-form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem}.txn-form-actions{display:flex;gap:.75rem;margin-top:.5rem}.txn-table-card{padding:0!important;overflow:hidden}.txn-table-wrap{overflow-x:auto}.txn-table{width:100%;border-collapse:collapse;font-size:.9rem}.txn-table th{text-align:left;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted, #64748b);padding:.75rem 1rem;border-bottom:2px solid var(--border-color, #e2e8f0)}.txn-table td{padding:.7rem 1rem;border-bottom:1px solid var(--border-color, #e2e8f0)}.txn-table tbody tr:last-child td{border-bottom:none}.txn-table tbody tr:hover{background:var(--bg-hover, rgba(99,102,241,.04))}.txn-date{font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--text-secondary)}.txn-amount{font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.txn-desc{color:var(--text-secondary);font-size:.85rem;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.txn-type-badge{display:inline-block;padding:.2rem .6rem;border-radius:999px;font-size:.78rem;font-weight:600}.txn-type-badge.type--salary{background:#dbeafe;color:#1e40af}.txn-type-badge.type--bonus{background:#fef3c7;color:#92400e}.txn-type-badge.type--expense{background:#fce7f3;color:#9d174d}.txn-type-badge.type--advance{background:#e0e7ff;color:#3730a3}[data-theme=dark] .txn-type-badge.type--salary{background:#1e40af33;color:#93c5fd}[data-theme=dark] .txn-type-badge.type--bonus{background:#92400e33;color:#fbbf24}[data-theme=dark] .txn-type-badge.type--expense{background:#9d174d33;color:#f9a8d4}[data-theme=dark] .txn-type-badge.type--advance{background:#3730a333;color:#a5b4fc}.txn-status-badge{display:inline-block;padding:.2rem .6rem;border-radius:999px;font-size:.78rem;font-weight:600}.txn-status-badge.status--paid{background:#dcfce7;color:#15803d}.txn-status-badge.status--pending{background:#fef9c3;color:#a16207}.txn-status-badge.status--approved{background:#dbeafe;color:#1d4ed8}[data-theme=dark] .txn-status-badge.status--paid{background:#22c55e26;color:#4ade80}[data-theme=dark] .txn-status-badge.status--pending{background:#eab30826;color:#facc15}[data-theme=dark] .txn-status-badge.status--approved{background:#3b82f626;color:#60a5fa}.txn-delete-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;border:1px solid transparent;background:transparent;color:var(--text-muted);cursor:pointer;transition:all .2s}.txn-delete-btn:hover{border-color:#ef4444;color:#ef4444;background:#ef44440f}.txn-empty{color:var(--text-muted);text-align:center;padding:2rem}@media(max-width:640px){.txn-stats{grid-template-columns:1fr}}.exp-page{max-width:1100px;margin:0 auto}.exp-page h2{margin:0}.exp-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem;flex-wrap:wrap;gap:.75rem}.exp-header-actions{display:flex;gap:.5rem;flex-wrap:wrap}.exp-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1rem;margin-bottom:1.5rem}.exp-stat-card{display:flex;align-items:center;gap:.85rem;padding:1.1rem 1.25rem;border-radius:14px;border:1px solid var(--border-color, #e2e8f0);background:var(--bg-secondary);box-shadow:var(--shadow-sm)}.exp-stat-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.35rem;flex-shrink:0}.exp-stat-icon--budget{background:#6366f11f;color:#6366f1}.exp-stat-icon--spent{background:#ef44441f;color:#ef4444}.exp-stat-icon--remaining{background:#22c55e1f;color:#22c55e}.exp-stat-icon--count{background:#f59e0b1f;color:#f59e0b}.exp-stat-info{display:flex;flex-direction:column;gap:.1rem}.exp-stat-label{font-size:.78rem;color:var(--text-muted, #64748b);font-weight:500;text-transform:uppercase;letter-spacing:.03em}.exp-stat-value{font-size:1.2rem;font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums}.exp-section-title{font-size:1.05rem;font-weight:700;margin:0 0 1rem;color:var(--text-primary);display:flex;align-items:center;gap:.5rem}.exp-card{background:var(--bg-secondary);border:1px solid var(--border-color, #e2e8f0);border-radius:14px;padding:1.25rem 1.5rem;box-shadow:var(--shadow-sm);margin-bottom:1.5rem}.exp-categories-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;margin-bottom:1.5rem}.exp-cat-card{background:var(--bg-secondary);border:1px solid var(--border-color, #e2e8f0);border-radius:14px;padding:1.15rem 1.25rem;box-shadow:var(--shadow-sm);position:relative;transition:box-shadow .2s,transform .2s}.exp-cat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.exp-cat-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.exp-cat-title-row{display:flex;align-items:center;gap:.5rem}.exp-cat-icon{font-size:1.3rem}.exp-cat-name{font-size:.95rem;font-weight:700;color:var(--text-primary)}.exp-cat-actions{display:flex;gap:.25rem}.exp-cat-meta{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.35rem;margin-bottom:.75rem}.exp-cat-meta-item{display:flex;flex-direction:column}.exp-cat-meta-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted, #64748b);font-weight:500}.exp-cat-meta-value{font-size:.88rem;font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums}.exp-cat-progress-bar{height:8px;background:var(--bg-tertiary, #f1f5f9);border-radius:999px;overflow:hidden}.exp-cat-progress-fill{height:100%;border-radius:999px;transition:width .4s ease}.exp-cat-progress-fill--green{background:linear-gradient(90deg,#22c55e,#4ade80)}.exp-cat-progress-fill--yellow{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.exp-cat-progress-fill--red{background:linear-gradient(90deg,#ef4444,#f87171)}.exp-cat-percent{font-size:.72rem;font-weight:600;color:var(--text-muted);text-align:right;margin-top:.2rem}.exp-cat-add{display:flex;align-items:center;justify-content:center;border:2px dashed var(--border-color, #e2e8f0);border-radius:14px;min-height:160px;cursor:pointer;color:var(--text-muted);font-size:.9rem;font-weight:600;gap:.4rem;transition:all .2s;background:transparent;font-family:inherit}.exp-cat-add:hover{border-color:var(--primary-color, #6366f1);color:var(--primary-color, #6366f1);background:#6366f10a}.exp-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.5rem 1rem;border-radius:10px;border:1px solid var(--border-color, #e2e8f0);background:var(--bg-secondary);color:var(--text-primary);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s;font-family:inherit;white-space:nowrap}.exp-btn:hover{border-color:var(--primary-color, #6366f1);color:var(--primary-color, #6366f1)}.exp-btn--primary{background:var(--primary-color, #6366f1);color:#fff;border-color:var(--primary-color, #6366f1)}.exp-btn--primary:hover{opacity:.9;color:#fff}.exp-btn--danger{color:#ef4444;border-color:#fecaca}.exp-btn--danger:hover{background:#fef2f2;border-color:#ef4444}.exp-btn--success{color:#22c55e;border-color:#bbf7d0}.exp-btn--success:hover{background:#f0fdf4;border-color:#22c55e}.exp-btn--sm{padding:.3rem .6rem;font-size:.78rem;border-radius:8px}.exp-btn--icon{padding:.3rem;border:none;background:transparent;font-size:1rem;color:var(--text-muted);border-radius:8px}.exp-btn--icon:hover{background:var(--bg-tertiary, #f1f5f9);color:var(--text-primary)}[data-theme=dark] .exp-btn--danger{border-color:#ef44444d}[data-theme=dark] .exp-btn--danger:hover{background:#ef44441a}[data-theme=dark] .exp-btn--success{border-color:#22c55e4d}[data-theme=dark] .exp-btn--success:hover{background:#22c55e1a}.exp-filters{display:flex;gap:.5rem;margin-bottom:1rem;flex-wrap:wrap;align-items:center}.exp-search{flex:1;min-width:180px;max-width:320px;padding:.5rem .85rem;border-radius:10px;border:1px solid var(--border-color, #e2e8f0);background:var(--bg-primary);color:var(--text-primary);font-size:.85rem;font-family:inherit;outline:none;transition:border-color .2s}.exp-search:focus{border-color:var(--primary-color, #6366f1)}.exp-select{padding:.5rem .85rem;border-radius:10px;border:1px solid var(--border-color, #e2e8f0);background:var(--bg-primary);color:var(--text-primary);font-size:.85rem;font-family:inherit;outline:none;cursor:pointer;transition:border-color .2s}.exp-select:focus{border-color:var(--primary-color, #6366f1)}.exp-date-input{padding:.5rem .85rem;border-radius:10px;border:1px solid var(--border-color, #e2e8f0);background:var(--bg-primary);color:var(--text-primary);font-size:.85rem;font-family:inherit;outline:none;transition:border-color .2s}.exp-date-input:focus{border-color:var(--primary-color, #6366f1)}.exp-table-card{padding:0!important;overflow:hidden}.exp-table-wrap{overflow-x:auto}.exp-table{width:100%;border-collapse:collapse;font-size:.88rem}.exp-table th{text-align:left;font-size:.76rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted, #64748b);padding:.75rem .85rem;border-bottom:2px solid var(--border-color, #e2e8f0);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .2s}.exp-table th:hover{color:var(--text-primary)}.exp-table th.exp-th-active{color:var(--primary-color, #6366f1)}.exp-th-sort{margin-left:.25rem;font-size:.7rem;opacity:.6}.exp-table td{padding:.65rem .85rem;border-bottom:1px solid var(--border-color, #e2e8f0);vertical-align:middle}.exp-table tbody tr:last-child td{border-bottom:none}.exp-table tbody tr:hover{background:var(--bg-hover, rgba(99, 102, 241, .04))}.exp-cell-date{font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--text-secondary);font-size:.84rem}.exp-cell-amount{font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.exp-cell-desc{color:var(--text-secondary);font-size:.84rem;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.exp-cell-receipt{font-size:.82rem;color:var(--text-muted);display:flex;align-items:center;gap:.25rem}.exp-cell-employee{font-weight:600;white-space:nowrap}.exp-status{display:inline-block;padding:.2rem .6rem;border-radius:999px;font-size:.76rem;font-weight:600;white-space:nowrap}.exp-status--pending{background:#fef9c3;color:#a16207}.exp-status--approved{background:#dbeafe;color:#1d4ed8}.exp-status--rejected{background:#fce7f3;color:#9d174d}.exp-status--paid{background:#dcfce7;color:#15803d}[data-theme=dark] .exp-status--pending{background:#f59e0b26;color:#fbbf24}[data-theme=dark] .exp-status--approved{background:#3b82f626;color:#93c5fd}[data-theme=dark] .exp-status--rejected{background:#ec489926;color:#f9a8d4}[data-theme=dark] .exp-status--paid{background:#22c55e26;color:#4ade80}.exp-cat-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.18rem .55rem;border-radius:999px;font-size:.78rem;font-weight:600;background:var(--bg-tertiary, #f1f5f9);color:var(--text-secondary)}.exp-modal-overlay{position:fixed;inset:0;z-index:1000;background:#00000073;display:flex;align-items:center;justify-content:center;padding:1rem;animation:exp-fade-in .15s ease}@keyframes exp-fade-in{0%{opacity:0}to{opacity:1}}.exp-modal{background:var(--bg-secondary);border:1px solid var(--border-color, #e2e8f0);border-radius:18px;padding:1.75rem;width:100%;max-width:540px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0003;animation:exp-slide-up .2s ease}@keyframes exp-slide-up{0%{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}.exp-modal-title{font-size:1.1rem;font-weight:700;margin:0 0 1.25rem;color:var(--text-primary)}.exp-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}.exp-form-group{display:flex;flex-direction:column;gap:.3rem}.exp-form-group--full{grid-column:1 / -1}.exp-form-label{font-size:.78rem;font-weight:600;color:var(--text-muted, #64748b);text-transform:uppercase;letter-spacing:.03em}.exp-form-input,.exp-form-select,.exp-form-textarea{padding:.5rem .75rem;border-radius:10px;border:1px solid var(--border-color, #e2e8f0);background:var(--bg-primary);color:var(--text-primary);font-size:.88rem;font-family:inherit;outline:none;transition:border-color .2s}.exp-form-input:focus,.exp-form-select:focus,.exp-form-textarea:focus{border-color:var(--primary-color, #6366f1)}.exp-form-textarea{resize:vertical;min-height:60px}.exp-form-actions{display:flex;gap:.75rem;margin-top:1rem;justify-content:flex-end}.exp-icon-picker{display:flex;flex-wrap:wrap;gap:.35rem}.exp-icon-option{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:2px solid var(--border-color, #e2e8f0);border-radius:10px;cursor:pointer;font-size:1.1rem;background:transparent;transition:all .15s}.exp-icon-option:hover{border-color:var(--primary-color, #6366f1)}.exp-icon-option--selected{border-color:var(--primary-color, #6366f1);background:#6366f11a}.exp-chart-row{display:flex;align-items:center;gap:.75rem;margin-bottom:.6rem}.exp-chart-label{width:70px;text-align:right;font-size:.82rem;font-weight:600;color:var(--text-secondary);flex-shrink:0}.exp-chart-bar-wrap{flex:1;height:28px;background:var(--bg-tertiary, #f1f5f9);border-radius:8px;overflow:hidden;display:flex;position:relative}.exp-chart-segment{height:100%;display:flex;align-items:center;justify-content:center;font-size:.68rem;font-weight:700;color:#fff;white-space:nowrap;overflow:hidden;transition:width .4s ease;min-width:0}.exp-chart-amount{width:80px;text-align:right;font-size:.82rem;font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums;flex-shrink:0}.exp-chart-legend{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border-color, #e2e8f0)}.exp-chart-legend-item{display:flex;align-items:center;gap:.35rem;font-size:.78rem;color:var(--text-secondary)}.exp-chart-legend-dot{width:10px;height:10px;border-radius:3px;flex-shrink:0}.exp-approval-list{display:flex;flex-direction:column;gap:.5rem}.exp-approval-item{display:flex;align-items:center;gap:.85rem;padding:.75rem 1rem;border-radius:10px;border:1px solid var(--border-color, #e2e8f0);background:var(--bg-primary);transition:background .15s}.exp-approval-item:hover{background:var(--bg-tertiary, #f1f5f9)}.exp-approval-check{width:18px;height:18px;accent-color:var(--primary-color, #6366f1);cursor:pointer;flex-shrink:0}.exp-approval-info{flex:1;min-width:0}.exp-approval-main{font-size:.88rem;font-weight:600;color:var(--text-primary)}.exp-approval-sub{font-size:.78rem;color:var(--text-muted)}.exp-approval-amount{font-size:.95rem;font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums;white-space:nowrap}.exp-approval-actions{display:flex;gap:.35rem;flex-shrink:0}.exp-batch-bar{display:flex;align-items:center;gap:.75rem;padding:.6rem 1rem;border-radius:10px;background:#6366f10f;border:1px solid rgba(99,102,241,.15);margin-bottom:.75rem;font-size:.85rem;color:var(--text-secondary)}.exp-batch-bar strong{color:var(--text-primary)}.exp-toast{position:fixed;bottom:2rem;right:2rem;z-index:2000;padding:.85rem 1.25rem;border-radius:12px;background:#1e293b;color:#fff;font-size:.88rem;font-weight:600;box-shadow:0 8px 32px #0003;animation:exp-toast-in .25s ease;display:flex;align-items:center;gap:.5rem}@keyframes exp-toast-in{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}[data-theme=dark] .exp-toast{background:#334155}.exp-empty{text-align:center;padding:2rem 1rem;color:var(--text-muted);font-size:.9rem}@media(max-width:768px){.exp-stats{grid-template-columns:1fr 1fr}.exp-categories-grid,.exp-form-grid{grid-template-columns:1fr}.exp-filters{flex-direction:column}.exp-search{max-width:100%}.exp-header{flex-direction:column;align-items:flex-start}.exp-approval-item{flex-wrap:wrap}.exp-chart-label{width:50px;font-size:.75rem}.exp-chart-amount{width:60px;font-size:.75rem}}@media(max-width:480px){.exp-stats{grid-template-columns:1fr}.exp-cat-meta{grid-template-columns:1fr;gap:.25rem}}.profile-page{max-width:960px;margin:0 auto;padding:0 1rem}.profile-page h2{margin-bottom:1.25rem}.profile-warning{padding:.75rem 1rem;margin-bottom:1rem;background:var(--warning-bg, #fef3cd);border-left:4px solid var(--warning, #f59e0b);border-radius:8px;font-size:.9rem;color:var(--text-primary)}.profile-hero{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;flex-wrap:wrap}.profile-hero-left{display:flex;align-items:center;gap:1rem;min-width:0;flex:1 1 280px}.profile-avatar{width:72px;height:72px;border-radius:50%;object-fit:cover;border:3px solid var(--primary, #6366f1);flex-shrink:0}.profile-avatar--initials{background:var(--primary, #6366f1);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;letter-spacing:1px}.profile-hero-info{display:flex;flex-direction:column;gap:.15rem;min-width:0}.profile-hero-name{font-size:clamp(1.05rem,2.5vw,1.35rem);font-weight:700;margin:0;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-hero-role{font-size:.95rem;color:var(--primary, #6366f1);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-hero-dept{font-size:.85rem;color:var(--text-muted, #64748b)}.profile-hero-contact{display:flex;flex-direction:column;gap:.5rem;font-size:.88rem;color:var(--text-secondary, #475569);flex-shrink:0}.profile-hero-contact-item{display:flex;align-items:center;gap:.5rem}.profile-hero-contact-item svg{color:var(--text-muted, #64748b);flex-shrink:0}.profile-hero-contact-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:260px}.profile-tabs{display:flex;gap:0;margin-bottom:1.25rem;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;border-bottom:2px solid var(--border-color, #e2e8f0);padding-bottom:0}.profile-tabs::-webkit-scrollbar{display:none}.profile-tab{display:flex;align-items:center;gap:.4rem;padding:.7rem 1rem;border:none;background:none;font-size:.88rem;font-weight:500;color:var(--text-muted, #64748b);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:color .2s,border-color .2s;white-space:nowrap;font-family:inherit;flex:1 0 auto;justify-content:center}.profile-tab:hover{color:var(--text-primary)}.profile-tab.active{color:var(--primary, #6366f1);border-bottom-color:var(--primary, #6366f1);font-weight:600}.profile-tab-icon{font-size:1rem}.profile-section{background:var(--bg-secondary);border:1px solid var(--border-color, #e2e8f0);border-radius:14px;padding:1.25rem 1.5rem;margin-bottom:1rem;box-shadow:var(--shadow-sm)}.profile-section-title{display:flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:600;margin:0 0 1rem;color:var(--text-primary)}.profile-section-icon{font-size:1.1rem}.profile-section-desc{font-size:.85rem;color:var(--text-muted, #64748b);margin:-.5rem 0 .75rem}.profile-info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.85rem 2rem;margin:0}.profile-info-row{display:flex;flex-direction:column;gap:.15rem;min-width:0}.profile-info-row dt{font-size:.78rem;font-weight:500;color:var(--text-muted, #64748b);text-transform:uppercase;letter-spacing:.03em}.profile-info-row dd{margin:0;font-size:.95rem;font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;word-break:break-word}.profile-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -1.5rem;padding:0 1.5rem}.profile-table{width:100%;border-collapse:collapse;font-size:.9rem}.profile-table th{text-align:left;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted, #64748b);padding:.6rem .75rem;border-bottom:2px solid var(--border-color, #e2e8f0);white-space:nowrap}.profile-table td{padding:.65rem .75rem;border-bottom:1px solid var(--border-color, #e2e8f0);color:var(--text-primary)}.profile-table tbody tr:last-child td{border-bottom:none}.profile-table tbody tr:hover{background:var(--bg-hover, rgba(99, 102, 241, .04))}.profile-amount{font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}.profile-leave-badge{display:inline-block;padding:.15rem .6rem;border-radius:999px;font-size:.82rem;font-weight:600}.profile-leave-badge.has-days{background:#dcfce7;color:#15803d}.profile-leave-badge.no-days{background:#fef2f2;color:#b91c1c}[data-theme=dark] .profile-leave-badge.has-days{background:#22c55e26;color:#4ade80}[data-theme=dark] .profile-leave-badge.no-days{background:#ef444426;color:#f87171}.profile-status-badge{display:inline-block;padding:.15rem .65rem;border-radius:999px;font-size:.8rem;font-weight:600;white-space:nowrap}.profile-status-badge.status--paid{background:#dcfce7;color:#15803d}.profile-status-badge.status--pending{background:#fef9c3;color:#a16207}.profile-status-badge.status--approved{background:#dbeafe;color:#1d4ed8}[data-theme=dark] .profile-status-badge.status--paid{background:#22c55e26;color:#4ade80}[data-theme=dark] .profile-status-badge.status--pending{background:#eab30826;color:#facc15}[data-theme=dark] .profile-status-badge.status--approved{background:#3b82f626;color:#60a5fa}.profile-empty{color:var(--text-muted, #64748b);font-size:.9rem;padding:1rem 0}.profile-shortcut-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.85rem}.profile-shortcut-card{display:flex;align-items:center;gap:.85rem;padding:1rem 1.15rem;border:1px solid var(--border-color, #e2e8f0);border-radius:12px;background:var(--bg-secondary);cursor:pointer;transition:box-shadow .2s,border-color .2s,transform .15s;font-family:inherit;color:var(--text-primary);text-align:left}.profile-shortcut-card:hover{border-color:#a78bfa;box-shadow:0 2px 16px #a78bfa26;transform:translateY(-2px)}.profile-shortcut-icon{width:42px;height:42px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#a78bfa1f,#06b6d41f);flex-shrink:0}.profile-shortcut-text{display:flex;flex-direction:column;gap:2px;min-width:0}.profile-shortcut-name{font-weight:600;font-size:.88rem}.profile-shortcut-desc{font-size:.75rem;color:var(--text-muted, #94a3b8);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-faq-list{display:flex;flex-direction:column;gap:.5rem}.profile-faq-item-wrap{border:1px solid var(--border-color, #e2e8f0);border-radius:10px;overflow:hidden;transition:border-color .2s}.profile-faq-item-wrap.is-open{border-color:#a78bfa}.profile-faq-item{display:flex;align-items:center;gap:.65rem;padding:.75rem 1rem;background:var(--bg-secondary);cursor:pointer;transition:background .15s;font-family:inherit;font-size:.9rem;color:var(--text-primary);text-align:left;width:100%;border:none}.profile-faq-item:hover{background:var(--bg-hover, rgba(167, 139, 250, .04))}.profile-faq-item svg:first-child{color:#a78bfa;flex-shrink:0}.profile-faq-arrow{margin-left:auto;color:var(--text-muted, #64748b);flex-shrink:0;transition:transform .2s}.profile-faq-arrow.is-open{transform:rotate(90deg)}.profile-faq-answer{padding:0 1rem .85rem 2.85rem;font-size:.84rem;line-height:1.6;color:var(--text-muted, #64748b);animation:faq-slide .2s ease-out}@keyframes faq-slide{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@media(min-width:1200px){.profile-info-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:768px){.profile-page{padding:0 .75rem}.profile-hero{flex-direction:column;align-items:stretch}.profile-hero-left{flex:1 1 auto}.profile-hero-contact{flex-direction:row;flex-wrap:wrap;gap:.5rem 1.25rem;padding-top:.25rem;border-top:1px solid var(--border-color, #e2e8f0)}.profile-hero-contact-item span{max-width:none}.profile-info-grid{grid-template-columns:repeat(2,1fr);gap:.75rem 1.5rem}.profile-section{padding:1rem 1.15rem}.profile-table-wrap{margin:0 -1.15rem;padding:0 1.15rem}.profile-shortcut-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.profile-page{padding:0 .5rem}.profile-hero-left{gap:.75rem}.profile-avatar{width:56px;height:56px}.profile-avatar--initials{font-size:1.2rem}.profile-hero-role{font-size:.85rem}.profile-hero-dept{font-size:.78rem}.profile-hero-contact{font-size:.82rem;flex-direction:column;gap:.35rem}.profile-tabs{gap:0}.profile-tab{padding:.55rem .6rem;font-size:.78rem;gap:.25rem}.profile-tab-icon{font-size:.9rem}.profile-info-grid{grid-template-columns:1fr;gap:.65rem}.profile-section{padding:.85rem 1rem;border-radius:12px}.profile-table-wrap{margin:0 -1rem;padding:0 1rem}.profile-table{font-size:.82rem}.profile-table th{font-size:.72rem;padding:.5rem}.profile-table td{padding:.5rem}.profile-shortcut-grid{grid-template-columns:1fr}.profile-shortcut-icon{width:36px;height:36px}.profile-faq-item{font-size:.84rem;padding:.65rem .85rem;gap:.5rem}.profile-faq-answer{padding:0 .85rem .75rem 2.2rem;font-size:.8rem}}@media(max-width:360px){.profile-avatar{width:46px;height:46px}.profile-avatar--initials{font-size:1rem}.profile-tab{padding:.5rem .45rem;font-size:.72rem}.profile-tab .profile-tab-icon{display:none}.profile-hero-contact-item span{font-size:.78rem}}.req-page h2{margin:0}.req-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem;gap:1rem;flex-wrap:wrap}.req-create-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:14px;padding:1.25rem;margin-bottom:1.25rem;box-shadow:var(--shadow-sm);animation:req-slide-down .25s ease}@keyframes req-slide-down{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.req-create-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem 1rem;margin-bottom:1rem}.req-create-field{display:flex;flex-direction:column;gap:.3rem;font-size:.85rem;font-weight:500;color:var(--text-secondary)}.req-create-field--wide{grid-column:1 / -1}.req-create-field select,.req-create-field input,.req-create-field textarea{padding:.5rem .7rem;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);font-size:.88rem;font-family:inherit;transition:border-color .2s}.req-create-field select:focus,.req-create-field input:focus,.req-create-field textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #6366f11f}.req-create-field textarea{resize:vertical;min-height:60px}.req-create-actions{display:flex;gap:.5rem;justify-content:flex-end}.req-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.25rem}.req-stat-card{display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:1.1rem;border-radius:14px;background:var(--bg-secondary);border:1px solid var(--border-color);box-shadow:var(--shadow-sm)}.req-stat-num{font-size:2rem;font-weight:800;font-variant-numeric:tabular-nums}.req-stat-label{font-size:.82rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.req-stat--pending{border-top:4px solid #f59e0b}.req-stat--pending .req-stat-num{color:#d97706}.req-stat--approved{border-top:4px solid #22c55e}.req-stat--approved .req-stat-num{color:#16a34a}.req-stat--rejected{border-top:4px solid #ef4444}.req-stat--rejected .req-stat-num{color:#dc2626}[data-theme=dark] .req-stat--pending .req-stat-num{color:#fbbf24}[data-theme=dark] .req-stat--approved .req-stat-num{color:#4ade80}[data-theme=dark] .req-stat--rejected .req-stat-num{color:#f87171}.req-status-tabs{display:flex;gap:.5rem;margin-bottom:.75rem}.req-status-tab{display:flex;align-items:center;gap:.4rem;padding:.5rem 1rem;border-radius:999px;border:2px solid var(--border-color);background:var(--bg-secondary);font-size:.88rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all .2s;font-family:inherit}.req-status-tab:hover{border-color:var(--tab-color, var(--primary))}.req-status-tab.active{background:var(--tab-color, var(--primary));color:#fff;border-color:var(--tab-color, var(--primary))}.req-tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 .35rem;border-radius:999px;font-size:.72rem;font-weight:700}.req-status-tab:not(.active) .req-tab-badge{background:var(--bg-tertiary);color:var(--text-secondary)}.req-status-tab.active .req-tab-badge{background:#ffffff40}.req-type-tabs{display:flex;gap:.4rem;margin-bottom:1.25rem;flex-wrap:wrap}.req-type-tab{display:flex;align-items:center;gap:.3rem;padding:.4rem .75rem;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-secondary);font-size:.82rem;font-weight:500;color:var(--text-muted);cursor:pointer;transition:all .2s;font-family:inherit}.req-type-tab:hover{border-color:var(--primary, #6366f1)}.req-type-tab.active{background:var(--primary, #6366f1);color:#fff;border-color:var(--primary)}.req-list{display:flex;flex-direction:column;gap:.75rem}.req-card{border-radius:14px;border:1px solid var(--border-color);background:var(--bg-secondary);box-shadow:var(--shadow-sm);overflow:hidden;transition:box-shadow .2s}.req-card:hover{box-shadow:var(--shadow-md)}.req-card--pending{border-left:4px solid #f59e0b}.req-card--approved{border-left:4px solid #22c55e}.req-card--rejected{border-left:4px solid #ef4444}.req-card-header{display:flex;align-items:center;gap:.75rem;padding:.85rem 1.25rem;border-bottom:1px solid var(--border-color)}.req-card-type-icon{font-size:1.35rem}.req-card-meta{display:flex;flex-direction:column;gap:.1rem;flex:1}.req-card-employee{font-weight:600;font-size:.95rem;color:var(--text-primary)}.req-card-type-label{font-size:.8rem;color:var(--text-muted)}.req-card-status{padding:.2rem .65rem;border-radius:999px;font-size:.78rem;font-weight:600}.req-card-status.status--pending{background:#fef9c3;color:#a16207}.req-card-status.status--approved{background:#dcfce7;color:#15803d}.req-card-status.status--rejected{background:#fef2f2;color:#b91c1c}[data-theme=dark] .req-card-status.status--pending{background:#eab30826;color:#facc15}[data-theme=dark] .req-card-status.status--approved{background:#22c55e26;color:#4ade80}[data-theme=dark] .req-card-status.status--rejected{background:#ef444426;color:#f87171}.req-card-body{padding:.85rem 1.25rem}.req-card-detail{margin:0 0 .5rem;font-size:.92rem;color:var(--text-primary);line-height:1.5}.req-card-info{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.req-card-date{display:flex;align-items:center;gap:.35rem;font-size:.82rem;color:var(--text-muted)}.req-card-amount{font-weight:700;font-size:.95rem;color:var(--primary, #6366f1);font-variant-numeric:tabular-nums}.req-leave-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--border-color);border-radius:10px;overflow:hidden;margin-bottom:.65rem}.req-leave-cell{display:flex;flex-direction:column;gap:.2rem;padding:.6rem .8rem;border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color)}.req-leave-cell:nth-child(4n){border-right:none}.req-leave-cell:nth-last-child(-n+4):not(.req-leave-cell--wide){border-bottom:none}.req-leave-cell--wide{grid-column:1 / -1;border-right:none;border-bottom:none;border-top:1px solid var(--border-color)}.req-leave-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.req-leave-value{font-size:.88rem;font-weight:500;color:var(--text-primary)}.req-leave-value--type{color:var(--primary, #6366f1);font-weight:600}.req-leave-value--days{font-weight:800;font-size:1rem;font-variant-numeric:tabular-nums}.req-card-actions{display:flex;gap:.5rem;padding:.65rem 1.25rem;border-top:1px solid var(--border-color);background:var(--bg-tertiary, rgba(0,0,0,.02));flex-wrap:wrap;align-items:center}.req-btn{display:flex;align-items:center;gap:.35rem;padding:.45rem 1rem;border-radius:8px;border:none;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s;font-family:inherit}.req-btn--create{background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff;padding:.5rem 1.25rem;border-radius:10px;box-shadow:0 2px 10px #4f46e54d}.req-btn--create:hover{box-shadow:0 4px 16px #4f46e573;transform:translateY(-1px)}.req-btn--approve{background:#22c55e;color:#fff}.req-btn--approve:hover{background:#16a34a;box-shadow:0 2px 10px #22c55e4d}.req-btn--reject{background:#ef4444;color:#fff}.req-btn--reject:hover{background:#dc2626;box-shadow:0 2px 10px #ef44444d}.req-btn--view{background:transparent;color:var(--text-muted);border:1px solid var(--border-color);padding:.35rem .75rem;font-size:.8rem}.req-btn--view:hover{color:var(--primary-color);border-color:var(--primary-color);background:#6366f10f}.req-btn--contact{background:transparent;color:var(--text-muted);border:1px solid var(--border-color);padding:.35rem .75rem;font-size:.8rem}.req-btn--contact:hover{color:#3b82f6;border-color:#3b82f6;background:#3b82f60f}.req-btn--cancel{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color)}.req-btn--cancel:hover{background:var(--border-color)}.req-btn--submit{background:var(--primary-color, #6366f1);color:#fff}.req-btn--submit:hover{filter:brightness(1.1)}.req-btn--submit:disabled{opacity:.5;cursor:not-allowed}.req-empty{color:var(--text-muted);text-align:center;padding:3rem 0;font-size:.95rem}.req-overlay{position:fixed;inset:0;z-index:1100;background:#00000073;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;animation:req-fade-in .2s ease}@keyframes req-fade-in{0%{opacity:0}to{opacity:1}}.req-detail-modal,.req-contact-modal{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;width:min(90vw,480px);box-shadow:0 20px 60px #00000040;animation:req-modal-pop .25s cubic-bezier(.34,1.56,.64,1);overflow:hidden}@keyframes req-modal-pop{0%{opacity:0;transform:scale(.92) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.req-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border-color);font-weight:700;font-size:1.05rem;color:var(--text-primary)}.req-modal-close{width:30px;height:30px;border-radius:8px;border:none;background:var(--bg-tertiary);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.req-modal-close:hover{background:var(--border-color);color:var(--text-primary)}.req-modal-body{padding:1.25rem}.req-modal-footer{display:flex;gap:.5rem;justify-content:flex-end;padding:.75rem 1.25rem;border-top:1px solid var(--border-color);background:var(--bg-tertiary)}.req-detail-row{display:flex;gap:.75rem;padding:.5rem 0;border-bottom:1px solid var(--border-light, var(--border-color));align-items:baseline}.req-detail-row:last-child{border-bottom:none}.req-detail-row--full{flex-direction:column;gap:.3rem}.req-detail-label{font-size:.82rem;font-weight:600;color:var(--text-muted);min-width:100px;flex-shrink:0}.req-detail-value{font-size:.92rem;color:var(--text-primary)}.req-contact-textarea{width:100%;min-height:80px;resize:vertical;padding:.65rem .8rem;border-radius:10px;border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);font-family:inherit;font-size:.88rem;margin-bottom:.75rem;transition:border-color .2s}.req-contact-textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #6366f11f}.req-contact-sent{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.5rem 0;color:#16a34a;font-weight:600;font-size:.95rem}@media(max-width:640px){.req-stats{grid-template-columns:1fr}.req-status-tabs{overflow-x:auto;flex-wrap:nowrap}.req-header{flex-direction:column;align-items:stretch}.req-create-grid{grid-template-columns:1fr}.req-leave-grid{grid-template-columns:repeat(2,1fr)}.req-leave-cell:nth-child(2n){border-right:none}.req-leave-cell:nth-child(4n){border-right:none}}.chat-page{display:flex;flex-direction:column;height:calc(100vh - 80px);gap:1rem;padding:0}.chat-page-header{flex-shrink:0}.chat-page-header h1{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin:0}.chat-page-header p{font-size:.875rem;color:var(--text-muted);margin:.25rem 0 0}.chat-page-body{flex:1;min-height:0;display:flex;flex-direction:column}.chat-page-body .cw-embedded{flex:1;min-height:0}@media(max-width:768px){.chat-page{height:calc(100vh - 60px)}}.settings{max-width:720px;margin:0 auto}.settings-status{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:10px;margin-bottom:1.25rem;font-weight:500;font-size:.9rem}.settings-status.connected{background:var(--success-bg);color:var(--success-text);border:1px solid var(--success-border)}.settings-status.disconnected{background:var(--warning-bg);color:var(--warning-text);border:1px solid var(--warning-border)}.settings-meta{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem;margin-bottom:1.25rem}.settings-meta-item{background:var(--bg-tertiary);border-radius:8px;padding:.75rem 1rem}.settings-meta-item dt{font-size:.75rem;text-transform:uppercase;color:var(--text-muted);margin-bottom:.25rem;font-weight:600}.settings-meta-item dd{margin:0;font-size:.9rem;color:var(--text-primary);font-weight:500;word-break:break-all}.settings-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:1.25rem}.settings-token-form{display:flex;gap:.75rem;align-items:flex-end;flex-wrap:wrap}.settings-token-form .form-group{flex:1;min-width:240px}.settings-progress{margin-top:1.25rem}.settings-progress-bar{width:100%;height:8px;background:var(--bg-tertiary);border-radius:4px;overflow:hidden;margin-bottom:.75rem}.settings-progress-bar-fill{height:100%;background:var(--primary-color);border-radius:4px;transition:width .4s ease}.settings-progress-steps{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.5rem}.settings-progress-step{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--text-secondary)}.settings-progress-step.done{color:var(--success-text)}.settings-progress-step.active{color:var(--primary-color);font-weight:600}.settings-errors{margin-top:1rem;padding:.75rem 1rem;background:var(--error-bg);color:var(--error-text);border:1px solid var(--error-border);border-radius:8px;font-size:.85rem}.settings-errors ul{margin:.25rem 0 0 1.25rem;padding:0}.excel-import{max-width:900px;margin:0 auto}.excel-import-header{display:flex;align-items:center;gap:1rem;margin-bottom:.25rem}.excel-import-header h2{margin:0}.excel-import-desc{color:var(--text-secondary);margin-bottom:1.25rem;font-size:.92rem}.excel-dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:3rem 2rem;border:2px dashed var(--border-color);border-radius:14px;background:var(--bg-secondary);text-align:center;transition:border-color .2s,background .2s;cursor:pointer}.excel-dropzone:hover,.excel-dropzone:focus-within{border-color:var(--primary-color);background:var(--bg-tertiary)}.excel-dropzone p{margin:0;color:var(--text-secondary);font-size:.95rem}.excel-dropzone-hint{font-size:.78rem;color:var(--text-muted)}.excel-file-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem}.excel-file-name{font-weight:600;font-size:.95rem;color:var(--text-primary);display:flex;align-items:center;gap:.5rem}.excel-file-name:before{content:"";display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--success-text)}.excel-sheet-selector{display:flex;align-items:center;gap:.75rem;margin-bottom:1.25rem}.excel-sheet-selector label{font-weight:600;font-size:.85rem;color:var(--text-secondary)}.excel-sheet-tabs{display:flex;gap:.25rem}.excel-sheet-tab{padding:.35rem .85rem;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-secondary);color:var(--text-secondary);font-size:.82rem;cursor:pointer;transition:all .15s}.excel-sheet-tab.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.excel-mapping{margin-bottom:1.5rem}.excel-mapping h3{font-size:.95rem;margin:0 0 .75rem;color:var(--text-primary)}.excel-mapping-grid{display:flex;flex-direction:column;gap:.5rem}.excel-mapping-row{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.75rem;padding:.5rem .75rem;background:var(--bg-tertiary);border-radius:8px}.excel-mapping-source{font-size:.88rem;font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.excel-mapping-arrow{font-size:.78rem;color:var(--text-muted);white-space:nowrap}.excel-mapping-row select{padding:.4rem .5rem;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-primary);color:var(--text-secondary);font-size:.85rem;min-width:0}.excel-mapping-row select.mapped{border-color:var(--primary-color);color:var(--text-primary);font-weight:500}.excel-preview{margin-bottom:1.25rem}.excel-preview h3{font-size:.95rem;margin:0 0 .75rem;color:var(--text-primary)}.excel-preview-table-wrap{overflow-x:auto;border:1px solid var(--border-color);border-radius:10px}.excel-preview-table{width:100%;border-collapse:collapse;font-size:.84rem}.excel-preview-table th{background:var(--bg-tertiary);padding:.5rem .75rem;text-align:left;font-weight:600;color:var(--text-secondary);white-space:nowrap;border-bottom:1px solid var(--border-color)}.excel-preview-table td{padding:.45rem .75rem;border-bottom:1px solid var(--border-color);color:var(--text-primary);white-space:nowrap;max-width:200px;overflow:hidden;text-overflow:ellipsis}.excel-preview-idx{color:var(--text-muted);font-size:.78rem;width:2rem;text-align:center}.excel-preview-more{text-align:center;color:var(--text-muted);font-style:italic;padding:.5rem!important}.excel-actions{display:flex;gap:.75rem;margin-bottom:1rem}.excel-result{padding:1rem 1.25rem;border-radius:10px;font-size:.9rem}.excel-result.success{background:var(--success-bg);color:var(--success-text);border:1px solid var(--success-border)}.excel-result.partial{background:var(--warning-bg);color:var(--warning-text);border:1px solid var(--warning-border)}.excel-result p{margin:0 0 .25rem}.excel-result ul{margin:.5rem 0 0 1.25rem;padding:0;font-size:.82rem}@media(max-width:600px){.excel-mapping-row{grid-template-columns:1fr;gap:.25rem}.excel-mapping-arrow{display:none}}
