:root{
      --theme:#0B3D91;
      --theme-dark:#072b67;
      --theme-soft:#edf4ff;
      --accent:#c62828;
      --gold:#c9983e;
      --ink:#152033;
      --muted:#657187;
      --line:#dfe5ee;
      --surface:#fff;
      --page:#f4f7fb;
      --shadow:0 14px 36px rgba(16,40,80,.10);
      --radius:18px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{margin:0;background:var(--page);color:var(--ink);font-family:"Microsoft YaHei","PingFang SC",Arial,sans-serif;line-height:1.65}
    img{max-width:100%;display:block}
    a{color:inherit;text-decoration:none}
    button,select,input{font:inherit}
    button,a{touch-action:manipulation}
    .container{width:min(1180px,calc(100% - 40px));margin:0 auto}

    .topbar{background:#07162e;color:#dce7f8;font-size:13px}
    .topbar .container{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:24px}
    .topbar-links{display:flex;align-items:center;gap:22px}
    .topbar a{color:#fff}
    .topbar a:hover{text-decoration:underline}

    .header{position:relative;z-index:50;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 5px 18px rgba(12,31,62,.05)}
    .header-inner{height:78px;display:flex;align-items:center;gap:24px}
    .logo{display:flex;align-items:center;gap:10px;flex:0 0 auto;color:var(--theme);font-size:20px;font-weight:800;white-space:nowrap}
    .logo img{width:42px;height:42px;object-fit:contain}
    .main-nav{margin-left:auto;height:100%}
    .nav-list{height:100%;display:flex;align-items:stretch;gap:2px;margin:0;padding:0;list-style:none}
    .nav-item{position:relative;display:flex;align-items:center}
    .nav-link{height:100%;display:flex;align-items:center;padding:0 13px;color:#27334a;font-size:15px;font-weight:650;white-space:nowrap;border-bottom:3px solid transparent}
    .nav-link:hover,.nav-item:focus-within>.nav-link{color:var(--theme);border-bottom-color:var(--theme)}
    .has-arrow::after{content:"";width:6px;height:6px;margin-left:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px)}
    .dropdown-panel,.mega-menu{position:absolute;top:100%;left:50%;visibility:hidden;opacity:0;transform:translate(-50%,10px);pointer-events:none;background:#fff;border:1px solid var(--line);border-radius:0 0 16px 16px;box-shadow:0 22px 45px rgba(7,28,62,.16);transition:.18s ease}
    .nav-item:hover>.dropdown-panel,.nav-item:focus-within>.dropdown-panel,.nav-item:hover>.mega-menu,.nav-item:focus-within>.mega-menu{visibility:visible;opacity:1;transform:translate(-50%,0);pointer-events:auto}
    .dropdown-panel{width:300px;padding:12px}
    .dropdown-panel a{display:block;padding:10px 12px;border-radius:8px;color:#39465c;font-size:14px}
    .dropdown-panel a:hover{background:var(--theme-soft);color:var(--theme)}
    .dropdown-panel a:last-child{margin-top:6px;border-top:1px solid var(--line);border-radius:0;color:var(--theme);font-weight:700}
    .mega-menu{width:min(760px,80vw);padding:18px}
    .nav-item:nth-last-child(-n+3) .mega-menu{left:auto;right:0;transform:translateY(10px)}
    .nav-item:nth-last-child(-n+3):hover>.mega-menu,.nav-item:nth-last-child(-n+3):focus-within>.mega-menu{transform:translateY(0)}
    .mega-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
    .mega-card{min-width:0;display:flex;flex-direction:column;gap:5px;padding:12px;border:1px solid #e7ebf2;border-radius:12px;background:#fff;color:#2e3a50;transition:.18s ease}
    .mega-card:hover{border-color:#b8cbed;background:var(--theme-soft);transform:translateY(-2px)}
    .mega-card strong{font-size:14px;color:#17243a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
    .mega-card small{display:block;color:#6d788b;font-size:12px;line-height:1.5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
    .mega-card img{width:40px;height:40px;object-fit:contain;border-radius:8px;background:#f6f8fb}
    .broker-mini{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center}
    .broker-mini span{min-width:0}
    .tool-mini img,.product-mini img{width:44px;height:44px}
    .mega-footer{display:block;margin-top:14px;padding:11px;text-align:center;border-radius:10px;background:var(--theme);color:#fff;font-size:14px;font-weight:700}
    .mega-footer:hover{background:var(--theme-dark)}

    .header-btns{display:flex;align-items:center;gap:9px;flex:0 0 auto}
    .member-link,.open-account{display:inline-flex;min-height:40px;align-items:center;justify-content:center;padding:0 15px;border-radius:9px;font-size:14px;font-weight:700}
    .member-link{color:var(--theme);border:1px solid #bfd0ec;background:#fff}
    .open-account{background:var(--accent);color:#fff;box-shadow:0 7px 16px rgba(198,40,40,.2)}
    .member-link:hover{background:var(--theme-soft)}
    .open-account:hover{background:#a91f1f}
    .hamburger{display:none;width:42px;height:42px;padding:9px;border:0;border-radius:9px;background:var(--theme);cursor:pointer}
    .hamburger span{display:block;width:23px;height:2px;margin:5px auto;background:#fff;transition:.2s}
    .hamburger.active span:nth-child(1){transform:translateY(7px) rotate(45deg)}
    .hamburger.active span:nth-child(2){opacity:0}
    .hamburger.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

    .drawer-overlay{position:fixed;inset:0;z-index:80;visibility:hidden;opacity:0;background:rgba(3,12,27,.62);transition:.25s}
    .drawer-overlay.open{visibility:visible;opacity:1}
    .mobile-drawer{position:fixed;top:0;right:0;z-index:90;width:min(390px,88vw);height:100vh;overflow-y:auto;background:#fff;box-shadow:-18px 0 45px rgba(0,0,0,.18);transform:translateX(105%);transition:.25s ease}
    .mobile-drawer.open{transform:translateX(0)}
    .drawer-head{min-height:72px;display:flex;align-items:center;gap:12px;padding:14px 18px;background:#07162e;color:#fff}
    .drawer-head>a{padding:7px 12px;border:1px solid rgba(255,255,255,.35);border-radius:8px;font-size:14px}
    .drawer-close{margin-left:auto;width:38px;height:38px;border:0;background:transparent;color:#fff;font-size:31px;line-height:1;cursor:pointer}
    .drawer-menu{padding:14px 18px 30px}
    .drawer-link,.drawer-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;padding:14px 5px;border:0;border-bottom:1px solid var(--line);background:#fff;color:#1c2940;text-align:left;font-weight:700;cursor:pointer}
    .drawer-toggle::after{content:"＋";color:var(--theme);font-size:20px;font-weight:400}
    .drawer-toggle.active::after{content:"－"}
    .drawer-submenu{display:none;padding:7px 0 10px 14px;border-bottom:1px solid var(--line)}
    .drawer-submenu.open{display:block}
    .drawer-submenu a{display:block;padding:9px 10px;color:#58657a;font-size:14px;border-left:2px solid #dbe5f4}
    .drawer-submenu a:hover{color:var(--theme);border-left-color:var(--theme);background:var(--theme-soft)}

    .brokerlist-page{min-height:640px}
    .brokerlist-page .broker-hero{position:relative;overflow:hidden;padding:70px 0 94px;background:linear-gradient(135deg,#06162e 0%,#0B3D91 66%,#164f9f 100%);color:#fff}
    .brokerlist-page .broker-hero::before{content:"";position:absolute;width:470px;height:470px;right:-100px;top:-260px;border:1px solid rgba(255,255,255,.13);border-radius:50%;box-shadow:0 0 0 55px rgba(255,255,255,.035),0 0 0 115px rgba(255,255,255,.025)}
    .brokerlist-page .broker-hero::after{content:"";position:absolute;inset:auto 0 0;height:5px;background:linear-gradient(90deg,var(--gold),#f0d28a,var(--accent))}
    .brokerlist-page .hero-copy{position:relative;z-index:1;max-width:790px}
    .brokerlist-page .eyebrow{display:inline-flex;align-items:center;gap:8px;margin-bottom:16px;color:#f4d58a;font-size:14px;font-weight:800;letter-spacing:.08em}
    .brokerlist-page .eyebrow::before{content:"";width:30px;height:2px;background:var(--gold)}
    .brokerlist-page h1{margin:0 0 16px;font-size:clamp(34px,5vw,58px);line-height:1.15;letter-spacing:-.03em}
    .brokerlist-page .hero-copy p{max-width:710px;margin:0;color:#d8e5f7;font-size:17px}
    .brokerlist-page .hero-points{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}
    .brokerlist-page .hero-points span{padding:8px 13px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:rgba(255,255,255,.08);font-size:13px}

    .brokerlist-page .filter-wrap{position:relative;z-index:3;margin-top:-45px}
    .brokerlist-page .filter-panel{padding:22px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}
    .brokerlist-page .filter-title{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:17px}
    .brokerlist-page .filter-title h2{margin:0;font-size:21px}
    .brokerlist-page .filter-title p{margin:0;color:var(--muted);font-size:13px}
    .brokerlist-page .filter-grid{display:grid;grid-template-columns:1.2fr repeat(3,1fr) auto;gap:12px}
    .brokerlist-page .field{display:flex;flex-direction:column;gap:6px}
    .brokerlist-page .field label{color:#435069;font-size:13px;font-weight:700}
    .brokerlist-page .field input,.brokerlist-page .field select{width:100%;height:46px;padding:0 13px;border:1px solid #ccd5e2;border-radius:10px;background:#fff;color:#27344a;outline:none}
    .brokerlist-page .field input:focus,.brokerlist-page .field select:focus{border-color:var(--theme);box-shadow:0 0 0 3px rgba(11,61,145,.1)}
    .brokerlist-page .filter-submit{align-self:end;height:46px;padding:0 24px;border:0;border-radius:10px;background:var(--theme);color:#fff;font-weight:800;cursor:pointer}
    .brokerlist-page .filter-submit:hover{background:var(--theme-dark)}

    .brokerlist-page .list-section{padding:52px 0 76px}
    .brokerlist-page .section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}
    .brokerlist-page .section-head h2{margin:0;font-size:30px}
    .brokerlist-page .section-head p{max-width:610px;margin:7px 0 0;color:var(--muted)}
    .brokerlist-page .result-note{flex:0 0 auto;padding:8px 12px;border-radius:8px;background:#e8f0fd;color:var(--theme);font-size:13px;font-weight:700}
    .brokerlist-page .broker-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
    .brokerlist-page .broker-card{min-width:0;display:flex;flex-direction:column;padding:22px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 8px 24px rgba(18,43,78,.055);transition:.2s ease}
    .brokerlist-page .broker-card:hover{transform:translateY(-4px);border-color:#afc4e8;box-shadow:var(--shadow)}
    .brokerlist-page .broker-card-head{display:grid;grid-template-columns:68px minmax(0,1fr) auto;align-items:center;gap:14px;padding-bottom:18px;border-bottom:1px solid #e8ecf2}
    .brokerlist-page .broker-logo{width:68px;height:68px;padding:6px;object-fit:contain;border:1px solid #e3e8ef;border-radius:14px;background:#fff}
    .brokerlist-page .broker-name{min-width:0}
    .brokerlist-page .broker-name h3{margin:0 0 4px;font-size:21px;line-height:1.3;overflow-wrap:anywhere}
    .brokerlist-page .broker-name h3 a:hover{color:var(--theme)}
    .brokerlist-page .regulation{display:inline-flex;align-items:center;gap:5px;color:#23704d;font-size:13px;font-weight:700}
    .brokerlist-page .regulation::before{content:"✓";display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#e2f4ea}
    .brokerlist-page .rating{min-width:58px;padding:8px 7px;text-align:center;border-radius:11px;background:#fff5db;color:#8b620c}
    .brokerlist-page .rating strong{display:block;font-size:22px;line-height:1.15}
    .brokerlist-page .rating small{font-size:11px}
    .brokerlist-page .broker-summary{margin:17px 0;color:#5f6c80;font-size:14px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
    .brokerlist-page .broker-data{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:auto}
    .brokerlist-page .data-item{min-width:0;padding:11px 9px;border-radius:10px;background:#f5f7fa}
    .brokerlist-page .data-item span{display:block;color:#788396;font-size:11px}
    .brokerlist-page .data-item strong{display:block;margin-top:3px;color:#243249;font-size:14px;overflow-wrap:anywhere}
    .brokerlist-page .card-actions{display:flex;gap:10px;margin-top:18px}
    .brokerlist-page .detail-btn,.brokerlist-page .account-btn{flex:1;display:flex;min-height:43px;align-items:center;justify-content:center;border-radius:9px;font-size:14px;font-weight:800}
    .brokerlist-page .detail-btn{border:1px solid #b8c8e1;color:var(--theme)}
    .brokerlist-page .detail-btn:hover{background:var(--theme-soft)}
    .brokerlist-page .account-btn{background:var(--accent);color:#fff}
    .brokerlist-page .account-btn:hover{background:#a91f1f}
    .brokerlist-page .risk-note{margin:27px 0 0;padding:14px 17px;border-left:4px solid var(--gold);border-radius:0 10px 10px 0;background:#fff9e9;color:#6c5727;font-size:13px}
    .brokerlist-page .pagination{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:34px}
    .brokerlist-page .pagination a{min-width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;padding:0 13px;border:1px solid #d4dce8;border-radius:9px;background:#fff;color:#435069;font-weight:700}
    .brokerlist-page .pagination a:hover,.brokerlist-page .pagination a.active,.brokerlist-page .pagination a.current{border-color:var(--theme);background:var(--theme);color:#fff}

    .footer{background:#07162e;color:#bfcbe0}
    .footer .container{padding-top:54px}
    .footer-grid{display:grid;grid-template-columns:1.45fr 1fr 1fr 1.1fr;gap:38px;padding-bottom:42px}
    .footer h3{margin:0 0 15px;color:#fff;font-size:16px}
    .footer-brand strong{display:block;margin-bottom:12px;color:#fff;font-size:23px}
    .footer p{margin:7px 0;font-size:14px}
    .footer-grid>div>a{display:block;width:max-content;max-width:100%;margin:8px 0;color:#c7d2e4;font-size:14px}
    .footer-grid>div>a:hover{color:#fff}
    .footer-bottom{display:flex;justify-content:space-between;gap:20px;padding:19px 0 24px;border-top:1px solid rgba(255,255,255,.12);font-size:13px}

    @media (max-width:1100px){
      .main-nav{display:none}
      .hamburger{display:block}
      .header-inner{height:70px}
      .header-btns{margin-left:auto}
      .brokerlist-page .filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
      .brokerlist-page .filter-submit{align-self:end}
    }
    @media (max-width:820px){
      .container{width:min(100% - 28px,1180px)}
      .topbar .container{min-height:42px}
      .topbar-links span:last-child{display:none}
      .brokerlist-page .broker-hero{padding:54px 0 82px}
      .brokerlist-page .broker-grid{grid-template-columns:1fr}
      .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    }
    @media (max-width:600px){
      .topbar .container{justify-content:center}
      .topbar .container>span{display:none}
      .topbar-links{width:100%;justify-content:center}
      .member-link{display:none}
      .open-account{min-height:38px;padding:0 12px}
      .logo span{max-width:130px;overflow:hidden;text-overflow:ellipsis}
      .brokerlist-page .hero-copy p{font-size:15px}
      .brokerlist-page .hero-points{gap:7px}
      .brokerlist-page .filter-wrap{margin-top:-32px}
      .brokerlist-page .filter-panel{padding:17px}
      .brokerlist-page .filter-title{display:block}
      .brokerlist-page .filter-title p{margin-top:5px}
      .brokerlist-page .filter-grid{grid-template-columns:1fr}
      .brokerlist-page .filter-submit{width:100%}
      .brokerlist-page .section-head{display:block}
      .brokerlist-page .result-note{display:inline-block;margin-top:12px}
      .brokerlist-page .list-section{padding:40px 0 58px}
      .brokerlist-page .broker-card{padding:17px}
      .brokerlist-page .broker-card-head{grid-template-columns:58px minmax(0,1fr)}
      .brokerlist-page .broker-logo{width:58px;height:58px}
      .brokerlist-page .rating{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:7px;padding:7px}
      .brokerlist-page .rating strong{font-size:18px}
      .brokerlist-page .broker-data{grid-template-columns:1fr}
      .brokerlist-page .card-actions{flex-direction:column}
      .footer-grid{grid-template-columns:1fr;gap:25px}
      .footer-bottom{flex-direction:column}
    }