:root{
      --primary:#0B3D91;
      --primary-dark:#082b68;
      --ink:#172033;
      --muted:#667085;
      --line:#e5eaf1;
      --soft:#f5f8fc;
      --white:#fff;
      --shadow:0 16px 42px rgba(18,42,78,.10);
      --radius:18px
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{margin:0;color:var(--ink);background:#f8fafc;font-family:"Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif;line-height:1.7}
    body.drawer-locked{overflow:hidden}
    a{color:inherit;text-decoration:none}
    img{max-width:100%;display:block}
    button{font:inherit}
    .container{width:min(1180px,calc(100% - 40px));margin:0 auto}

    .topbar{background:#0b1d3a;color:#dce8fb;font-size:13px}
    .topbar-inner{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:20px}
    .topbar-contact{display:flex;gap:22px}
    .topbar a{color:#dce8fb;transition:.2s}
    .topbar a:hover{color:#fff}

    .header{position:relative;z-index:30;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line)}
    .header-inner{min-height:78px;display:flex;align-items:center;gap:26px}
    .logo{display:inline-flex;align-items:center;gap:10px;min-width:max-content;font-size:19px;font-weight:800;color:var(--primary)}
    .logo img{width:36px;height:36px;object-fit:contain}
    .main-nav{margin-left:auto}
    .nav-list{display:flex;align-items:stretch;gap:3px;list-style:none;margin:0;padding:0}
    .nav-item{position:relative}
    .nav-link{display:flex;align-items:center;gap:5px;padding:27px 12px;color:#29364d;font-size:14px;font-weight:700;white-space:nowrap}
    .nav-link:hover,.nav-link:focus{color:var(--primary)}
    .has-arrow:after{content:"";width:6px;height:6px;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%;transform:translateX(-50%) translateY(8px);visibility:hidden;opacity:0;pointer-events:none;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);transition:.2s ease;z-index:50}
    .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;pointer-events:auto;transform:translateX(-50%) translateY(0)}
    .dropdown-panel{width:250px;padding:12px;border-radius:0 0 14px 14px}
    .dropdown-panel:before,.mega-menu:before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px}
    .dropdown-panel a{display:block;padding:8px 10px;border-radius:8px;font-size:14px}
    .dropdown-panel a:hover{background:var(--soft);color:var(--primary)}
    .dropdown-all,.mega-footer{color:var(--primary)!important;font-weight:800;border-top:1px solid var(--line);margin-top:7px;padding-top:11px!important}
    .mega-menu{width:min(760px,calc(100vw - 28px));padding:22px;border-radius:0 0 18px 18px}
    .mega-heading{font-size:17px;margin:0 0 14px;color:var(--primary)}
    .mega-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
    .mega-card{display:block;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fff;transition:.2s}
    .mega-card:hover{border-color:#9fb8e4;transform:translateY(-2px);box-shadow:0 7px 20px rgba(11,61,145,.09)}
    .mega-card img{width:30px;height:30px;object-fit:contain;margin-bottom:6px}
    .mega-card strong{display:block;font-size:13px}
    .mega-card p{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.5}
    .mega-card-cover img{width:100%;height:72px;object-fit:cover;border-radius:8px}
    .mega-meta{display:flex;flex-wrap:wrap;gap:6px 10px;margin-top:7px;color:var(--muted);font-size:11px}
    .mega-categories{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:15px}
    .mega-categories a{padding:5px 10px;border-radius:999px;background:#eef4fd;color:var(--primary);font-size:12px}
    .header-btns{display:flex;align-items:center;gap:10px}
    .member-entry{font-size:14px;color:var(--primary);font-weight:700;white-space:nowrap}
    .account-btn{padding:9px 15px;border-radius:9px;background:var(--primary);color:#fff;font-size:13px;font-weight:800;white-space:nowrap}
    .account-btn:hover{background:var(--primary-dark)}
    .hamburger{display:none;width:42px;height:40px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:8px;cursor:pointer}
    .hamburger span{display:block;width:22px;height:2px;margin:5px auto;background:var(--primary);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;background:rgba(5,19,42,.48);opacity:0;visibility:hidden;z-index:80;transition:.25s}
    .drawer-overlay.open{opacity:1;visibility:visible}
    .mobile-drawer{position:fixed;top:0;right:0;width:min(390px,88vw);height:100vh;overflow:auto;background:#fff;transform:translateX(100%);transition:.28s;z-index:90;box-shadow:-12px 0 35px rgba(0,0,0,.15)}
    .mobile-drawer.open{transform:translateX(0)}
    .drawer-head{display:flex;align-items:center;gap:12px;padding:20px;border-bottom:1px solid var(--line);color:var(--primary);font-weight:800}
    .drawer-head>a{margin-left:auto;padding:7px 11px;border-radius:7px;background:var(--primary);color:#fff;font-size:13px}
    .drawer-close{border:0;background:transparent;color:#5d6a7c;font-size:28px;line-height:1;cursor:pointer}
    .drawer-menu{padding:12px 20px 30px}
    .drawer-link,.drawer-toggle{display:block;width:100%;padding:13px 0;border:0;border-bottom:1px solid var(--line);background:transparent;text-align:left;color:var(--ink);font-weight:700;cursor:pointer}
    .drawer-toggle:after{content:"+";float:right;color:var(--primary);font-size:19px}
    .drawer-toggle.active:after{content:"−"}
    .drawer-submenu{display:none;padding:5px 0 8px 15px}
    .drawer-submenu.open{display:block}
    .drawer-submenu a{display:block;padding:7px 0;color:var(--muted);font-size:14px}

    .productlist-main{padding:54px 0 90px}
    .page-heading{text-align:center;max-width:760px;margin:0 auto 34px}
    .eyebrow{display:inline-flex;padding:5px 12px;border-radius:999px;background:#eaf1fc;color:var(--primary);font-size:12px;font-weight:800;letter-spacing:.08em}
    .page-heading h1{margin:13px 0 10px;font-size:clamp(30px,4vw,48px);line-height:1.2;letter-spacing:-.03em}
    .page-heading p{margin:0;color:var(--muted);font-size:16px}
    .product-category-bar{display:flex;flex-wrap:wrap;justify-content:center;gap:9px;margin:0 auto 30px}
    .product-category-bar a{padding:8px 15px;border:1px solid #d7e1ef;border-radius:999px;background:#fff;color:#46566e;font-size:13px;transition:.2s}
    .product-category-bar a:hover,.product-category-bar a.active{border-color:var(--primary);background:var(--primary);color:#fff}
    .product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
    .product-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 8px 24px rgba(21,48,88,.05);transition:.25s}
    .product-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:#b3c9e9}
    .product-cover{height:190px;background:#edf3fb;overflow:hidden}
    .product-cover img{width:100%;height:100%;object-fit:cover}
    .product-body{display:flex;flex:1;flex-direction:column;padding:20px}
    .product-label{display:inline-block;align-self:flex-start;margin-bottom:9px;padding:4px 9px;border-radius:6px;background:#edf3fb;color:var(--primary);font-size:11px;font-weight:800}
    .product-body h2{margin:0 0 9px;font-size:20px;line-height:1.35}
    .product-summary{display:-webkit-box;overflow:hidden;margin:0;color:var(--muted);font-size:14px;line-height:1.75;-webkit-box-orient:vertical;-webkit-line-clamp:3}
    .product-meta{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:auto;padding-top:18px;color:#78869a;font-size:12px}
    .product-meta span+span{padding-left:14px;border-left:1px solid #dce3ed}
    .product-cta{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;margin-top:16px;padding:9px 15px;border-radius:8px;background:#f0f5fc;color:var(--primary);font-size:13px;font-weight:800}
    .product-card:hover .product-cta{background:var(--primary);color:#fff}
    .pagination{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:42px}
    .pagination a{display:inline-flex;min-width:38px;height:38px;align-items:center;justify-content:center;padding:0 12px;border:1px solid #d7e1ef;border-radius:8px;background:#fff;color:#53637a;font-size:13px}
    .pagination a:hover,.pagination a.current,.pagination a.active{background:var(--primary);border-color:var(--primary);color:#fff}

    .footer{background:#0b1d3a;color:#cbd8eb}
    .footer-main{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:42px;padding:55px 0 42px}
    .footer .logo{color:#fff}
    .footer .logo img{filter:brightness(0) invert(1)}
    .footer-brand p{max-width:330px;margin:17px 0 0;color:#9eb0c8;font-size:13px}
    .footer h2{margin:0 0 14px;color:#fff;font-size:15px}
    .footer-links{display:grid;gap:8px}
    .footer-links a{color:#aebed3;font-size:13px}
    .footer-links a:hover{color:#fff}
    .footer-bottom{display:flex;justify-content:space-between;gap:20px;padding:18px 0;border-top:1px solid rgba(255,255,255,.12);color:#899db8;font-size:12px}

    @media (max-width:1050px){
      .main-nav{display:none}
      .hamburger{display:block}
      .header-btns{margin-left:auto}
      .product-grid{grid-template-columns:repeat(2,1fr)}
    }
    @media (max-width:700px){
      .container{width:min(100% - 28px,1180px)}
      .topbar-inner{min-height:34px;font-size:11px}
      .topbar-contact{gap:9px}
      .topbar-contact a:first-child{display:none}
      .header-inner{min-height:68px}
      .logo{font-size:16px}
      .logo img{width:31px;height:31px}
      .member-entry{display:none}
      .account-btn{padding:8px 10px;font-size:12px}
      .productlist-main{padding:38px 0 65px}
      .page-heading{margin-bottom:25px}
      .page-heading h1{font-size:31px}
      .page-heading p{font-size:14px}
      .product-grid{grid-template-columns:1fr;gap:15px}
      .product-cover{height:175px}
      .footer-main{grid-template-columns:1fr 1fr;gap:30px 20px;padding:40px 0 30px}
      .footer-brand{grid-column:1/-1}
      .footer-bottom{display:block}
      .footer-bottom span{display:block;margin-top:5px}
    }