
/* Clubbify 0.3.4.1 – Modern Workspace UI */
:root{
    --ui-bg:#f4f7fb;
    --ui-surface:#ffffff;
    --ui-surface-soft:#f8fafc;
    --ui-text:#172033;
    --ui-muted:#64748b;
    --ui-border:#e4e9f1;
    --ui-primary:#155eef;
    --ui-primary-hover:#0b4fd7;
    --ui-sidebar:#071426;
    --ui-sidebar-soft:#10233e;
    --ui-green:#159669;
    --ui-yellow:#d99012;
    --ui-red:#dc4c55;
    --ui-blue:#2672ff;
    --ui-shadow:0 12px 32px rgba(31,42,68,.08);
    --ui-shadow-soft:0 4px 16px rgba(31,42,68,.06);
    --sidebar-width:268px;
}
html{scroll-behavior:smooth}
body{background:var(--ui-bg);color:var(--ui-text);font-size:14px}
.app-shell{display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);min-height:100vh}
.sidebar{width:var(--sidebar-width);background:linear-gradient(180deg,#071426 0%,#0a1a30 100%);padding:18px 14px 14px;border-right:1px solid rgba(255,255,255,.06);z-index:90}
.brand-logo-wrap{display:flex!important;align-items:center;gap:10px;padding:0 6px 18px!important}
.sidebar-logo{width:auto!important;max-width:184px!important;height:44px!important;background:#fff!important;padding:5px 9px!important;border-radius:10px!important}
.sidebar-compact-toggle{margin-left:auto;width:34px;height:34px;border-radius:9px!important;background:rgba(255,255,255,.08)!important}
.menu-search-wrap{padding:0 4px 12px}
.menu-search-wrap input{height:40px;background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding-left:13px}
.menu-search-wrap input::placeholder{color:#8fa1b8}
.sidebar-nav{gap:5px;padding-right:2px}
.nav-section{margin-bottom:3px}
.nav-section-toggle{font-size:13px;font-weight:650;color:#f2f6fc;padding:10px;border-radius:9px}
.nav-section-toggle:hover{background:rgba(255,255,255,.06)}
.nav-subgroup-toggle{font-size:12px;color:#8fa1b8;padding:8px 11px 6px 18px;text-transform:none;letter-spacing:0}
.nav-item{min-height:38px;padding:9px 10px!important;border-radius:9px;color:#b9c5d5;font-size:13px}
.nav-item:hover{background:rgba(255,255,255,.07);color:#fff;transform:translateX(1px)}
.nav-item.active{background:linear-gradient(135deg,#155eef,#266ff8);color:#fff;box-shadow:0 8px 18px rgba(21,94,239,.28);border:0}
.nav-item.active:before{display:none}
.nav-icon{width:22px;opacity:.95}
.nav-favorite-toggle{opacity:0;transition:.15s}
.nav-item-row:hover .nav-favorite-toggle{opacity:1}
.nav-favorites{margin:0 4px 10px;padding:7px 0;border:0}
.nav-favorites-title{padding:0 8px 5px;color:#71839a}
.sidebar-footer{padding-top:12px;border-color:rgba(255,255,255,.08)}
.user-settings-toggle{border-radius:12px!important;background:rgba(255,255,255,.06)!important;padding:8px!important}
.user-avatar{background:linear-gradient(135deg,#155eef,#6e8cff);color:#fff}
.main-content{min-width:0;background:var(--ui-bg)}
.topbar{height:76px;padding:0 28px;background:rgba(255,255,255,.96);backdrop-filter:blur(16px);border-bottom:1px solid var(--ui-border);display:grid;grid-template-columns:minmax(220px,1fr) minmax(320px,620px) minmax(220px,1fr);gap:20px;align-items:center;position:sticky;top:0;z-index:70}
.topbar-left,.topbar-actions{display:flex;align-items:center;gap:10px}
.topbar-actions{justify-content:flex-end}
.page-title-wrap h1{font-size:21px;margin:0;color:var(--ui-text);letter-spacing:-.02em}
.eyebrow{font-size:10px;color:var(--ui-primary);letter-spacing:.11em;margin-bottom:2px}
.global-search-trigger{height:42px;width:100%;background:#f7f9fc!important;color:#69778c!important;border:1px solid var(--ui-border)!important;border-radius:11px!important;padding:0 13px!important;justify-content:flex-start!important;font-weight:500!important;box-shadow:none!important}
.global-search-trigger span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.global-search-trigger kbd{margin-left:auto}
kbd{font:600 11px/1 system-ui;background:#fff;border:1px solid #d9e0ea;border-bottom-width:2px;border-radius:6px;padding:5px 7px;color:#718096}
.icon-button{width:40px;height:40px;border-radius:10px!important;padding:0!important;background:#f7f9fc!important;color:#334155!important;border:1px solid var(--ui-border)!important;text-decoration:none;box-shadow:none!important}
.icon-button:hover{background:#eef3fa!important;color:var(--ui-primary)!important}
.mobile-menu-toggle{display:none!important}
.quick-create{position:relative}
.quick-create-toggle{height:40px;padding:0 15px!important;border-radius:10px!important}
.quick-create-menu{position:absolute;right:0;top:48px;width:300px;background:#fff;border:1px solid var(--ui-border);border-radius:14px;padding:8px;box-shadow:0 18px 48px rgba(15,23,42,.18);z-index:100}
.quick-create-menu[hidden]{display:none!important}
.quick-create-menu a{display:flex;gap:11px;padding:11px;border-radius:10px;text-decoration:none;color:var(--ui-text)}
.quick-create-menu a:hover{background:#f2f6fc}
.quick-create-menu a>span:first-child{width:34px;height:34px;background:#edf4ff;border-radius:9px;display:grid;place-items:center}
.quick-create-menu strong,.quick-create-menu small{display:block}
.quick-create-menu small{color:var(--ui-muted);margin-top:2px}
.content-area{padding:24px 28px 48px;max-width:1640px;width:100%;margin:0 auto}
.card,.form-section,.table-card,.module-card,.workspace-card,.kpi-card{border:1px solid var(--ui-border)!important;border-radius:14px!important;box-shadow:var(--ui-shadow-soft)!important;background:var(--ui-surface)!important}
.card{padding:20px}
.button,button{border-radius:9px;background:var(--ui-primary);box-shadow:0 4px 10px rgba(21,94,239,.16)}
.button:hover,button:hover{background:var(--ui-primary-hover)}
.button.secondary,.secondary{background:#f1f5f9!important;color:#334155!important;border:1px solid #e2e8f0!important;box-shadow:none!important}
input,select,textarea{border:1px solid #dbe2ec;border-radius:9px;background:#fff;min-height:42px;padding:10px 12px}
textarea{min-height:104px}
input:focus,select:focus,textarea:focus{border-color:#7aa4ff;box-shadow:0 0 0 4px rgba(21,94,239,.1)}
label{font-size:12px;color:#46556b;margin-bottom:6px}
.form-section{overflow:visible}
.form-section-header{border-radius:14px 14px 0 0;background:#fbfcfe;padding:17px 20px}
.section-step{border-radius:50%;background:#e7efff}
table{border-radius:14px;overflow:hidden;min-width:760px}
th{background:#f7f9fc;color:#64748b;font-size:11px}
th,td{padding:12px 14px}
tbody tr{transition:.12s}
tbody tr:hover{background:#f5f8fd}
.badge,.status-badge{border-radius:999px;font-weight:650}
.workspace-hero{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:20px}
.workspace-kicker,.card-eyebrow{display:block;text-transform:uppercase;letter-spacing:.09em;color:var(--ui-primary);font-size:10px;font-weight:800;margin-bottom:5px}
.workspace-hero h2{font-size:27px;letter-spacing:-.035em;margin-bottom:5px}
.workspace-hero p{color:var(--ui-muted);margin:0}
.workspace-hero-actions{display:flex;gap:9px}
.kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:14px}
.kpi-card{display:grid;grid-template-columns:auto 1fr;column-gap:10px;padding:16px;text-decoration:none;color:var(--ui-text);transition:.18s}
.kpi-card:hover{transform:translateY(-2px);box-shadow:var(--ui-shadow)!important;border-color:#ccd9ee!important}
.kpi-icon{grid-row:1/4;width:36px;height:36px;border-radius:10px;background:#edf4ff;display:grid;place-items:center}
.kpi-label{font-size:12px;color:var(--ui-muted)}
.kpi-card strong{font-size:23px;letter-spacing:-.035em;margin-top:2px}
.kpi-card small{color:#7c899b;font-size:11px}
.workspace-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px}
.workspace-card{padding:0;overflow:hidden}
.span-3{grid-column:span 3}.span-4{grid-column:span 4}.span-5{grid-column:span 5}.span-12{grid-column:span 12}
.workspace-card-header{display:flex;justify-content:space-between;align-items:flex-start;padding:16px 17px 12px;border-bottom:1px solid #edf0f5}
.workspace-card-header h3{font-size:15px;margin:0}
.workspace-card-header a{font-size:12px;color:var(--ui-primary);text-decoration:none}
.count-pill{background:#e8f0ff;color:var(--ui-primary);border-radius:999px;padding:4px 8px;font-weight:750;font-size:11px}
.timeline-list,.attention-list,.compact-person-list{padding:4px 0}
.timeline-item,.attention-item,.compact-person-list a{display:flex;gap:10px;align-items:center;padding:11px 16px;text-decoration:none;color:var(--ui-text);border-bottom:1px solid #f0f2f6}
.timeline-item:last-child,.attention-item:last-child,.compact-person-list a:last-child{border-bottom:0}
.timeline-item:hover,.attention-item:hover,.compact-person-list a:hover{background:#f8faff}
.timeline-icon,.person-avatar{width:35px;height:35px;border-radius:50%;background:#edf4ff;display:grid;place-items:center;flex:0 0 auto;color:var(--ui-primary);font-size:12px;font-weight:800}
.timeline-content,.attention-item>span:nth-child(2),.compact-person-list a>span:nth-child(2){min-width:0;flex:1}
.timeline-content strong,.timeline-content small,.attention-item strong,.attention-item small,.compact-person-list strong,.compact-person-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.timeline-content small,.attention-item small,.compact-person-list small{color:var(--ui-muted);font-size:11px;margin-top:3px}
.timeline-arrow{color:#94a3b8;font-size:20px}
.attention-item{align-items:flex-start}
.attention-dot{width:3px;align-self:stretch;border-radius:2px;background:#9ca3af}
.severity-critical .attention-dot{background:var(--ui-red)}
.severity-warning .attention-dot{background:var(--ui-yellow)}
.severity-notice .attention-dot{background:var(--ui-blue)}
.status-badge{font-size:10px;padding:4px 7px;background:#edf2f7;color:#5f6f82}
.status-badge.critical{background:#feecef;color:#c33445}.status-badge.warning{background:#fff4d9;color:#9a6700}.status-badge.notice,.status-badge.info{background:#e9f2ff;color:#155eef}
.card-footer-link{display:block;text-align:center;padding:10px;border-top:1px solid #edf0f5;color:var(--ui-primary);font-size:12px;text-decoration:none}
.empty-state{padding:28px 16px;text-align:center;color:var(--ui-muted);font-size:12px}
.finance-visual{display:flex;gap:20px;align-items:center;padding:24px 18px}
.donut{--value:67;width:126px;height:126px;border-radius:50%;background:conic-gradient(var(--ui-green) calc(var(--value)*1%),#ffc960 0 82%,#f08086 0);position:relative;display:grid;place-items:center}
.donut:after{content:"";position:absolute;width:82px;height:82px;border-radius:50%;background:#fff}
.donut span{position:relative;z-index:1;font-size:13px;font-weight:800;text-align:center;max-width:70px}
.legend-list{flex:1;display:grid;gap:11px}
.legend-list div{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;font-size:12px}
.legend-dot{width:8px;height:8px;border-radius:50%}.legend-dot.paid{background:var(--ui-green)}.legend-dot.open{background:#ffc960}.legend-dot.overdue{background:#f08086}
.mini-chart{height:205px;padding:24px 20px 15px;display:flex;align-items:flex-end;gap:12px;border-bottom:1px solid #f0f2f5;background:linear-gradient(180deg,#fff,#fbfdff)}
.chart-column{height:100%;flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:7px}
.chart-column span{display:block;width:100%;max-width:34px;min-height:8px;border-radius:7px 7px 2px 2px;background:linear-gradient(180deg,#6ea0ff,#155eef);opacity:.92}
.chart-column small{color:var(--ui-muted);font-size:10px}
.trend-positive{color:var(--ui-green);font-size:11px}
.quick-action-list{padding:8px}
.quick-action-list a{display:flex;align-items:center;gap:9px;padding:10px;border-radius:9px;text-decoration:none;color:#334155;font-size:12px}
.quick-action-list a:hover{background:#edf4ff;color:var(--ui-primary)}
.quick-action-list span{width:25px;height:25px;border:1px solid #d7e2f5;border-radius:7px;display:grid;place-items:center}
.operational-strip{display:grid;grid-template-columns:repeat(3,1fr);padding:0!important}
.operational-strip a{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:10px;padding:16px;text-decoration:none;color:var(--ui-text);border-right:1px solid #edf0f5}
.operational-strip a:last-child{border-right:0}
.operational-strip strong{font-size:20px}.operational-strip small{color:var(--ui-muted)}
.command-dialog{position:fixed;inset:0;z-index:250}
.command-dialog[hidden]{display:none!important}
.command-dialog-backdrop{position:absolute;inset:0;background:rgba(5,15,30,.58);backdrop-filter:blur(4px)}
.command-dialog-panel{position:relative;margin:9vh auto 0;width:min(760px,calc(100% - 32px));max-height:78vh;background:#fff;border-radius:16px;box-shadow:0 28px 80px rgba(4,14,29,.32);overflow:hidden}
.command-dialog-search{height:62px;display:flex;align-items:center;gap:10px;padding:0 16px;border-bottom:1px solid var(--ui-border)}
.command-dialog-search input{border:0;box-shadow:none;flex:1;font-size:16px;min-height:0}
.command-dialog-hints{display:flex;gap:7px;padding:10px 14px;background:#f8fafc;align-items:center;overflow:auto}
.command-dialog-hints span{font-size:10px;text-transform:uppercase;color:#94a3b8;font-weight:800;margin-right:5px}
.command-dialog-hints a{white-space:nowrap;border:1px solid #e2e8f0;border-radius:999px;padding:6px 9px;text-decoration:none;font-size:11px;color:#475569;background:#fff}
.command-search-results{max-height:50vh;overflow:auto;padding:8px}
.command-empty{text-align:center;padding:48px 20px;color:var(--ui-muted)}
.command-empty strong{display:block;color:var(--ui-text);font-size:16px;margin-bottom:5px}
.command-result{display:flex;gap:11px;align-items:center;padding:11px;border-radius:10px;text-decoration:none;color:var(--ui-text)}
.command-result:hover,.command-result.active{background:#edf4ff}
.command-result-icon{width:35px;height:35px;border-radius:9px;background:#e9f1ff;display:grid;place-items:center}
.command-result-text{flex:1}.command-result-text strong,.command-result-text small{display:block}.command-result-text small{color:var(--ui-muted);margin-top:2px}
.command-dialog-footer{display:flex;justify-content:flex-end;gap:15px;padding:9px 14px;border-top:1px solid var(--ui-border);font-size:10px;color:#8491a2;background:#fafbfd}
body.dark-ui{--ui-bg:#0b1220;--ui-surface:#111b2b;--ui-surface-soft:#162235;--ui-text:#eef4ff;--ui-muted:#9aacbf;--ui-border:#24344b;background:var(--ui-bg);color:var(--ui-text)}
body.dark-ui .topbar,body.dark-ui .command-dialog-panel,body.dark-ui .quick-create-menu,body.dark-ui .card,body.dark-ui .workspace-card,body.dark-ui .kpi-card{background:#111b2b!important;color:var(--ui-text)!important}
body.dark-ui input,body.dark-ui select,body.dark-ui textarea,body.dark-ui .global-search-trigger{background:#162235!important;color:#eaf1fb!important;border-color:#2a3a50!important}
body.dark-ui .donut:after{background:#111b2b}
body.dark-ui .nav-item:hover,body.dark-ui .timeline-item:hover,body.dark-ui .attention-item:hover,body.dark-ui .compact-person-list a:hover{background:#17243a}
.mobile-sidebar-backdrop{display:none}
@media(max-width:1200px){.kpi-grid{grid-template-columns:repeat(3,1fr)}.span-5,.span-4{grid-column:span 6}.span-3{grid-column:span 6}.topbar{grid-template-columns:1fr minmax(260px,420px) auto}}
@media(max-width:900px){
    .app-shell{display:block}
    .sidebar{position:fixed;left:-290px;top:0;height:100vh;transition:.22s;box-shadow:0 20px 50px rgba(0,0,0,.28)}
    .app-shell.mobile-menu-open .sidebar{left:0}
    .mobile-menu-toggle{display:inline-flex!important}
    .mobile-sidebar-backdrop{position:fixed;inset:0;background:rgba(5,15,30,.55);z-index:80}
    .app-shell.mobile-menu-open .mobile-sidebar-backdrop{display:block}
    .topbar{grid-template-columns:1fr auto;padding:0 16px;height:68px}
    .topbar-center{display:none}.eyebrow{display:none}
    .topbar-actions .quick-create,.topbar-actions>a:nth-of-type(2){display:none}
    .content-area{padding:18px 14px 36px}
    .kpi-grid{grid-template-columns:repeat(2,1fr)}
    .span-3,.span-4,.span-5{grid-column:span 12}
}
@media(max-width:560px){
    .workspace-hero{display:block}.workspace-hero-actions{margin-top:14px}
    .kpi-grid{grid-template-columns:1fr}
    .operational-strip{grid-template-columns:1fr}
    .operational-strip a{border-right:0;border-bottom:1px solid #edf0f5}
    .topbar-actions .theme-toggle{display:none}
}
