/* Data cockpit: quiet white workspace, navy navigation, LEGEND brand motion. */
:root{--bg-primary:#edf1f6;--bg-secondary:#f5f7fb;--bg-tertiary:#e7edf5;--bg-card:#fff;--bg-hover:#e9f0fb;--text-primary:#223149;--text-secondary:#5f6f86;--text-tertiary:#728096;--border-color:#dfe6ef;--border-hover:#b9c9df;--border:#dfe6ef;--accent-cyan:#3476d4;--accent-pink:#5569ab;--accent-purple:#6366b3;--success:#19875f;--warning:#a76509;--danger:#d93040;--radius:6px;--radius-sm:5px;--radius-lg:9px}
body{background:var(--bg-primary)}
.main{position:relative;min-width:0}
.main::before{content:'LEGEND';position:absolute;right:35px;bottom:20px;letter-spacing:.09em;font-weight:850;font-size:clamp(55px,10vw,155px);color:rgba(37,64,105,.045);pointer-events:none;z-index:0}
.content{position:relative;z-index:1;padding:22px 26px}
.topbar{background:#fff;border-bottom:1px solid var(--border-color);position:relative;z-index:3;min-height:64px;height:auto;flex-shrink:0;gap:12px}
.topbar-right{flex-wrap:wrap;justify-content:flex-end;gap:10px;min-width:0}
.topbar-right .search-box{background:#f5f7fb;border:1px solid var(--border-color)}
.page-title{font-size:20px;font-weight:700}
.card,.kpi-card,.revenue-card{border-radius:6px;border:1px solid var(--border-color);box-shadow:0 1px 2px rgba(20,40,72,.025)}
.card-header{padding:16px 20px}.card-title{font-size:15px}.data-table th{background:#f6f8fb;color:#617088;font-size:12px;letter-spacing:0}.data-table td{border-bottom-color:#e8edf3}.data-table tr:hover td{background:#f4f7fb}
.btn-primary{background:#3476d4;color:#fff;box-shadow:none;border-radius:5px}.btn-primary:hover{background:#2863b9;box-shadow:none}.btn-secondary{border:1px solid #d9e2ef;background:#fff;color:#405674;border-radius:5px}.btn-secondary:hover{background:#edf3fc}.form-input,.filter-select,.form-control{background:#fff;border-color:#d7e0ec;color:#223149}.form-input:focus{border-color:#3476d4}
.modal{background:#fff;border:1px solid #dfe6ef;box-shadow:0 18px 60px rgba(13,31,56,.22);border-radius:9px}.modal-overlay{background:rgba(20,34,55,.36);backdrop-filter:blur(3px)}.modal-close{color:#55657c}.login-overlay{background:radial-gradient(ellipse at 25% 20%,#e2edfc 0,transparent 55%),#eef2f7}.login-card{background:#fff;border-color:#dfe6ef;box-shadow:0 18px 60px rgba(31,50,81,.1)}.login-input{background:#f8faff;color:#223149;border-color:#d7e0ec}.login-btn{background:#3476d4;color:#fff}
.revenue-card{padding:20px}.revenue-card::before{display:none}.revenue-card:hover{transform:none;box-shadow:0 2px 7px rgba(20,40,72,.06)}.revenue-card-value{font-size:32px;letter-spacing:-.8px}.revenue-card.group .revenue-card-value,.revenue-card.individual .revenue-card-value{color:#284c80}.revenue-card-label{color:#63738a}.revenue-card-growth.up{background:#eaf6f0;color:#19764f}
.org-department-card,.org-team-card{background:#fff;border-color:#dfe6ef;box-shadow:none}.org-team-card summary{background:#f7f9fc}.users-account{background:#fff;border-color:#dfe6ef}.users-role-badge{background:#eaf1fd;color:#315c9c}
.legend-banner{background:linear-gradient(110deg,#172c48,#203e65 70%,#285482);border:1px solid #304e72;min-height:128px;border-radius:8px;margin-bottom:20px;padding:23px 28px;display:flex;align-items:center;justify-content:space-between;gap:24px;position:relative;isolation:isolate;overflow:hidden;color:#fff}
.legend-banner::before{content:'LEGEND';position:absolute;right:14px;top:-34px;font-size:138px;font-weight:850;letter-spacing:.05em;color:rgba(173,205,243,.075);z-index:-1;pointer-events:none}
.legend-banner::after{content:'';position:absolute;inset:-80% -35%;background:linear-gradient(115deg,transparent 42%,rgba(129,189,255,.08) 49%,rgba(182,216,255,.17) 50%,transparent 58%);transform:translateX(-35%);animation:legend-sweep 12s ease-in-out infinite;z-index:-1;pointer-events:none}
.legend-eyebrow{font-size:11px;letter-spacing:.18em;color:#bfd6f2;font-weight:650;margin-bottom:6px}.legend-banner h2{font-size:23px;line-height:1.45;letter-spacing:.01em;font-weight:700}.legend-banner p{margin-top:8px;font-size:13px;color:#c4d5ed}.legend-banner-copy{max-width:72%;z-index:1}.legend-banner-meta{min-width:180px;z-index:1}.legend-banner-meta .sidebar-footer{padding:0;border:0}.legend-banner-meta .guild-status{gap:8px}.legend-banner-meta .status-row{gap:20px}.legend-banner-meta .status-label{color:#c1d2e7}.legend-banner-meta .status-value,.legend-banner-meta .status-value.cyan{color:#fff;font-variant-numeric:tabular-nums}
.legend-motion-grid{position:absolute;inset:0 0 0 60%;background-image:linear-gradient(rgba(155,196,245,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(155,196,245,.08) 1px,transparent 1px);background-size:28px 28px;transform:skewX(-20deg);animation:legend-grid 18s linear infinite;z-index:-2;pointer-events:none;mask-image:linear-gradient(90deg,transparent,#000)}
@keyframes legend-sweep{0%,30%{transform:translateX(-45%)}75%,100%{transform:translateX(45%)}}
@keyframes legend-grid{from{background-position:0 0}to{background-position:56px 28px}}
.console-nav-group summary{list-style:none}.console-nav-group summary::-webkit-details-marker{display:none}.console-nav-group summary:focus-visible{outline:2px solid #8ebafa;outline-offset:2px}.console-nav-group summary::after{content:'⌄';margin-left:7px;opacity:.7}.console-nav-group summary{display:flex;align-items:center;cursor:pointer}.console-nav-group .nav-section-title{padding:10px 8px}.console-nav-group:not([open]) .console-nav-panel{display:none}
.legend-banner-meta .guild-status{background:transparent;padding:0;border:0;border-radius:0}
.console-nav-panel .nav-submenu{margin:0;border:0}
@media(min-width:1100px){
 .app{flex-direction:column}.sidebar,.sidebar.collapsed{width:100%;height:auto;background:#172438;flex-direction:row;align-items:center;border-right:0;border-bottom:1px solid #2c3e59;overflow:visible;z-index:100}
 .sidebar-header{padding:15px 20px;min-width:220px;border-bottom:0;border-right:1px solid #304259}.logo-text,.sidebar.collapsed .logo-text{display:block;background:none;-webkit-text-fill-color:#eef4ff;color:#eef4ff;font-size:15px;white-space:nowrap}.logo-icon{filter:none;width:26px;height:26px}.logo-icon svg{width:24px;height:24px}#sidebarToggle{display:none}
 .sidebar-nav{display:flex;flex-wrap:wrap;align-items:center;gap:5px;padding:7px 12px;overflow:visible}.nav-section{margin:0;position:relative}.console-nav-group summary{padding:0 7px;color:#c7d5e8;border-radius:5px}.console-nav-group .nav-section-title{font-size:13px;letter-spacing:0;text-transform:none;color:inherit;white-space:nowrap;padding:10px 0}.console-nav-group[open] summary,.console-nav-group summary:hover{background:#2b4160;color:#fff}
 .console-nav-panel{position:absolute;top:calc(100% + 7px);left:0;min-width:200px;max-height:calc(100vh - 155px);overflow:auto;padding:8px;background:#fff;border:1px solid #dfe6ef;border-radius:7px;box-shadow:0 12px 32px rgba(21,38,63,.18);z-index:120}.nav-section:nth-last-child(-n+2) .console-nav-panel{left:auto;right:0}.nav-item{padding:10px 12px;color:#4c5e78;margin:0;font-size:13px}.nav-item.active{background:#eaf1fc;color:#2e67b5}.nav-item.active::before{display:none}.sidebar.collapsed .nav-item span{display:initial}.main{flex:1;min-height:0;width:100%}.sidebar.collapsed .sidebar-nav{padding:7px 12px}.nav-item svg{width:17px;height:17px}
 .console-nav-group:has(.nav-item.active) summary{color:#c4ddff;box-shadow:inset 0 -2px #6aa5f4}.sidebar.collapsed .nav-section-title{display:block}
}
@media(max-width:1099px){.console-nav-panel{padding:0}.console-nav-group summary{color:#62718a}.sidebar{background:#fff}.sidebar.collapsed .console-nav-group summary{display:none}.legend-banner{padding:20px}.legend-banner h2{font-size:20px}.legend-banner-copy{max-width:65%}}
@media(max-width:768px){.content{padding:14px}.legend-banner{flex-direction:column;align-items:flex-start;gap:15px;min-height:140px;padding:19px}.legend-banner-copy{max-width:100%}.legend-banner-meta{width:100%}.legend-banner-meta .guild-status{display:flex;justify-content:space-between;gap:18px}.legend-banner-meta .status-row{display:flex;gap:8px;flex-wrap:wrap}.legend-banner::before{font-size:84px;top:35px;right:-10px}.legend-motion-grid{inset:0 0 0 30%}.topbar{padding:12px 15px;flex-wrap:wrap}.topbar-right{width:100%;justify-content:flex-start;gap:8px}.topbar-right .search-box{display:none}#roleDisplay span{font-size:12px!important;padding:5px 8px!important}.page-title{font-size:18px}.legend-banner h2{font-size:19px}.data-table th,.data-table td{font-size:12px}.revenue-card-value{font-size:28px}}
@media(prefers-reduced-motion:reduce){.legend-banner::after,.legend-motion-grid{animation:none}}
