.brand-node{position:absolute;cursor:pointer;z-index:100;pointer-events:auto}.card-viewport{width:100%;height:100%;perspective:1200px;-webkit-perspective:1200px;contain:layout style paint}.card-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;-webkit-transform-style:preserve-3d;transition:transform .6s cubic-bezier(.4,0,.2,1)}.card-inner{transform:rotateY(0);-webkit-transform:rotateY(0deg)}.card-inner.flipped{transform:rotateY(180deg);-webkit-transform:rotateY(180deg)}.card-face{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#fff;border:1.5px solid rgba(203,213,225,.8);box-shadow:0 1px 3px #0000000a,0 4px 12px #00000008;border-radius:6px;overflow:hidden;backface-visibility:visible;-webkit-backface-visibility:visible;transition:opacity .35s ease,border-color .35s ease,box-shadow .35s ease,background-color .35s ease}.face-visible{opacity:1;pointer-events:auto}.face-hidden{opacity:0;pointer-events:none}.brand-node:hover .card-face{border-color:#00ada980;box-shadow:0 4px 14px #00ada926,0 2px 6px #0000000f}.brand-node:hover .logo-image{transform:scale(1.06)}.brand-node:hover .node-name{color:#00ada9;font-weight:700}.brand-node.empty-tile{cursor:default;pointer-events:none;background:transparent;border:1px dashed rgba(203,213,225,.3);box-shadow:none}.brand-node.empty-tile:hover{box-shadow:none}.brand-node.central-logo{border-radius:50%;z-index:200;position:relative}.brand-node.central-logo:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;border-radius:50%;background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.3),transparent 50%),linear-gradient(135deg,rgba(255,255,255,.85),#008b87d9 25%,rgba(255,255,255,.85),#008b87d9 75%,rgba(255,255,255,.85));animation:rotateGlobe 20s linear infinite;z-index:-1}.brand-node.central-logo:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.25),transparent 60%);pointer-events:none}@keyframes rotateGlobe{0%{background-position:0% 50%}to{background-position:200% 50%}}.node-pulse-ring{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;border-radius:6px;border:1.5px solid rgba(255,255,255,.15);box-shadow:0 0 6px rgba(81,80,80,.25),inset 0 0 6px #00ada90f;animation:pulseRing 2.5s ease-out infinite;pointer-events:none}.brand-node.central-logo .node-pulse-ring{border-radius:50%;border-width:2px;box-shadow:0 0 10px rgba(255,255,255,.18),0 0 20px #00ada926,inset 0 0 10px #ffffff26}.node-pulse-ring.delay-1{animation-delay:.4s}.node-pulse-ring.delay-2{animation-delay:.8s}.node-pulse-ring.delay-3{animation-delay:1.2s}.node-pulse-ring.delay-4{animation-delay:1.6s}.node-pulse-ring.delay-5{animation-delay:2s}@keyframes pulseRing{0%{transform:translate(-50%,-50%) scale(1);opacity:1;border-width:1.5px}50%{opacity:.5}to{transform:translate(-50%,-50%) scale(1.7);opacity:0;border-width:.5px}}.node-content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4px 6px;width:100%;height:100%;box-sizing:border-box;overflow:hidden;gap:2px}.node-logo{display:flex;align-items:center;justify-content:center;flex-shrink:0}.node-logo-placeholder{display:flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;font-size:12px;font-weight:700;color:#64748b;background:#f1f5f9;border-radius:5px;letter-spacing:-.5px}.brand-node.central-logo .node-logo-placeholder{width:120px;height:120px;font-size:42px;color:#fff;background:#ffffff26;border-radius:50%}.logo-image{width:auto;max-width:85%;height:32px;object-fit:contain;transition:transform .25s ease}.brand-node:hover .logo-image{transform:scale(1.05)}.brand-node.central-logo .logo-image{width:110px;height:110px}.node-name{font-size:9px;font-weight:600;color:#334155;text-transform:uppercase;letter-spacing:.3px;line-height:1.15;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.brand-node.central-logo .node-name{font-size:14px;font-weight:800;color:#fff;letter-spacing:2px;white-space:normal}.node-name-zh{font-size:7px;color:#94a3b8;margin-top:1px;font-weight:500;flex-shrink:0}.node-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:140%;height:140%;background:radial-gradient(circle,rgba(0,173,169,.05) 0%,rgba(0,173,169,.02) 40%,transparent 70%);animation:glowPulse 2s ease-in-out infinite;pointer-events:none;z-index:0;filter:blur(2px)}.brand-node.central-logo .node-glow{width:200%;height:200%;background:radial-gradient(circle,rgba(0,173,169,.2) 0%,rgba(0,173,169,.08) 40%,transparent 70%);filter:blur(4px)}@keyframes glowPulse{0%,to{opacity:.7;transform:translate(-50%,-50%) scale(1)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.06)}}.node-flag{font-size:18px;margin-bottom:0;filter:drop-shadow(0 1px 2px rgba(0,0,0,.2));flex-shrink:0}@media (max-width: 768px){.brand-node{border-width:1px;border-radius:5px}.node-content{padding:3px 4px;gap:1px}.logo-image{max-width:85%;height:24px}.brand-node.central-logo .logo-image{width:75px;height:75px}.brand-node.central-logo .node-logo-placeholder{width:80px;height:80px;font-size:28px}.node-logo-placeholder{width:22px;height:22px;font-size:9px}.node-flag{font-size:14px}.node-name{font-size:7px;letter-spacing:.2px}.brand-node.central-logo .node-name{font-size:10px}.node-name-zh{font-size:6px}}@media (min-width: 1920px){.brand-node{border-width:1.5px;border-radius:8px}.node-content{padding:6px 8px;gap:3px}.logo-image{max-width:85%;height:40px}.brand-node.central-logo .logo-image{width:150px;height:150px}.brand-node.central-logo .node-logo-placeholder{width:130px;height:130px;font-size:52px}.node-logo-placeholder{width:34px;height:34px;font-size:13px}.node-flag{font-size:22px}.node-name{font-size:11px;letter-spacing:.4px}.brand-node.central-logo .node-name{font-size:18px}.node-name-zh{font-size:8px}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-container{position:relative;width:90%;max-width:1200px;height:90%;max-height:800px;background-color:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;overflow:hidden}.modal-close-btn{position:absolute;top:15px;right:20px;width:40px;height:40px;background-color:#00000080;border:none;border-radius:50%;color:#fff;font-size:28px;cursor:pointer;z-index:10;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.modal-close-btn:hover{background-color:#000c;transform:scale(1.1)}.modal-iframe{width:100%;height:100%;border:none}@media (max-width: 768px){.modal-container{width:95%;height:95%}.modal-close-btn{top:10px;right:15px;width:35px;height:35px;font-size:24px}}@media (max-width: 480px){.modal-container{width:100%;height:100%;border-radius:0}.modal-close-btn{top:10px;right:10px;width:30px;height:30px;font-size:20px}}.brand-network{position:absolute;top:0;right:0;bottom:0;left:0;overflow-y:auto;overflow-x:hidden;background:linear-gradient(180deg,#f0f4f8,#e8eef4,#dde6ee)}.network-background{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;pointer-events:none}.grid-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-image:linear-gradient(rgba(0,0,0,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.03) 1px,transparent 1px);background-size:80px 80px}.brand-grid-container{position:absolute;top:40px;left:0;bottom:40px;right:340px;z-index:10;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px 12px;padding:24px 24px 30px 30px;overflow-y:auto;box-sizing:border-box}.brand-grid-container .brand-node{position:relative!important;left:auto!important;top:auto!important;transform:none!important;width:100%!important;height:auto!important;min-height:70px;contain:layout style paint}.brand-grid-container .card-viewport{width:100%;min-height:70px;perspective:1200px;-webkit-perspective:1200px}.brand-grid-container .card-inner{min-height:70px}.brand-grid-container .card-face{border-radius:8px;padding:12px 8px;box-sizing:border-box}.brand-grid-container .brand-node:hover .card-face{border-color:#00ada980;box-shadow:0 5px 18px #00ada926,0 2px 6px #0000000f}.brand-grid-container .brand-node:hover .node-name{color:#00ada9;font-weight:700;letter-spacing:1px}.brand-grid-container .brand-node:hover .logo-image{transform:scale(1.08)}.brand-grid-container .brand-node:hover .card-face:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:radial-gradient(circle at center,rgba(0,173,169,.06) 0%,transparent 70%);opacity:1;pointer-events:none;transition:opacity .3s ease}@media (max-width: 1400px){.brand-grid-container{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:7px 10px;padding:20px 20px 28px 24px;right:300px}.brand-grid-container .brand-logo{max-width:100px;max-height:32px}}@media (max-width: 1024px){.brand-grid-container{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:6px 8px;padding:16px 16px 24px 20px;right:260px}.brand-grid-container .brand-logo{max-width:100px;max-height:32px}}@media (max-width: 768px){.brand-network{min-height:500px}.brand-grid-container{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:5px 6px;padding:12px 14px 20px 16px;top:0;bottom:0;right:0}.brand-grid-container .brand-tile{padding:10px 6px;min-height:60px}.brand-grid-container .brand-logo{max-width:85px;max-height:28px}.brand-grid-container .brand-name-text{font-size:9px}}@media (min-width: 1920px){.brand-grid-container{grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:9px 14px;padding:30px 28px 40px 36px;right:360px}.brand-grid-container .brand-logo{max-width:140px;max-height:42px}.brand-grid-container .brand-name-text{font-size:12px}}.acquisition-timeline{position:absolute;right:20px;top:40px;bottom:40px;width:320px;height:calc(100% - 80px);background:linear-gradient(135deg,rgba(81,80,80,.25),rgba(81,80,80,.4)),linear-gradient(135deg,#3a3939b3,#001e32cc);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:2px solid rgba(255,255,255,.18);border-radius:16px;box-shadow:-10px 0 40px #00000080,0 0 30px rgba(81,80,80,.4),inset 0 0 60px rgba(255,255,255,.05);z-index:50;display:flex;flex-direction:column}.timeline-header{padding:24px 20px;border-bottom:2px solid rgba(255,255,255,.15);background:linear-gradient(135deg,rgba(81,80,80,.4),rgba(58,57,57,.6));border-radius:16px 16px 0 0}.timeline-header h3{margin:0;font-size:20px;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:2px;text-shadow:0 2px 8px rgba(0,173,169,.5)}.timeline-count{display:inline-block;margin-top:8px;padding:4px 12px;background:rgba(255,255,255,.18);border-radius:12px;font-size:12px;color:#ffffffe6;font-weight:600}.timeline-scroll-container{flex:1;overflow-y:auto;overflow-x:hidden;padding:20px 0;scrollbar-width:none;-ms-overflow-style:none}.timeline-scroll-container::-webkit-scrollbar{display:none}.timeline-track{position:relative;padding:0 20px}.timeline-item{position:relative;margin-bottom:12px;padding:10px 12px;background:#ffffff08;border:1.5px solid rgba(255,255,255,.12);border-radius:10px;cursor:pointer;transition:all .3s ease}.timeline-item:hover,.timeline-item.hovered{background:linear-gradient(135deg,rgba(81,80,80,.5),rgba(58,57,57,.7));border-color:rgba(255,255,255,.4);transform:translate(-8px);box-shadow:0 8px 24px rgba(0,0,0,.4),0 0 20px rgba(81,80,80,.5),inset 0 0 20px rgba(255,255,255,.08)}.timeline-year{position:absolute;top:-8px;left:12px;padding:3px 10px;background:linear-gradient(135deg,#515050,#6a6969);border-radius:6px;font-size:12px;font-weight:700;color:#fff;box-shadow:0 3px 10px rgba(0,0,0,.4)}.timeline-content{margin-top:8px}.timeline-brand-zh{display:flex;align-items:center;gap:8px;font-size:13px;color:#fff;margin-bottom:6px;font-weight:700}.timeline-brand-zh .brand-logo-wrapper{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;margin-left:8px;background:#ffffff1a;border-radius:50%;overflow:hidden}.brand-logo-small{width:100%;height:100%;object-fit:contain;padding:3px}.brand-logo-placeholder-small{font-size:12px;font-weight:700;color:#ffffffe6}.timeline-info-row{display:flex;align-items:center;gap:4px;margin-bottom:3px;font-size:11px;line-height:1.4}.info-label{color:rgba(255,255,255,.85);font-weight:600;white-space:nowrap}.info-value{color:#ffffffd9;flex:1;font-weight:500}.timeline-connector{position:absolute;left:-20px;top:50%;transform:translateY(-50%);display:flex;align-items:center}.connector-dot{width:10px;height:10px;background:#ffffff;border:2.5px solid #515050;border-radius:50%;box-shadow:0 0 10px rgba(255,255,255,.4);transition:all .3s ease}.timeline-item:hover .connector-dot,.timeline-item.hovered .connector-dot{width:13px;height:13px;background:#515050;border-color:#ffffff;box-shadow:0 0 16px rgba(255,255,255,.7)}.connector-line{position:absolute;left:-28px;width:2px;height:calc(100% + 24px);background:linear-gradient(180deg,rgba(255,255,255,.4),#00ada933)}.timeline-item:last-child .connector-line{display:none}@media (max-width: 1200px){.acquisition-timeline{width:280px}}@media (max-width: 768px){.acquisition-timeline{width:100%;height:auto;max-height:300px;position:relative;border-left:none;border-top:3px solid rgba(255,255,255,.5)}.timeline-scroll-container{overflow-x:auto;overflow-y:hidden}.timeline-track{display:flex;gap:16px;padding:20px;min-width:max-content}.timeline-item{min-width:200px;margin-bottom:0}.timeline-item:hover,.timeline-item.hovered{transform:translateY(-8px)}.connector-line{display:none}}.acquisition-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1000;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.acquisition-modal{position:relative;width:90%;max-width:700px;max-height:85vh;background:linear-gradient(135deg,#515050fa,#3a3939fc);border:3px solid rgba(255,255,255,.5);border-radius:20px;box-shadow:0 20px 60px #0009,0 0 40px rgba(255,255,255,.18),inset 0 0 60px #00ada91a;overflow:hidden;animation:slideIn .3s ease}@keyframes slideIn{0%{transform:translateY(-50px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-close{position:absolute;top:20px;right:20px;width:40px;height:40px;background:#ffffff1a;border:2px solid rgba(255,255,255,.3);border-radius:50%;color:#fff;font-size:28px;line-height:1;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;z-index:10}.modal-close:hover{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.6);transform:rotate(90deg)}.modal-header{padding:30px 30px 20px;background:linear-gradient(135deg,rgba(81,80,80,.4),rgba(58,57,57,.6));border-bottom:2px solid rgba(255,255,255,.15);display:flex;align-items:flex-start;gap:20px}.modal-year-badge{flex-shrink:0;padding:12px 20px;background:linear-gradient(135deg,#515050,#6a6969);border-radius:12px;font-size:24px;font-weight:800;color:#fff;box-shadow:0 6px 20px rgba(81,80,80,.6)}.modal-brand-info{flex:1}.modal-brand-name{display:flex;align-items:center;gap:12px;margin-bottom:8px}.modal-logo-wrapper{display:inline-flex;align-items:center;justify-content:center;width:50px;height:50px;background:#ffffff1a;border-radius:50%;overflow:hidden;filter:drop-shadow(0 4px 8px rgba(0,0,0,.4))}.modal-brand-logo{width:100%;height:100%;object-fit:contain;padding:8px}.modal-logo-placeholder{font-size:24px;font-weight:700;color:#ffffffe6}.modal-brand-name h2{margin:0;font-size:28px;font-weight:800;color:#fff;text-transform:uppercase;letter-spacing:2px;text-shadow:0 2px 8px rgba(0,173,169,.5)}.modal-brand-zh{font-size:18px;color:#ffffffe6;margin-bottom:6px;font-weight:600}.modal-country{font-size:14px;color:#ffffffb3;text-transform:uppercase;letter-spacing:1px}.modal-content{padding:30px;max-height:calc(85vh - 220px);overflow-y:auto}.modal-content::-webkit-scrollbar{width:8px}.modal-content::-webkit-scrollbar-track{background:#0003;border-radius:4px}.modal-content::-webkit-scrollbar-thumb{background:rgba(255,255,255,.4);border-radius:4px}.modal-section{margin-bottom:24px}.modal-section:last-child{margin-bottom:0}.modal-section h3{margin:0 0 12px;font-size:16px;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:1.5px;padding-bottom:8px;border-bottom:2px solid rgba(255,255,255,.25)}.modal-section p{margin:0;font-size:15px;line-height:1.7;color:#ffffffe6}.modal-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:24px;padding:20px;background:rgba(81,80,80,.25);border-radius:12px;border:1px solid rgba(255,255,255,.15)}.modal-info-item{display:flex;flex-direction:column;gap:6px}.modal-info-item .info-label{font-size:12px;font-weight:600;color:rgba(255,255,255,.85);text-transform:uppercase;letter-spacing:.5px}.modal-info-item .info-value{font-size:14px;color:#ffffffe6;font-weight:500}.modal-info-item .info-value.amount{font-size:16px;font-weight:700;color:#fff}.modal-footer{padding:20px 30px;background:rgba(0,0,0,.2);border-top:2px solid rgba(255,255,255,.15);display:flex;justify-content:center}.modal-button{padding:12px 40px;background:linear-gradient(135deg,#515050,#6a6969);border:none;border-radius:12px;color:#fff;font-size:16px;font-weight:700;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 16px rgba(0,0,0,.4)}.modal-button:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(255,255,255,.4)}@media (max-width: 768px){.acquisition-modal{width:95%;max-height:90vh}.modal-header{padding:20px;flex-direction:column;gap:16px}.modal-year-badge{font-size:20px;padding:10px 16px}.modal-brand-name h2{font-size:22px}.modal-logo-wrapper{width:40px;height:40px}.modal-logo-placeholder{font-size:20px}.modal-content{padding:20px;max-height:calc(90vh - 240px)}.modal-section h3,.modal-section p{font-size:14px}}.home-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#3a3939 0%,#515050 55%,#6a6969 100%)}.home-header{padding:16px 48px 12px;background:linear-gradient(180deg,#3a3939fa,#515050d9);border-bottom:3px solid rgba(255,255,255,.18);box-shadow:0 4px 24px #0000004d}.header-content{max-width:1600px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:60px}.header-left{flex-shrink:0}.header-brand{display:flex;align-items:center;gap:28px}.header-logo{height:70px;width:auto;object-fit:contain;filter:drop-shadow(0 4px 12px rgba(0,0,0,.4));transition:transform .3s ease}.header-logo:hover{transform:scale(1.05)}.header-text{display:flex;flex-direction:column;gap:6px}.header-title{font-size:2.2rem;font-weight:800;color:#fff;margin:0;line-height:1.2;letter-spacing:-.5px;text-shadow:0 3px 8px rgba(0,0,0,.4)}@keyframes titleGlow{0%,to{filter:drop-shadow(0 0 15px rgba(0,173,169,.4))}50%{filter:drop-shadow(0 0 25px rgba(255,255,255,.5))}}.header-subtitle{font-size:1.1rem;color:#ffffffe6;letter-spacing:2px;text-transform:uppercase;font-weight:600;line-height:1.3;margin-top:2px}.stats-section{display:flex;align-items:center;gap:40px;flex-shrink:0;background:#ffffff0d;padding:14px 28px;border-radius:16px;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.stat-item{text-align:center;min-width:80px}.stat-number{font-size:2.4rem;font-weight:800;color:#fff;line-height:1;margin-bottom:6px;letter-spacing:-1px;text-shadow:0 2px 8px rgba(0,0,0,.3)}.stat-label{font-size:.95rem;color:#ffffffbf;text-transform:uppercase;letter-spacing:1px;font-weight:500}.network-container{flex:1;position:relative;min-height:650px;height:650px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.home-header{padding:20px 24px 16px}.header-content{flex-direction:column;gap:20px;text-align:center}.header-brand{flex-direction:column;gap:12px}.header-logo{height:65px}.header-title{font-size:1.8rem}.header-subtitle{font-size:1.1rem}.stats-section{gap:32px;padding:16px 28px}.stat-number{font-size:2.2rem}.stat-label{font-size:.85rem}.network-container{min-height:550px;height:550px}}@media (min-width: 1920px){.home-header{padding:20px 72px 16px}.header-content{gap:60px}.header-logo{height:85px}.header-title{font-size:2.6rem}.header-subtitle{font-size:1.2rem}.stats-section{gap:60px;padding:16px 32px}.stat-number{font-size:2.8rem}.stat-label{font-size:1rem}.network-container{min-height:750px;height:750px}}.browsing-history{position:fixed;left:20px;bottom:20px;background:#fff;border-radius:16px;box-shadow:0 8px 32px #0000001f;z-index:100;transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden;min-width:280px}.browsing-history.expanded{width:360px;max-height:500px}.history-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.header-left{display:flex;align-items:center;gap:10px}.history-icon{font-size:1.3rem}.history-header h3{margin:0;font-size:1rem;font-weight:600}.header-actions{display:flex;gap:8px}.clear-btn,.expand-btn{background:#fff3;border:none;border-radius:8px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;color:#fff;font-size:.9rem}.clear-btn:hover,.expand-btn:hover{background:#ffffff4d;transform:scale(1.1)}.history-summary{display:flex;gap:16px;padding:12px 18px;background:#f5f5f5}.summary-item{display:flex;align-items:center;gap:6px}.summary-icon{font-size:1rem}.summary-value{font-size:.95rem;font-weight:600;color:#2c3e50}.history-content{max-height:400px;overflow-y:auto;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.history-tabs{display:flex;gap:4px;padding:12px;background:#f5f5f5;border-bottom:1px solid #e8e9ea}.tab-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 8px;background:#fff;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;color:#7f8c8d}.tab-btn:hover{background:#f5f5f5;color:#2c3e50}.tab-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 12px #667eea4d}.tab-icon{font-size:1.2rem}.tab-name{font-size:.75rem;font-weight:600}.tab-content{padding:16px}.section-title{font-size:.85rem;font-weight:600;color:#2c3e50;margin:0 0 12px}.recent-brands{display:flex;flex-direction:column;gap:8px}.recent-brand-item{display:flex;align-items:center;gap:12px;padding:12px;background:#f5f5f5;border-radius:10px;cursor:pointer;transition:all .3s ease;animation:fadeInUp .3s ease;animation-fill-mode:both}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.recent-brand-item:hover{background:#fff;box-shadow:0 4px 12px #00000014;transform:translate(4px)}.brand-rank{min-width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:50%;font-size:.85rem;font-weight:600}.brand-details{flex:1;min-width:0}.brand-name{display:block;font-size:.9rem;font-weight:600;color:#2c3e50;margin-bottom:4px}.brand-meta{display:block;font-size:.75rem;color:#7f8c8d}.brand-arrow{color:#bdc3c7;font-size:1.2rem;transition:all .3s ease}.recent-brand-item:hover .brand-arrow{color:#667eea;transform:translate(4px)}.empty-state{text-align:center;padding:40px 20px}.empty-icon{font-size:3rem;display:block;margin-bottom:12px;opacity:.5}.empty-state p{margin:0;color:#7f8c8d;font-size:.9rem}.stats-view{display:flex;flex-direction:column;gap:16px}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.stat-card{background:#f5f5f5;border-radius:10px;padding:14px;text-align:center;transition:all .3s ease}.stat-card:hover{background:#fff;box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.stat-icon{font-size:1.5rem;margin-bottom:8px}.stat-value{font-size:1.3rem;font-weight:700;color:#2c3e50;margin-bottom:4px}.stat-label{font-size:.75rem;color:#7f8c8d}.route-usage{margin-top:8px}.usage-bars{display:flex;flex-direction:column;gap:10px}.usage-item{display:flex;flex-direction:column;gap:6px}.usage-label{display:flex;justify-content:space-between;align-items:center}.usage-name{font-size:.85rem;color:#2c3e50;font-weight:500}.usage-count{font-size:.75rem;color:#7f8c8d}.usage-bar{height:6px;background:#e8e9ea;border-radius:3px;overflow:hidden}.usage-fill{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:3px;animation:fillBar .5s ease;animation-fill-mode:both}@keyframes fillBar{0%{width:0}}.history-timeline{display:flex;flex-direction:column;gap:10px}.timeline-entry{display:flex;gap:12px;padding:12px;background:#f5f5f5;border-radius:10px;animation:fadeInUp .3s ease;animation-fill-mode:both}.timeline-entry:hover{background:#fff;box-shadow:0 4px 12px #00000014}.entry-icon{font-size:1.3rem;min-width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#fff;border-radius:8px}.entry-content{flex:1;min-width:0}.entry-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.entry-type{font-size:.85rem;font-weight:600;color:#2c3e50}.entry-time{font-size:.75rem;color:#7f8c8d}.entry-details{display:flex;flex-wrap:wrap;gap:6px}.entry-brand,.entry-route,.entry-duration{font-size:.75rem;padding:3px 8px;background:#fff;border-radius:4px;color:#5a6c7d}.entry-route{color:#667eea}.entry-duration{color:#f093fb}.history-content::-webkit-scrollbar{width:6px}.history-content::-webkit-scrollbar-track{background:transparent}.history-content::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.history-content::-webkit-scrollbar-thumb:hover{background:#9ca3af}@media (max-width: 768px){.browsing-history{left:10px;right:10px;bottom:10px;min-width:auto;width:auto}.browsing-history.expanded{width:auto;max-height:60vh}.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.history-header{padding:12px 14px}.history-header h3{font-size:.95rem}.tab-btn{padding:8px 6px}.tab-icon{font-size:1rem}.tab-name{font-size:.7rem}.tab-content{padding:12px}}.history-page{min-height:100vh;background:#f5f5f5;padding-bottom:40px}.history-page-header{background:linear-gradient(135deg,#036,#024);border-bottom:1px solid rgba(0,173,169,.2);padding:30px 20px}.history-page-header .header-content{max-width:1200px;margin:0 auto}.back-link{display:inline-block;color:#00ada9;text-decoration:none;font-size:.9rem;margin-bottom:15px;transition:color .3s ease}.back-link:hover{color:#00c4bf}.page-title{font-size:2rem;font-weight:700;color:#00ada9;margin:0 0 10px;text-shadow:0 0 20px rgba(0,173,169,.3)}.page-subtitle{font-size:1rem;color:#666;margin:0}.history-page-content{max-width:1200px;margin:0 auto;padding:30px 20px}.section-title{font-size:1.3rem;font-weight:600;color:#00ada9;margin:0 0 20px;padding-bottom:10px;border-bottom:2px solid rgba(0,173,169,.2)}.stats-section{margin-bottom:40px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:20px}.stat-card{background:#5150501a;border:1px solid rgba(0,173,169,.2);border-radius:12px;padding:20px;display:flex;align-items:center;gap:15px;transition:all .3s ease}.stat-card:hover{border-color:rgba(0,0,0,.4);transform:translateY(-2px)}.stat-icon{font-size:2rem}.stat-info{display:flex;flex-direction:column;gap:5px}.stat-value{font-size:1.5rem;font-weight:700;color:#00ada9}.stat-label{font-size:.85rem;color:#666}.most-visited{background:#00ada91a;border:1px solid rgba(0,173,169,.2);border-radius:8px;padding:12px 20px;display:flex;align-items:center;gap:10px}.most-visited-label{color:#666;font-size:.9rem}.most-visited-value{color:#00ada9;font-weight:500}.visit-count{color:#666;font-size:.85rem;margin-left:5px}.history-section,.settings-section{margin-bottom:40px}.settings-card{background:#5150501a;border:1px solid rgba(0,173,169,.2);border-radius:12px;overflow:hidden}.setting-item{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid rgba(0,173,169,.1)}.setting-item:last-of-type{border-bottom:none}.setting-info{display:flex;flex-direction:column;gap:5px}.setting-label{font-size:1rem;font-weight:500;color:#333}.setting-desc{font-size:.85rem;color:#666}.toggle-btn{background:#00ada91a;border:1px solid rgba(0,173,169,.3);border-radius:20px;padding:8px 20px;color:#666;font-size:.9rem;cursor:pointer;transition:all .3s ease}.toggle-btn.active{background:#00ada933;border-color:#00ada9;color:#00ada9}.toggle-btn:hover{background:#00ada933}.storage-size,.visitor-id{font-family:monospace;font-size:.9rem;color:#666;background:#5150501a;padding:5px 10px;border-radius:4px}.visitor-id{font-size:.75rem;max-width:200px;overflow:hidden;text-overflow:ellipsis}.danger-zone{background:#ff64640d;border-top:1px solid rgba(255,100,100,.2);padding:20px}.danger-title{font-size:.9rem;font-weight:600;color:#ff8080;margin:0 0 15px}.danger-actions{display:flex;gap:15px}.danger-btn{background:#ff64641a;border:1px solid rgba(255,100,100,.3);border-radius:6px;padding:10px 20px;color:#ff8080;font-size:.9rem;cursor:pointer;transition:all .3s ease}.danger-btn:hover:not(:disabled){background:#ff646433;border-color:#ff646480}.danger-btn:disabled{opacity:.5;cursor:not-allowed}.danger-btn.danger{background:#ff646433;border-color:#ff646466}.confirm-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.confirm-content{background:#fff;border:1px solid rgba(0,173,169,.3);border-radius:12px;padding:30px;max-width:400px;width:90%;text-align:center}.confirm-content h3{color:#00ada9;margin:0 0 15px;font-size:1.3rem}.confirm-content p{color:#666;font-size:.95rem;line-height:1.6;margin:0 0 25px}.confirm-actions{display:flex;gap:15px;justify-content:center}.cancel-btn,.confirm-btn{border-radius:6px;padding:10px 25px;font-size:.95rem;cursor:pointer;transition:all .3s ease}.cancel-btn{background:#00ada91a;border:1px solid rgba(0,173,169,.3);color:#666}.cancel-btn:hover{background:#00ada933;border-color:#00ada980}.confirm-btn{background:#ff646433;border:1px solid rgba(255,100,100,.4);color:#ff8080}.confirm-btn:hover{background:#ff64644d;border-color:#ff646499}@media (max-width: 768px){.page-title{font-size:1.5rem}.stats-grid{grid-template-columns:repeat(2,1fr);gap:15px}.stat-card{padding:15px}.stat-icon{font-size:1.5rem}.stat-value{font-size:1.2rem}.setting-item{flex-direction:column;align-items:flex-start;gap:10px}.toggle-btn{width:100%;text-align:center}.visitor-id{max-width:100%}.danger-actions{flex-direction:column}.danger-btn{width:100%}.confirm-actions{flex-direction:column}.cancel-btn,.confirm-btn{width:100%}}@media (max-width: 480px){.history-page-header,.history-page-content{padding:20px 15px}.stats-grid{grid-template-columns:1fr}.most-visited{flex-direction:column;align-items:flex-start;gap:5px}}.app{width:100%;min-height:100vh;display:flex;flex-direction:column}:root{--primary-color: #00ADA9;--secondary-color: #515050;--accent-color: #F5F5F5;--background-color: #F5F5F5;--text-color: #333333;--border-color: #d9d9d9;--shadow: 0 2px 8px rgba(0, 0, 0, .1);--transition: all .3s ease;--font-size-xs: 12px;--font-size-sm: 14px;--font-size-base: 16px;--font-size-lg: 18px;--font-size-xl: 20px;--font-size-xxl: 24px;--font-size-exhibition: 28px;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-xxl: 48px;--spacing-exhibition: 64px;--border-radius-sm: 4px;--border-radius-md: 8px;--border-radius-lg: 12px;--border-radius-exhibition: 16px;--breakpoint-xs: 320px;--breakpoint-sm: 576px;--breakpoint-md: 768px;--breakpoint-lg: 992px;--breakpoint-xl: 1200px;--breakpoint-xxl: 1600px;--breakpoint-exhibition: 1920px;--touch-target-size: 44px;--touch-target-spacing: 8px}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,Microsoft YaHei,sans-serif;background-color:var(--background-color);color:var(--text-color);line-height:1.6;overflow-x:hidden}#root{width:100%;min-height:100vh}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}@media (max-width: 768px){html{font-size:14px}.container{padding:0 var(--spacing-sm)}}@media (max-width: 480px){html{font-size:12px}}@media (min-width: 1920px){html{font-size:18px}.container{max-width:2400px;padding:0 var(--spacing-exhibition)}}@media (min-width: 2560px){html{font-size:20px}.container{max-width:3200px}}@media (min-width: 3840px){html{font-size:24px}.container{max-width:4800px}}@media (hover: none) and (pointer: coarse){button,a,[role=button]{min-height:var(--touch-target-size);min-width:var(--touch-target-size)}input,textarea,select{min-height:var(--touch-target-size);font-size:16px}}@media (hover: hover) and (pointer: fine){button:hover,a:hover{transform:translateY(-1px)}button:active,a:active{transform:translateY(0)}}@media (orientation: portrait){.landscape-only{display:none!important}}@media (orientation: landscape){.portrait-only{display:none!important}}@supports (display: grid){.grid-auto-fit{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-md)}.grid-auto-fill{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-md)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-color-scheme: dark){:root{--background-color: #1a1a1a;--text-color: #e0e0e0;--border-color: #333333}}@supports (backdrop-filter: blur(10px)){.glass-effect{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}}@supports not (backdrop-filter: blur(10px)){.glass-effect{background:#fffffff2}}img{max-width:100%;height:auto;display:block}a{text-decoration:none;color:inherit;transition:var(--transition)}button{cursor:pointer;border:none;outline:none;font-family:inherit;transition:var(--transition)}input,textarea,select{font-family:inherit;outline:none;border:1px solid var(--border-color);border-radius:var(--border-radius-sm);padding:var(--spacing-sm) var(--spacing-md);transition:var(--transition)}input:focus,textarea:focus,select:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px rgba(255,255,255,.18)}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.3;margin-bottom:var(--spacing-md)}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.75rem}h4{font-size:1.5rem}h5{font-size:1.25rem}h6{font-size:1rem}p{margin-bottom:var(--spacing-md)}.flex{display:flex}.flex-center{display:flex;justify-content:center;align-items:center}.flex-between{display:flex;justify-content:space-between;align-items:center}.flex-column{display:flex;flex-direction:column}.grid{display:grid;gap:var(--spacing-md)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.hidden{display:none!important}.visible-xs,.visible-sm,.visible-md,.visible-lg{display:none}@media (max-width: 575px){.visible-xs{display:block}.hidden-xs{display:none!important}}@media (min-width: 576px) and (max-width: 767px){.visible-sm{display:block}.hidden-sm{display:none!important}}@media (min-width: 768px) and (max-width: 991px){.visible-md{display:block}.hidden-md{display:none!important}}@media (min-width: 992px){.visible-lg{display:block}.hidden-lg{display:none!important}}@media (min-width: 1600px){.visible-xxl{display:block}.hidden-xxl{display:none!important}}@media (min-width: 1920px){.visible-exhibition{display:block}.hidden-exhibition{display:none!important}.exhibition-full-height{height:100vh}.exhibition-full-width{width:100vw}}@media (max-width: 575px) and (orientation: portrait){.mobile-portrait-stack{flex-direction:column}}@media (max-width: 767px){.mobile-center{text-align:center}.mobile-full-width{width:100%}.mobile-no-padding{padding:0}.mobile-no-margin{margin:0}}@media (min-width: 768px) and (max-width: 991px){.tablet-center{text-align:center}.tablet-full-width{width:100%}}@media (min-width: 1920px){.exhibition-large-text{font-size:1.5em}.exhibition-extra-padding{padding:var(--spacing-exhibition)}}@media (max-aspect-ratio: 3/4){.tall-screen-optimized{flex-direction:column}}@media (min-aspect-ratio: 16/9){.wide-screen-optimized{flex-direction:row}}@media (min-aspect-ratio: 21/9){.ultrawide-optimized{max-width:60%;margin:0 auto}}

/* ===== 集成到 FFG 官网后：隐藏品牌墙应用自身的蓝色面板/Logo/文字（主站 hero 已提供） ===== */
.home-page>.home-header{display:none!important}
.home-page{min-height:100%}
.network-container{height:auto!important;min-height:calc(100vh - 0px)!important;flex:1 1 auto}
@media (max-width: 768px){.network-container{height:auto!important;min-height:calc(100vh - 0px)!important}}
@media (min-width: 1920px){.network-container{height:auto!important;min-height:calc(100vh - 0px)!important}}


/* ===== Brandwall restyle v2 (FFG green theme) ===== */
/* Timeline panel: white background, black text, green accents */
.acquisition-timeline{background:#ffffff;border:2px solid #e2e2e2;border-radius:16px;box-shadow:-10px 0 40px rgba(0,0,0,.08),0 0 30px rgba(0,0,0,.06);backdrop-filter:none;-webkit-backdrop-filter:none}
.timeline-header{background:linear-gradient(135deg,#f0fdfc,rgba(0,173,169,.10));border-bottom:1px solid #e2e2e2;border-radius:14px 14px 0 0}
.timeline-header h3{color:#00ADA9;text-shadow:none}
.timeline-count{background:#00ADA9;color:#ffffff;box-shadow:0 2px 8px rgba(0,173,169,.30)}
.timeline-item{background:#ffffff;border:1px solid #eeeeee;border-radius:10px}
.timeline-item:hover,.timeline-item.hovered{background:#f7fffe;border-color:#00ADA9;box-shadow:0 4px 14px rgba(0,173,169,.12)}
.timeline-brand-zh{color:#2a2929}
.timeline-brand-zh .brand-logo-wrapper{background:#ffffff;border:1px solid #eeeeee}
.timeline-info-row .info-label{color:#515050}
.timeline-info-row .info-value{color:#2a2929}
.timeline-year{background:linear-gradient(135deg,#00ADA9,#018A87)}
.connector-line{background:linear-gradient(180deg,rgba(0,173,169,.5),rgba(0,173,169,.15))}
.connector-dot{background:#00ADA9;border-color:#ffffff;box-shadow:0 0 8px rgba(0,173,169,.35)}
.timeline-item:hover .connector-dot,.timeline-item.hovered .connector-dot{background:#018A87;border-color:#00ADA9}
/* Brand tiles: alternate FFG green / green-gray gradient / white with line */
.brand-grid-container .card-face{background:#ffffff;border:1px solid #e2e2e2}
.brand-grid-container .brand-node:not(.central-logo):nth-child(4n+1) .card-face{background:linear-gradient(135deg,#00ADA9,#018A87);border:1px solid #00ADA9}
.brand-grid-container .brand-node:not(.central-logo):nth-child(4n+1) .node-name{color:#ffffff}
.brand-grid-container .brand-node:not(.central-logo):nth-child(4n+1) .node-name-zh{color:rgba(255,255,255,.85)}
.brand-grid-container .brand-node:not(.central-logo):nth-child(4n+2) .card-face{background:linear-gradient(135deg,#00ADA9 0%,#3a3939 100%);border:1px solid #00ADA9}
.brand-grid-container .brand-node:not(.central-logo):nth-child(4n+2) .node-name{color:#ffffff}
.brand-grid-container .brand-node:not(.central-logo):nth-child(4n+2) .node-name-zh{color:rgba(255,255,255,.85)}
.brand-grid-container .brand-node:not(.central-logo):nth-child(4n+3) .card-face{background:#ffffff;border:1px solid #e2e2e2}
.brand-grid-container .brand-node:not(.central-logo):nth-child(4n+3) .node-name{color:#2a2929}
.brand-grid-container .brand-node:not(.central-logo):nth-child(4n+3) .node-name-zh{color:#8a8989}
/* Modal (acquisition detail) on light background */
.acquisition-modal{background:linear-gradient(135deg,#ffffff,#f4f5f6);border:2px solid #00ADA9}
.acquisition-modal .modal-brand-name h2{color:#2a2929;text-shadow:none}
.acquisition-modal .modal-brand-zh{color:#515050}
.acquisition-modal .modal-country{color:#8a8989}
.acquisition-modal .modal-info-grid{background:#f7f7f7;border:1px solid #eeeeee}
.acquisition-modal .modal-info-item .info-label{color:#515050}
.acquisition-modal .modal-info-item .info-value{color:#2a2929}
.acquisition-modal .modal-section h3{color:#00ADA9}
.acquisition-modal .modal-section p{color:#2a2929}
.acquisition-modal .modal-button{background:linear-gradient(135deg,#00ADA9,#018A87);color:#ffffff}
.acquisition-modal .modal-year-badge{background:linear-gradient(135deg,#00ADA9,#018A87);color:#ffffff}
.acquisition-modal .modal-close{background:rgba(0,173,169,.10);border:1px solid rgba(0,173,169,.30);color:#00ADA9}
.acquisition-modal .modal-close:hover{background:rgba(0,173,169,.20)}
.acquisition-modal .modal-logo-wrapper{background:#f0fdfc;border:1px solid #d9f5f3}

/* ===== Brandwall restyle v3: white grid background ===== */
.brand-network{background:#ffffff!important}
.brand-grid-container .brand-node .card-face{background:#ffffff}
.acquisition-timeline{background:#ffffff!important}

/* ===== Brandwall v4: all tiles white, hide brand text ===== */
.brand-grid-container .brand-node:not(.central-logo) .card-face{background:#ffffff!important;border:1px solid #e2e2e2!important}
.brand-grid-container .brand-node:not(.central-logo):nth-child(4n+1) .card-face{background:#ffffff!important;border:1px solid #e2e2e2!important}
.brand-grid-container .brand-node:not(.central-logo):nth-child(4n+2) .card-face{background:#ffffff!important;border:1px solid #e2e2e2!important}
.brand-grid-container .brand-node:not(.central-logo):nth-child(4n+3) .card-face{background:#ffffff!important;border:1px solid #e2e2e2!important}
.brand-grid-container .brand-node:not(.central-logo) .node-name{display:none!important}
.brand-grid-container .brand-node:not(.central-logo) .node-name-zh{display:none!important}
