* { box-sizing: border-box; }

    :root {
      --dashboard-bg: #08090d;
      --dashboard-panel: #12141a;
      --dashboard-panel-soft: #171922;
      --dashboard-sidebar: #000000;
      --dashboard-sidebar-2: #000000;
      --dashboard-text: #e6e9f2;
      --dashboard-muted: #8b90a3;
      --dashboard-border: #1e2230;

      --dashboard-purple: #6c5ce7;
      --dashboard-purple-soft: #5a4fd1;
      --dashboard-blue: #2f9fd6;
      --dashboard-green: #2ea97d;
      --dashboard-orange: #c9942f;

      --dashboard-radius: 14px;
      --dashboard-shadow: none;
    }

    body {
      margin: 0;
      font-family: Inter, Arial, sans-serif;
      background: var(--dashboard-bg);
      color: var(--dashboard-text);
    }

    .dashboard-app {
      min-height: 100vh;
      display: grid;
      grid-template-columns: 232px 1fr;
    }

    .dashboard-sidebar {
      background: linear-gradient(180deg, var(--dashboard-sidebar), var(--dashboard-sidebar-2) 100%);
      color: #fff;
      padding: 20px 16px;
      position: sticky;
      top: 0;
      height: 100vh;
      overflow-y: auto;
    }

    .dashboard-sidebar h6 {
      margin: 8px 8px 16px;
      font-size: 11px;
      letter-spacing: 0.12em;
      color: rgba(255,255,255,0.45);
      text-transform: uppercase;
    }

    .dashboard-nav-group, .dashboard-nav-sub {
      list-style: none;
      padding: 0;
      margin: 0;
    }

    .dashboard-panel-menu {
      display: grid;
      gap: 8px;
    }

    .dashboard-menu-item {
      display: grid;
      gap: 6px;
    }

    .dashboard-menu-toggle-btn {
      width: 100%;
      border: 0;
      background: transparent;
      color: rgba(255,255,255,0.88);
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 10px 12px;
      border-radius: 10px;
      font-size: 15px;
      cursor: pointer;
      text-align: left;
    }

    .dashboard-menu-toggle-btn:hover {
      background: rgba(255,255,255,0.12);
    }

    .dashboard-menu-item.open > .dashboard-menu-toggle-btn {
      background: rgba(255,255,255,0.08);
      color: #ffffff;
    }

    .dashboard-arrow {
      transition: transform 0.2s ease;
    }

    .dashboard-menu-item:not(.open) > .dashboard-menu-toggle-btn .dashboard-arrow {
      transform: rotate(-90deg);
    }

    .dashboard-nav-sub {
      display: none;
      padding-left: 12px;
      margin-top: 2px;
    }

    .dashboard-menu-item.open > .dashboard-nav-sub {
      display: block;
    }

    .dashboard-nav-sub li a {
      display: block;
      color: rgba(255,255,255,0.74);
      text-decoration: none;
      font-size: 14px;
      padding: 8px 12px;
      border-radius: 10px;
    }

    .dashboard-nav-sub li a:hover {
      background: rgba(255,255,255,0.12);
      color: #ffffff;
    }

    .dashboard-content {
      padding: 26px 18px 18px;
    }

    .dashboard {
      display: grid;
      grid-template-columns: 1fr 320px;
      gap: 20px;
    }

    .dashboard-panel-content {
      display: grid;
      gap: 20px;
    }

    .account-profile-help {
      color: var(--dashboard-muted);
    }

    .account-dashboard-cards {
      display: grid;
      gap: 20px;
    }

    .account-dashboard-card {
      display: grid;
      gap: 14px;
      padding: 14px;
      border: 1px solid var(--dashboard-border);
      border-radius: 12px;
      background: rgba(255, 255, 255, 0.02);
      box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.02);
    }

    .account-dashboard-card--span-12,
    .account-dashboard-card--span-8,
    .account-dashboard-card--span-6,
    .account-dashboard-card--span-4 {
      grid-column: 1 / -1;
    }

    .account-admin-overview {
      display: grid;
      gap: 14px;
      padding: 14px;
      border: 1px solid var(--dashboard-border);
      border-radius: 12px;
      background: rgba(255, 255, 255, 0.02);
      box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.02);
    }

    .account-admin-period-tabs {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      margin: 2px 0 4px;
    }

    .account-admin-period-tab {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 36px;
      padding: 8px 14px;
      border: 1px solid var(--dashboard-border);
      border-radius: 8px;
      background: var(--dashboard-panel);
      color: var(--dashboard-text);
      text-decoration: none;
      font-size: 14px;
      font-weight: 700;
    }

    .account-admin-period-tab:hover {
      background: rgba(255, 255, 255, 0.08);
    }

    .account-admin-period-tab.is-active {
      background: #ffb400;
      border-color: #ffb400;
      color: #171717;
    }

    .account-admin-table-header {
      display: flex;
      align-items: baseline;
      justify-content: space-between;
      gap: 12px;
    }

    .account-admin-traffic-overview {
      display: grid;
      gap: 14px;
      padding: 14px;
      border: 1px solid var(--dashboard-border);
      border-radius: 12px;
      background: rgba(255, 255, 255, 0.02);
      box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.02);
    }

    .account-admin-traffic-overview h3,
    .account-admin-country-panel h3 {
      margin: 0;
      font-size: 18px;
    }

    .account-admin-traffic-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
      gap: 14px;
    }

    .account-admin-traffic-grid .account-dashboard-widget strong {
      font-size: 26px;
    }

    .account-admin-traffic-table {
      display: grid;
      gap: 12px;
      padding: 14px;
      border: 1px solid var(--dashboard-border);
      border-radius: 12px;
      background: rgba(255, 255, 255, 0.02);
      box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.02);
    }

    .account-admin-table-wrap {
      overflow-x: auto;
    }

    .account-admin-traffic-list {
      width: 100%;
      border-collapse: collapse;
      min-width: 740px;
    }

    .account-admin-traffic-list th,
    .account-admin-traffic-list td {
      padding: 12px 10px;
      border-bottom: 1px solid var(--dashboard-border);
      text-align: left;
      vertical-align: top;
    }

    .account-admin-traffic-list th {
      color: var(--dashboard-muted);
      font-size: 13px;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.04em;
    }

    .account-admin-traffic-actions-col {
      width: 1%;
      white-space: nowrap;
    }

    .account-admin-traffic-url {
      word-break: break-word;
    }

    .account-admin-row-actions {
      width: 1%;
      white-space: nowrap;
      text-align: right;
      vertical-align: middle;
    }

    .account-admin-row-action-form {
      display: inline-flex;
      margin: 0;
    }

    .account-admin-row-action-button {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-width: 36px;
      min-height: 36px;
      padding: 0 10px;
      border: 1px solid var(--dashboard-border);
      border-radius: 8px;
      background: var(--dashboard-panel);
      color: var(--dashboard-muted);
      cursor: pointer;
      line-height: 0;
    }

    .account-admin-row-action-button:hover {
      background: rgba(255, 255, 255, 0.08);
      color: #ffffff;
    }

    .account-admin-row-action-button-danger {
      color: #ff6f61;
    }

    .account-admin-row-action-button-danger:hover {
      border-color: #ff6f61;
      color: #ff6f61;
    }

    .account-admin-row-action-icon {
      width: 17px;
      height: 17px;
      display: block;
      pointer-events: none;
    }

    .account-home-hits-panel {
      display: grid;
      gap: 14px;
      padding: 14px;
      border: 1px solid var(--dashboard-border);
      border-radius: 12px;
      background: rgba(255, 255, 255, 0.02);
      box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.02);
    }

    .account-home-hits-chart-wrap {
      width: 100%;
      overflow: hidden;
    }

    .account-home-hits-svg {
      display: block;
      width: 100%;
      height: auto;
      min-height: 240px;
    }

    .account-home-hits-empty {
      margin: 0;
      color: var(--dashboard-muted);
      font-size: 13px;
    }

    .account-admin-country-panel {
      display: grid;
      gap: 12px;
      padding: 14px;
      border: 1px solid var(--dashboard-border);
      border-radius: 12px;
      background: rgba(255, 255, 255, 0.02);
      box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.02);
    }

    .account-admin-country-empty {
      margin: 0;
      color: var(--dashboard-muted);
      font-size: 13px;
    }

    .account-admin-country-chart-wrap {
      display: flex;
      justify-content: center;
    }

    .account-admin-country-pie {
      width: 180px;
      height: 180px;
      border-radius: 50%;
      border: 1px solid var(--dashboard-border);
      box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.03);
    }

    .account-admin-country-list {
      display: grid;
      gap: 8px;
      list-style: none;
      margin: 0;
      padding: 0;
    }

    .account-admin-country-list li {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 10px;
      padding: 8px 10px;
      border: 1px solid var(--dashboard-border);
      border-radius: 8px;
      background: rgba(255,255,255,0.02);
    }

    .account-admin-country-row {
      align-items: center;
    }

    .account-admin-country-row-content {
      display: flex;
      align-items: center;
      gap: 10px;
      min-width: 0;
      flex: 1 1 auto;
    }

    .account-admin-country-row-label {
      min-width: 0;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
      flex: 1 1 auto;
      color: var(--dashboard-text);
    }

    .account-admin-country-list strong {
      flex: 0 0 auto;
      min-width: 0;
      color: #ffffff;
    }

    .account-admin-country-swatch {
      width: 10px;
      height: 10px;
      border-radius: 999px;
      flex: 0 0 auto;
    }

    .account-admin-country-list .account-admin-country-row-content > span:not(.account-admin-country-swatch):not(.account-admin-country-row-label) {
      color: var(--dashboard-muted);
      font-size: 12px;
      flex: 0 0 auto;
    }
