@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{--bg:#f3f3f9;--bg-secondary:#fff;--card-bg:#fff;--input-bg:#fff;--text:#495057;--text-heading:#1a1d21;--text-muted:#878a99;--border:#e9ebec;--primary:#405189;--primary-hover:#34426d;--primary-soft:#4051891a;--success:#0ab39c;--success-soft:#0ab39c1a;--danger:#f06548;--danger-soft:#f065481a;--warning:#f7b84b;--warning-soft:#f7b84b1a;--info:#299cdb;--info-soft:#299cdb1a;--muted-soft:#878a991f;--radius:.5rem;--radius-sm:.375rem;--shadow:0 2px 4px #1e202512;--shadow-lg:0 10px 30px #1e20251f;--sidebar-width:250px}body.dark{--bg:#1a1d21;--bg-secondary:#212529;--card-bg:#212529;--input-bg:#2a2f34;--text:#ced4da;--text-heading:#f3f4f6;--text-muted:#9299a1;--border:#32383e}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{background:var(--bg);color:var(--text);min-height:100vh;font-family:Inter,sans-serif;line-height:1.55;transition:background .2s,color .2s;overflow-x:hidden}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit;transition:all .15s}input,select,textarea{font-family:inherit}h1,h2,h3,h4,h5{color:var(--text-heading);font-weight:600}.page h2{margin-block-end:1.25rem;font-size:1.4rem}.page h3{margin-block-end:.75rem;font-size:1.05rem}.page-loading{min-height:60vh;color:var(--text-muted);justify-content:center;align-items:center;display:flex}.layout{min-height:100vh}.main-content{max-width:1400px;margin-inline:auto;padding:1.5rem;overflow-x:hidden}.layout-vertical .main-wrapper{flex-direction:column;min-width:0;display:flex}.sidebar{width:var(--sidebar-width);background:var(--bg-secondary);border-inline-end:1px solid var(--border);z-index:100;padding:1.25rem 1rem;transition:transform .25s;position:fixed;inset-block:0;inset-inline-start:0;overflow-y:auto;transform:translate(-100%)}[dir=rtl] .sidebar{transform:translate(100%)}.sidebar-backdrop{z-index:99;background:#0006;position:fixed;inset:0}.sidebar-header{white-space:nowrap;align-items:center;gap:10px;margin-block-end:1.5rem;display:flex}.sidebar-header .brand,.topbar-brand .brand{color:var(--text-heading);font-size:1.1rem;font-weight:700}.sidebar-nav ul{list-style:none}.sidebar-nav li{margin-block-end:2px}.sidebar-nav a{border-radius:var(--radius-sm);color:var(--text);white-space:nowrap;align-items:center;gap:10px;padding:.6rem .75rem;font-size:.9rem;font-weight:500;display:flex}.sidebar-nav a:hover{background:var(--primary-soft);color:var(--primary)}.sidebar-nav a.active{background:var(--primary);color:#fff}@media (width>=992px){.sidebar{transform:translate(0)!important}.layout-vertical .main-wrapper{margin-inline-start:var(--sidebar-width);transition:margin-inline-start .2s}.layout-vertical .sidebar-backdrop{display:none}}.sidebar-collapse-btn{border:1px solid var(--border);color:var(--text-muted);background:0 0;border-radius:4px;width:22px;height:22px;margin-inline-start:auto;font-size:.8rem;display:none}@media (width>=992px){.sidebar-collapse-btn{display:block}}.sidebar{transition:width .2s}.sidebar-collapsed .sidebar{width:72px}.sidebar-collapsed .sidebar-header .brand,.sidebar-collapsed .nav-label{display:none}.sidebar-collapsed .sidebar-header{justify-content:center}.sidebar-collapsed .sidebar-collapse-btn{margin-inline-start:0}.sidebar-collapsed .sidebar-nav a{justify-content:center}@media (width>=992px){.sidebar-collapsed .main-wrapper{margin-inline-start:72px}}.layout-vertical .main-header{background:var(--bg-secondary);border-block-end:1px solid var(--border);z-index:60;align-items:center;gap:1rem;padding:.75rem 1.25rem;display:flex;position:sticky;top:0}.topbar-band-1{background:var(--bg-secondary);border-block-end:1px solid var(--border);z-index:60;align-items:center;gap:1rem;padding:.7rem 1.5rem;display:flex;position:sticky;top:0}.topbar-brand{white-space:nowrap;align-items:center;gap:10px;display:flex}.topbar-band-2{background:var(--bg-secondary);border-block-end:1px solid var(--border);z-index:55;position:sticky;top:57px;overflow-x:auto}.topbar-band-2 ul{white-space:nowrap;gap:.25rem;padding:.4rem 1.5rem;list-style:none;display:flex}.topbar-band-2 a{border-radius:var(--radius-sm);color:var(--text);align-items:center;gap:8px;padding:.5rem .9rem;font-size:.88rem;font-weight:500;display:flex}.topbar-band-2 a:hover{background:var(--primary-soft);color:var(--primary)}.topbar-band-2 a.active{background:var(--primary);color:#fff}@media (width<=991px){.topbar-band-2{display:none}.topbar-band-2.open{display:block}.topbar-band-2 ul{flex-direction:column;padding:.5rem 1rem}}@media (width>=992px){.layout-horizontal .burger-btn{display:none}}.topbar-spacer{flex:1}.burger-btn{color:var(--text);background:0 0;border:none;padding:4px;font-size:1.3rem}.topbar-actions{align-items:center;gap:.4rem;display:flex}.icon-btn{color:var(--text);background:0 0;border:none;border-radius:50%;padding:.45rem;font-size:1.05rem;line-height:1;position:relative}.icon-btn:hover{background:var(--bg)}.avatar-img,.avatar-initials{color:#fff;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.user-menu{position:relative}.user-menu-trigger{background:0 0;border:none;border-radius:999px;align-items:center;gap:8px;padding:.25rem .5rem .25rem .25rem;display:flex}.user-menu-trigger:hover{background:var(--bg)}.user-menu-name{color:var(--text-heading);font-size:.88rem;font-weight:600}.user-menu-dropdown{inset-inline-end:0;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);width:220px;box-shadow:var(--shadow-lg);z-index:200;position:absolute;top:calc(100% + 8px);overflow:hidden}.user-menu-info{border-block-end:1px solid var(--border);flex-direction:column;padding:.9rem 1rem;display:flex}.user-menu-info span{color:var(--text-muted);font-size:.8rem}.user-menu-dropdown a,.user-menu-dropdown button{text-align:start;width:100%;color:var(--text);background:0 0;border:none;padding:.65rem 1rem;font-size:.88rem;display:block}.user-menu-dropdown a:hover,.user-menu-dropdown button:hover{background:var(--bg)}.notif-wrap{position:relative}.notif-badge{top:2px;background:var(--danger);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 3px;font-size:.62rem;font-weight:700;display:flex;position:absolute;inset-inline-end:2px}.notif-dropdown{inset-inline-end:0;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);width:320px;max-width:90vw;box-shadow:var(--shadow-lg);z-index:200;position:absolute;top:calc(100% + 8px);overflow:hidden}.notif-dropdown-header{border-block-end:1px solid var(--border);color:var(--text-heading);justify-content:space-between;align-items:center;padding:.8rem 1rem;font-weight:600;display:flex}.notif-mark-all{color:var(--primary);background:0 0;border:none;font-size:.78rem;font-weight:600}.notif-list{max-height:320px;overflow-y:auto}.notif-item{border-block-end:1px solid var(--border);cursor:pointer;padding:.7rem 1rem}.notif-item:hover{background:var(--bg)}.notif-item.unread{background:var(--primary-soft)}.notif-item p{color:var(--text);margin-block-end:4px;font-size:.85rem}.notif-date{color:var(--text-muted);font-size:.72rem}.notif-empty{text-align:center;color:var(--text-muted);padding:1.5rem 1rem;font-size:.85rem}.customizer-backdrop{z-index:299;opacity:0;pointer-events:none;background:#00000059;transition:opacity .2s;position:fixed;inset:0}.customizer-backdrop.open{opacity:1;pointer-events:auto}.customizer-panel{background:var(--card-bg);border-inline-start:1px solid var(--border);width:300px;max-width:85vw;box-shadow:var(--shadow-lg);z-index:300;padding:1.25rem;transition:transform .25s;position:fixed;inset-block:0;inset-inline-end:0;overflow-y:auto;transform:translate(100%)}.customizer-panel.open{transform:translate(0)}[dir=rtl] .customizer-panel{transform:translate(-100%)}[dir=rtl] .customizer-panel.open{transform:translate(0)}.customizer-header{justify-content:space-between;align-items:center;margin-block-end:1.5rem;display:flex}.customizer-section{margin-block-end:1.75rem}.customizer-section h4{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;margin-block-end:.75rem;font-size:.85rem}.customizer-options{gap:.75rem;display:flex}.customizer-swatch{border:2px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text);flex-direction:column;flex:1;align-items:center;gap:8px;padding:.75rem .5rem;font-size:.78rem;font-weight:600;display:flex}.customizer-swatch.active{border-color:var(--primary);color:var(--primary)}.swatch-preview{border:1px solid var(--border);border-radius:4px;justify-content:center;align-items:center;width:100%;height:40px;font-size:1.1rem;display:flex;overflow:hidden}.swatch-vertical{background:#fff}.swatch-vertical span:first-child{background:#405189;width:28%;height:100%;display:inline-block}.swatch-horizontal{background:#fff;flex-direction:column}.swatch-horizontal span:first-child{background:#405189;width:100%;height:35%;display:block}.swatch-light{background:linear-gradient(135deg,#fff 50%,#f3f3f9 50%)}.swatch-dark{background:linear-gradient(135deg,#212529 50%,#1a1d21 50%)}.swatch-ltr,.swatch-rtl{color:var(--primary);background:#fff;font-weight:700}.btn{background:var(--primary);color:#fff;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;border:none;justify-content:center;align-items:center;gap:6px;padding:.55rem 1.1rem;font-size:.88rem;font-weight:600;display:inline-flex}.btn:hover{background:var(--primary-hover)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-block{width:100%}.btn-sm{padding:.35rem .7rem;font-size:.8rem}.btn-danger{background:var(--danger)}.btn-danger:hover{background:#d9502f}.btn-success{background:var(--success)}.btn-success:hover{background:#089480}.btn-outline{border:1px solid var(--primary);color:var(--primary);background:0 0}.btn-outline:hover{background:var(--primary-soft)}.card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-block-end:1.25rem;padding:1.25rem}.card-label{color:var(--text-muted);font-size:.82rem;font-weight:500}.card-value{color:var(--text-heading);margin-block-start:4px;font-size:1.5rem;font-weight:700}.grid-cards{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-block-end:1.25rem;display:grid}.grid-cards .card,.grid-cards a .card{margin-block-end:0}.grid-cards a{display:block}.stat-card{align-items:center;gap:1rem;display:flex}.stat-icon{border-radius:var(--radius);background:var(--primary-soft);width:48px;height:48px;color:var(--primary);flex-shrink:0;justify-content:center;align-items:center;font-size:1.35rem;display:flex}.card-success .stat-icon{background:var(--success-soft);color:var(--success)}.card-warning .stat-icon{background:var(--warning-soft);color:var(--warning)}.card-info .stat-icon{background:var(--info-soft);color:var(--info)}.table-container{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-block-end:1.25rem;padding:1.1rem;overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:start;border-block-end:1px solid var(--border);padding:.65rem .75rem;font-size:.88rem}th{background:var(--bg);color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:.72rem;font-weight:600}tbody tr:hover{background:var(--bg)}.form-container{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-block-end:1.25rem;padding:1.25rem}.form-container-highlight{border-color:var(--warning);background:var(--warning-soft)}.form-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.85rem;display:grid}.form-group label{color:var(--text-muted);margin-block-end:5px;font-size:.85rem;font-weight:600;display:block}.form-group input,.form-group select,.form-group textarea,.search-input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--input-bg);width:100%;color:var(--text);padding:.55rem .75rem;font-size:.9rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus,.search-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);outline:none}.tabs{flex-wrap:wrap;gap:.5rem;margin-block-end:1.25rem;display:flex}.tab{border-radius:var(--radius-sm);background:var(--card-bg);border:1px solid var(--border);color:var(--text);cursor:pointer;padding:.5rem 1.1rem;font-size:.88rem;font-weight:500}.tab.active{background:var(--primary);color:#fff;border-color:var(--primary)}.tab:hover:not(.active){background:var(--bg)}.badge{white-space:nowrap;border-radius:999px;align-items:center;gap:4px;margin-inline-end:4px;padding:3px 10px;font-size:.74rem;font-weight:700;display:inline-flex}.badge-success{background:var(--success-soft);color:var(--success)}.badge-danger{background:var(--danger-soft);color:var(--danger)}.badge-warning{background:var(--warning-soft);color:var(--warning)}.badge-muted{background:var(--muted-soft);color:var(--text-muted)}.badge-remove{color:var(--text-muted);background:0 0;border:none;padding:0 2px;font-size:.9rem;line-height:1}.badge-remove:hover{color:var(--danger)}.alert-success{background:var(--success-soft);color:var(--success);border-radius:var(--radius);margin-block-end:1.25rem;padding:.8rem 1.1rem;font-weight:500}.alert-error{background:var(--danger-soft);color:var(--danger);border-radius:var(--radius);margin-block-end:1.25rem;padding:.8rem 1.1rem;font-weight:500}.chart-container{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-block-end:1.25rem;padding:1.25rem;overflow-x:auto}.auth-screen{min-height:100vh;display:flex}.auth-brand-panel{background:linear-gradient(160deg, var(--primary) 0%, #2c3a66 100%);color:#fff;flex-direction:column;flex:1;justify-content:center;align-items:flex-start;gap:1rem;padding:4rem;display:flex}.auth-brand-panel h1{color:#fff;font-size:2rem}.auth-brand-panel p{color:#ffffffd9;max-width:420px;font-size:.95rem;line-height:1.6}.auth-form-panel{background:var(--bg);flex:1;justify-content:center;align-items:center;padding:2rem;display:flex}.auth-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:380px;box-shadow:var(--shadow);padding:2rem}.auth-card h2{margin-block-end:1.5rem}.auth-switch{text-align:center;color:var(--text-muted);margin-block-start:1.25rem;font-size:.88rem}.auth-switch a{color:var(--primary);font-weight:600}@media (width<=900px){.auth-brand-panel{display:none}}.msg-day-separator{text-align:center;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;margin:14px 0 10px;font-size:.72rem}.msg-row{border-radius:8px;gap:8px;margin-bottom:2px;padding:2px 4px;display:flex;position:relative}.msg-row:hover{background:var(--bg)}.msg-bubble-wrap{flex-direction:column;align-items:flex-start;max-width:70%;display:flex;position:relative}.msg-sender-name{color:var(--text-heading);margin-bottom:2px;font-size:.78rem}.msg-bubble{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);padding:.5rem .75rem;position:relative}.msg-row.own{flex-direction:row-reverse}.msg-row.own .msg-bubble-wrap{align-items:flex-end}.msg-row.own .msg-bubble{background:var(--primary-soft);border-color:#0000}.msg-content{white-space:pre-wrap;word-break:break-word;font-size:.9rem}.msg-time{color:var(--text-muted);margin-top:2px;font-size:.68rem;display:block}.msg-pin-flag{margin-inline-end:4px;font-size:.7rem}.msg-edit-box{align-items:center;gap:4px;display:flex}.msg-edit-box input{border:1px solid var(--border);background:var(--input-bg);color:var(--text);border-radius:4px;padding:4px 8px;font-size:.85rem}.msg-reactions{flex-wrap:wrap;gap:4px;margin-top:3px;display:flex}.msg-reaction-pill{border:1px solid var(--border);background:var(--card-bg);color:var(--text);border-radius:999px;padding:1px 7px;font-size:.72rem}.msg-reaction-pill.mine{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.msg-actions{top:-14px;background:var(--card-bg);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:999px;gap:2px;padding:2px 4px;display:flex;position:absolute;inset-inline-end:0}.msg-row.own .msg-actions{inset-inline:0 auto}.msg-action-btn{background:0 0;border:none;border-radius:4px;padding:2px 4px;font-size:.85rem}.msg-action-btn:hover{background:var(--bg)}.msg-attachment-image{border-radius:6px;max-width:220px;margin-top:4px;display:block}.msg-attachment-video{border-radius:6px;max-width:260px;margin-top:4px;display:block}.msg-attachment-audio{margin-top:4px}.msg-attachment-file{color:var(--primary);margin-top:4px;font-size:.85rem;display:inline-block}.pinned-bar{background:var(--warning-soft);border-radius:var(--radius-sm);align-items:center;gap:8px;margin-bottom:8px;padding:6px 10px;font-size:.8rem;display:flex;overflow-x:auto}.typing-indicator{color:var(--text-muted);padding:4px 10px;font-size:.78rem;font-style:italic}.empty-state{color:var(--text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:2.5rem 1rem;display:flex}.empty-state-icon{opacity:.5;margin-block-end:8px;font-size:2rem}.empty-state p{font-size:.88rem}.signature-canvas{border:1px dashed var(--border);border-radius:var(--radius-sm);touch-action:none;cursor:crosshair;background:#fff;max-width:100%}.disclaimer-banner{background:var(--warning-soft);color:#8a6d1f;border-radius:var(--radius);align-items:center;gap:8px;margin-block-end:1.25rem;padding:.7rem 1rem;font-size:.85rem;display:flex}.msg-back-btn{border-radius:var(--radius);color:var(--text-heading);background:0 0;border:none;padding:4px 6px;font-size:1.1rem;line-height:1;display:none}.msg-back-btn:hover{background:var(--bg)}@media (width<=768px){.main-content{padding:1rem}.user-menu-name{display:none}.grid-cards .card,.grid-cards a .card{padding-inline-end:1.25rem}.msg-back-btn{display:inline-flex}.msg-shell{flex-wrap:nowrap!important}.msg-shell .msg-sidebar{flex:auto!important;width:100%!important}.msg-shell .msg-main,.msg-shell.has-selection .msg-sidebar{display:none!important}.msg-shell.has-selection .msg-main{display:flex!important}}@media (width<=576px){.page{padding-inline:.25rem}.form-container,.table-container,.card{padding:.9rem!important}.auth-card{width:100%!important;padding:1.5rem!important}table{font-size:.82rem}}
