@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600&family=Montserrat:wght@300;400;500;600;700&display=swap');
:root{--bg:#080808;--panel:rgba(255,255,255,.045);--line:rgba(200,169,107,.24);--gold:#c8a96b;--gold2:#e2c581;--text:#f4efe6;--muted:#a09a90;--danger:#e49a9a;--success:#a6d9aa}
*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 76% 8%,rgba(200,169,107,.13),transparent 360px),linear-gradient(135deg,#050505,#111);color:var(--text);font-family:Montserrat,system-ui,sans-serif;letter-spacing:.02em}a{text-decoration:none;color:inherit}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:26px}.auth-card{width:min(440px,100%);padding:44px;border-radius:32px;background:rgba(15,15,15,.82);border:1px solid var(--line);box-shadow:0 40px 100px rgba(0,0,0,.55);backdrop-filter:blur(18px)}.sarimont-logo{width:230px;height:126px;display:block;margin-bottom:18px}.sarimont-logo-mini{width:62px;height:34px;display:block}.sarimont-logo path,.sarimont-logo-mini path{fill:none;stroke-linecap:square;stroke-linejoin:miter}.logo-small{stroke:#2b2b2b;stroke-width:15}.logo-large{stroke:var(--gold);stroke-width:17}h1,h2,.brand strong{font-family:"Cormorant Garamond",Georgia,serif;font-weight:600}.auth-card h1{margin:0;color:var(--gold);font-size:52px;letter-spacing:.18em}.auth-card p,.hero p,.card p,.user-row p,.hint{color:var(--muted);line-height:1.8}label{display:block;margin-top:18px;color:var(--gold2);text-transform:uppercase;font-size:11px;letter-spacing:.14em}input,select{width:100%;margin-top:9px;padding:15px 16px;border:1px solid rgba(255,255,255,.10);background:rgba(0,0,0,.32);color:var(--text);border-radius:16px;outline:none}button,.button-link{display:inline-flex;justify-content:center;align-items:center;border:0;border-radius:999px;padding:15px 22px;background:linear-gradient(135deg,var(--gold),var(--gold2));color:#101010;font-weight:700;text-transform:uppercase;letter-spacing:.11em;cursor:pointer;margin-top:24px;width:100%}button.secondary{width:auto;margin:0;background:transparent;border:1px solid var(--line);color:var(--gold);padding:10px 14px}.danger-btn{color:var(--danger)!important;border-color:rgba(228,154,154,.35)!important}.alert{margin:18px 0;padding:14px 16px;border-radius:16px;border:1px solid}.alert.danger{color:var(--danger);background:rgba(228,154,154,.08);border-color:rgba(228,154,154,.35)}.alert.success{color:var(--success);background:rgba(166,217,170,.08);border-color:rgba(166,217,170,.35)}
.topbar{height:80px;padding:0 44px;border-bottom:1px solid var(--line);background:rgba(8,8,8,.82);backdrop-filter:blur(18px);display:grid;grid-template-columns:auto 1fr auto;align-items:center;position:sticky;top:0;z-index:50}.brand{display:flex;align-items:center;gap:16px;color:var(--gold)}.brand strong{letter-spacing:.22em;font-size:24px}.center-nav{justify-self:center;display:flex;align-items:center;gap:34px;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.14em}.center-nav>a,.nav-item>a,.logout-link{height:80px;display:flex;align-items:center}.center-nav .active>a,.center-nav>a.active{color:var(--gold)}.logout-link{justify-self:end;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.14em}.nav-item{position:static}.nav-item:after{content:"";position:absolute;left:0;right:0;top:60px;height:42px}.mega-menu{position:absolute;left:0;right:0;top:80px;z-index:30;opacity:0;pointer-events:none;transform:translateY(-8px);transition:.18s ease;background:rgba(10,10,10,.96);backdrop-filter:blur(22px);border-bottom:1px solid var(--line);box-shadow:0 30px 90px rgba(0,0,0,.38)}.nav-item:hover .mega-menu,.mega-menu:hover{opacity:1;pointer-events:auto;transform:translateY(0)}.mega-inner{width:min(1100px,calc(100% - 40px));margin:0 auto;padding:42px 0 38px;display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.mega-inner.service{grid-template-columns:repeat(4,1fr)}.mega-column{display:grid;gap:12px}.mega-column a{color:var(--muted);text-transform:none;letter-spacing:.02em;font-size:14px}.mega-column .mega-title{color:var(--gold);font-size:18px;font-family:"Cormorant Garamond",Georgia,serif;letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px}
.container{width:min(1160px,calc(100% - 40px));margin:0 auto;padding:76px 0}.container.narrow{width:min(980px,calc(100% - 40px))}.container.wide{width:min(1280px,calc(100% - 40px))}.hero{padding:42px 0 72px;border-bottom:1px solid var(--line)}.hero.small{padding-bottom:46px}.eyebrow{color:var(--gold)!important;text-transform:uppercase;font-size:12px;letter-spacing:.24em}.hero h1{color:var(--gold);font-size:clamp(44px,7vw,92px);line-height:1;margin:12px 0;letter-spacing:.08em}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:42px;align-items:stretch}.cards.two{grid-template-columns:repeat(2,minmax(0,1fr))}.card,.panel,.kpi-card{border:1px solid var(--line);background:linear-gradient(180deg,var(--panel),rgba(255,255,255,.018));border-radius:30px;padding:30px;box-shadow:0 22px 70px rgba(0,0,0,.23);height:100%}.card{min-height:220px;display:flex;flex-direction:column}.card.clickable{transition:.18s ease}.card.clickable:hover{transform:translateY(-3px);border-color:rgba(200,169,107,.55);background:linear-gradient(180deg,rgba(200,169,107,.08),rgba(255,255,255,.025))}.card span,.kpi-card span{color:var(--gold);font-size:11px;text-transform:uppercase;letter-spacing:.16em}.card h2,.panel h2{color:var(--gold);font-size:34px;margin:12px 0 8px;letter-spacing:.08em}.card em{margin-top:auto;color:var(--gold);font-style:normal}.category-tabs,.admin-tabs{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0}.category-tabs a,.admin-tabs a{padding:12px 18px;border:1px solid var(--line);border-radius:999px;color:var(--muted);background:rgba(255,255,255,.025)}.category-tabs a.active,.admin-tabs a.active{color:#111;background:linear-gradient(135deg,var(--gold),var(--gold2));border-color:transparent;font-weight:700}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin:30px 0}.kpi-card{min-height:158px}.kpi-card strong{display:block;margin-top:12px;font-size:28px;color:var(--text);font-family:"Cormorant Garamond",Georgia,serif}.kpi-card p{color:var(--muted);font-size:13px;line-height:1.6}.panel{margin:24px 0}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:18px}.rank-list{display:grid;gap:12px}.rank-list div,.user-row{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:16px;border-radius:20px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.07)}.rank-list span{color:var(--muted)}.accordion-area{display:grid;gap:14px;margin:24px 0}.accordion-panel{border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.035);overflow:hidden}.accordion-panel summary{cursor:pointer;padding:22px 26px;color:var(--gold);font-family:"Cormorant Garamond",Georgia,serif;font-size:30px;letter-spacing:.06em}.accordion-panel div{padding:0 26px 24px;color:var(--muted);line-height:1.8}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 18px}.form-grid button{grid-column:1/-1}.user-list{display:grid;gap:14px}.table-preview{overflow:auto;margin-top:22px;border:1px solid rgba(255,255,255,.08);border-radius:18px}.table-preview table{border-collapse:collapse;width:100%;min-width:760px}.table-preview th,.table-preview td{padding:12px;border-bottom:1px solid rgba(255,255,255,.07);text-align:left;font-size:12px}.table-preview th{color:var(--gold);background:rgba(255,255,255,.04)}#worldMap{height:520px;border-radius:24px;overflow:hidden;border:1px solid var(--line);background:#111}.leaflet-container{background:#111}
@media(max-width:980px){.kpi-grid,.cards,.cards.two{grid-template-columns:1fr 1fr}.mega-inner,.mega-inner.service{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.topbar{padding:0 20px}.center-nav{gap:16px}.brand strong{display:none}}@media(max-width:680px){.kpi-grid,.cards,.cards.two{grid-template-columns:1fr}.mega-menu{display:none}.center-nav{font-size:10px;gap:10px}.logout-link{font-size:10px}.container{width:min(100% - 24px,1160px)}}

/* V2 fixes: exact hover ownership + admin dropdown + filters */
.center-nav {
    position: static;
}

.nav-item {
    height: 80px;
}

.nav-item > a {
    position: relative;
    z-index: 55;
}

.nav-item .mega-menu {
    display: none;
    opacity: 1;
    pointer-events: auto;
    transform: none;
}

.nav-item:hover > .mega-menu,
.nav-item > .mega-menu:hover {
    display: block;
}

.nav-handel:hover ~ .nav-service .mega-menu,
.nav-handel:hover ~ .nav-admin .mega-menu,
.nav-service:hover ~ .nav-admin .mega-menu {
    display: none !important;
}

.mega-inner.admin {
    grid-template-columns: repeat(2, minmax(220px, 1fr));
    max-width: 720px;
}

.filter-panel {
    margin: 30px 0;
    padding: 24px;
    border: 1px solid var(--line);
    border-radius: 30px;
    background: linear-gradient(180deg, var(--panel), rgba(255,255,255,.018));
    display: grid;
    gap: 22px;
}

.filter-panel span {
    display: block;
    color: var(--gold);
    text-transform: uppercase;
    font-size: 11px;
    letter-spacing: .16em;
    margin-bottom: 12px;
}

.pill-row {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.pill-row a {
    padding: 11px 16px;
    border: 1px solid var(--line);
    border-radius: 999px;
    color: var(--muted);
    background: rgba(255,255,255,.025);
}

.pill-row a.active {
    color: #111;
    background: linear-gradient(135deg, var(--gold), var(--gold2));
    border-color: transparent;
    font-weight: 700;
}

.period-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(180px, 1fr)) auto;
    gap: 14px;
    align-items: end;
}

.period-form label {
    margin-top: 0;
}

.period-form button {
    margin-top: 0;
    width: auto;
    min-width: 130px;
}

@media(max-width:760px){
    .period-form {
        grid-template-columns: 1fr;
    }
    .period-form button {
        width: 100%;
    }
}
