@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap";@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap";*,*:before,*:after{box-sizing:border-box}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;--bg-color: #fcfcfc;--text-color: #333;--card-bg: #ffffff;--modal-bg: #ffffff;--border-color: #eeeeee;--secondary-text: #4a5568;color-scheme:light dark;color:var(--text-color);background-color:var(--bg-color);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}[data-theme=dark]{--bg-color: #121212;--text-color: #e0e0e0;--card-bg: #1e1e1e;--modal-bg: #1e1e1e;--border-color: #333333;--secondary-text: #a0aec0}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh;background-color:var(--bg-color);color:var(--text-color);overflow-x:hidden;scrollbar-width:none;-ms-overflow-style:none}body::-webkit-scrollbar{display:none}.app-wrapper{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}@media(max-width:768px){.app-wrapper{padding-bottom:calc(68px + env(safe-area-inset-bottom))}}body.modal-open{overflow:hidden!important;touch-action:none}.modal-overlay{position:fixed;inset:0;width:100vw;height:100vh;background:#0a0f1ec7;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);display:flex;align-items:center;justify-content:center;z-index:99999;padding:20px}.modal-content.professional-modal{background:var(--modal-bg);width:100%;max-width:440px;max-height:90vh;border-radius:20px;padding:30px 26px;position:relative;box-shadow:0 20px 50px #0006,0 0 0 1px #ffffff14;border:1px solid var(--border-color);text-align:center;overflow-y:auto;scrollbar-width:none}[data-theme=dark] .modal-content.professional-modal{background:#121824;border-color:#ffffff14;box-shadow:0 25px 60px #0009,0 0 0 1px #38bdf826}.modal-close{position:absolute;top:16px;right:16px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#ffffff0d;border:1px solid var(--border-color);color:var(--secondary-text);cursor:pointer;padding:0;border-radius:8px;transition:all .2s ease;z-index:10}.modal-close:hover{color:#fff;background:#ef4444;border-color:#ef4444;transform:none}.pro-icon{width:52px;height:52px;margin:0 auto 16px;background:#0ea5e91a;border:1px solid rgba(14,165,233,.25);border-radius:14px;display:flex;align-items:center;justify-content:center}.heart-pro-icon{background:#10b9811a;border-color:#10b98140}.icon-cyan{color:#38bdf8}.icon-emerald{color:#10b981}.pro-title{font-size:1.35rem;font-weight:700;color:var(--text-color);margin-bottom:14px;letter-spacing:-.3px;line-height:1.35}.pro-badge{display:inline-flex;align-items:center;padding:5px 14px;background:#38bdf81a;color:#38bdf8;border:1px solid rgba(56,189,248,.25);border-radius:8px;font-size:.82rem;font-weight:600;margin-bottom:18px;max-width:95%}.pro-qr-container{width:auto;max-width:220px;margin:0 auto 18px;padding:10px;background:#fff;border-radius:16px;border:1px solid rgba(255,255,255,.15);box-shadow:0 10px 25px #00000026;display:flex;flex-direction:column;align-items:center;justify-content:center;box-sizing:border-box}.pro-qr-container .qr-image{width:100%;max-width:190px;height:auto;aspect-ratio:1 / 1;object-fit:contain;border-radius:8px;display:block}.pro-qr-hint{font-size:.78rem;font-weight:600;color:#1e293b;background:#f1f5f9;padding:4px 10px;border-radius:6px;width:100%;text-align:center}.pro-price-box{background:#ffffff08;border:1px solid var(--border-color);border-radius:12px;padding:12px 16px;margin-bottom:18px;display:flex;flex-direction:column;gap:8px}.modal-price-row{display:flex;align-items:center;justify-content:space-between;font-size:.88rem}.modal-price-row:not(:last-child){border-bottom:1px dashed var(--border-color);padding-bottom:6px}.modal-price-label{color:var(--secondary-text);font-weight:500}.modal-price-val{font-weight:700}.modal-price-val.src-val{color:#38bdf8}.modal-price-val.cus-val{color:#f59e0b}.pro-text{color:var(--secondary-text);line-height:1.6;margin-bottom:20px;font-size:.9rem;text-align:left}.modal-action-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:13px;border-radius:10px;font-weight:700;font-size:.92rem;text-decoration:none;cursor:pointer;transition:all .25s ease;margin-bottom:16px;border:none}.btn-pro-zalo{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;box-shadow:0 4px 14px #2563eb59}.btn-pro-zalo:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);transform:translateY(-1px);box-shadow:0 6px 18px #2563eb73}.modal-footer-note{font-size:.82rem;color:var(--secondary-text);font-weight:500;display:flex;align-items:center;justify-content:center}.modal-content.iframe-modal-content{position:relative;max-width:95vw;width:1200px;height:90vh;padding:0;display:flex;flex-direction:column;overflow:hidden;background:#000;border:1px solid rgba(255,255,255,.15);border-radius:14px}.modal-content.iframe-modal-content.is-tiktok{width:450px;max-width:95vw;height:85vh}.iframe-header{display:flex;justify-content:space-between;align-items:center;padding:12px 18px;background:#18181b;border-bottom:1px solid rgba(255,255,255,.1);gap:12px}.iframe-title{font-weight:700;color:#fff;font-size:1.05rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.iframe-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.iframe-actions .modal-close{position:relative;top:auto;right:auto;width:32px;height:32px;background:#ffffff14;border:1px solid rgba(255,255,255,.15);color:#e4e4e7;border-radius:8px}.iframe-actions .modal-close:hover{background:#ef4444;color:#fff;border-color:#ef4444}.modal-bottom-link-btn{position:absolute;bottom:16px;left:16px;z-index:30;display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:#e5b567f2;color:#1a1a1a;border:1px solid rgba(255,255,255,.3);border-radius:50px;text-decoration:none;font-size:.85rem;font-weight:700;box-shadow:0 4px 14px #0006;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:all .2s ease}.modal-bottom-link-btn:hover{background:#e5b567;transform:scale(1.04) translateY(-1px);box-shadow:0 6px 18px #00000080}.iframe-body{flex:1;width:100%;background:#000;display:flex;align-items:center;justify-content:center}.preview-iframe{width:100%;height:100%;border:none}.tiktok-poster{position:relative;width:100%;height:100%;background:#000;border:none;cursor:pointer;padding:0}.tiktok-poster-image{width:100%;height:100%;object-fit:cover;display:block}.tiktok-poster-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:70px;height:70px;display:flex;align-items:center;justify-content:center;background:#e5b567e6;border-radius:50%;box-shadow:0 10px 25px #0006;transition:transform .2s ease}.tiktok-poster:hover .tiktok-poster-play{transform:translate(-50%,-50%) scale(1.1)}@media(max-width:640px){.modal-content.iframe-modal-content{max-width:98%;height:95vh}.modal-content.iframe-modal-content.is-tiktok{width:100%;max-width:450px;height:90vh}.iframe-header{padding:10px 15px}.iframe-title{font-size:.95rem}.floating-link-btn{bottom:15px;left:15px;right:15px;justify-content:center;padding:10px 20px;font-size:.85rem}.modal-content{padding:25px 20px;max-width:95%}.modal-title{font-size:1.25rem}.modal-text{font-size:.9rem}.qr-container{width:auto;max-width:170px;height:auto}.pro-qr-container{max-width:170px;padding:8px}.pro-qr-container .qr-image{max-width:150px}}.main-header{position:sticky;top:0;z-index:1000;background:linear-gradient(90deg,#4a8585,#e5b567,#c05c3f,#3d2b1f);border-bottom:1px solid rgba(255,255,255,.1);padding:10px 0;width:100%}.header-container{max-width:1200px;margin:0 auto;padding:0 20px;display:flex;justify-content:space-between;align-items:center}.nav-section{display:flex;align-items:center;gap:30px}.header-actions{display:flex;align-items:center;gap:15px}.logo-section{display:flex;align-items:center;gap:12px}.header-logo{height:45px;width:auto;transition:transform .3s ease}.header-logo:hover{transform:scale(1.08) rotate(-2deg);filter:drop-shadow(0 0 10px rgba(0,255,255,.6))}.brand-name{font-size:1.5rem;font-weight:700;background:linear-gradient(90deg,#fff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-.5px;transition:all .3s ease}.logo-section:hover .brand-name{text-shadow:0 0 10px rgba(0,255,255,.5);background:linear-gradient(90deg,#0ff,#fff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.nav-menu{display:flex;gap:30px}.nav-item{color:#fff;text-decoration:none;font-size:1.15rem;font-weight:600;transition:all .3s ease;position:relative;padding:8px 14px;border:1px solid transparent;border-radius:10px}.nav-item:hover{color:#fff;background:#ffffff3d;border-color:#ffffff80;box-shadow:0 4px 12px #0000002e;text-shadow:0 0 9px rgba(255,255,255,.85);transform:translateY(-2px)}.nav-item:after{display:none}.nav-item:hover:after{display:none}.contact-btn{background:linear-gradient(135deg,#646cff,#a1a1ff);color:#fff;border:none;padding:10px 22px;border-radius:50px;font-weight:600;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden;z-index:1}.contact-btn:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#0ff,#646cff);opacity:0;z-index:-1;transition:opacity .3s ease}.contact-btn:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 5px 20px #0ff6}.contact-btn:hover:before{opacity:1}.menu-toggle{display:none;flex-direction:column;cursor:pointer;gap:6px;z-index:1001}.menu-toggle .bar{width:30px;height:3px;background-color:#fff;border-radius:5px;transition:all .3s ease}.menu-toggle.active .bar:nth-child(2){opacity:0}.menu-toggle.active .bar:nth-child(1){transform:translateY(9px) rotate(45deg)}.menu-toggle.active .bar:nth-child(3){transform:translateY(-9px) rotate(-45deg)}@media(max-width:768px){.menu-toggle,.nav-menu{display:none}.nav-menu.open{max-height:300px;padding:20px 0}.nav-item{padding:15px 0;width:100%;text-align:center;border-bottom:1px solid rgba(255,255,255,.05)}.nav-item:last-child{border-bottom:none}.nav-item:after{display:none}}.theme-toggle{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;padding:0;color:#fff}.theme-toggle:hover{background:#fff3;transform:rotate(15deg)}.sun-icon,.moon-icon{width:20px;height:20px}[data-theme=dark] .theme-toggle{background:#0003;border-color:#ffffff1a}@media(max-width:768px){.theme-toggle{margin-right:15px}}.main-footer{background:linear-gradient(90deg,#4a8585,#e5b567,#c05c3f,#3d2b1f);color:#fff;width:100%}.footer-container{max-width:1200px;margin:0 auto;padding:0 20px}.footer-bottom{display:flex;flex-direction:column;align-items:center;gap:10px;padding:16px 0 12px;text-align:center}.footer-bottom p{color:#ffffffbf;font-size:.82rem;margin:0}@media(max-width:768px){.main-footer{display:none}}.bottom-nav{display:none}body.modal-open .bottom-nav,body:has(.modal-overlay) .bottom-nav,body:has(.detail-overlay) .bottom-nav{z-index:1!important;opacity:1;pointer-events:none}@media(max-width:768px){.bottom-nav{position:fixed;right:0;bottom:0;left:0;z-index:1100;display:grid;grid-template-columns:repeat(4,1fr);min-height:68px;padding:6px 8px calc(6px + env(safe-area-inset-bottom));background:linear-gradient(90deg,#4a8585,#e5b567,#c05c3f,#3d2b1f);border-top:1px solid rgba(255,255,255,.15);box-shadow:0 -8px 24px #0000001f;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);transition:opacity .3s ease,filter .3s ease,z-index .3s ease}.bottom-nav__item{--nav-accent: #00ffff;--nav-active-text: #073b3b;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;padding:5px 2px;border-radius:12px;color:#ffffffd1;font-size:.7rem;font-weight:600;line-height:1.2;text-decoration:none;transition:color .2s ease,background-color .2s ease,transform .16s cubic-bezier(.34,1.56,.64,1)}.bottom-nav__item:nth-child(2){--nav-accent: #ffd166;--nav-active-text: #3d2b1f}.bottom-nav__item:nth-child(3){--nav-accent: #ff8a65;--nav-active-text: #3d1c14}.bottom-nav__item:nth-child(4){--nav-accent: #c4a7ff;--nav-active-text: #28184a}.bottom-nav__item i{font-size:1.25rem}.bottom-nav__item:hover,.bottom-nav__item:focus-visible{color:#fff;background:#ffffff3d;box-shadow:inset 0 0 0 1px #ffffff80,0 4px 12px #0000002e;text-shadow:0 0 9px rgba(255,255,255,.85)}.bottom-nav__item--active{color:var(--nav-active-text);background:var(--nav-accent);border:1px solid rgba(255,255,255,.75);box-shadow:0 4px 14px #00000047,inset 0 1px #ffffff73;text-shadow:none}.bottom-nav__item--active:hover,.bottom-nav__item--active:focus-visible{color:var(--nav-active-text);background:var(--nav-accent);text-shadow:none}.bottom-nav__item--active i{filter:drop-shadow(0 1px 1px rgba(255,255,255,.35))}.bottom-nav__item:focus-visible{outline:2px solid var(--nav-accent);outline-offset:-2px}.bottom-nav__item:active{transform:scale(.86)}}@media(prefers-reduced-motion:reduce){.bottom-nav__item{transition:none}}.detail-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0000008c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px;box-sizing:border-box}.detail-modal{background:var(--card-bg);width:100%;max-width:900px;max-height:90vh;border-radius:28px;position:relative;box-shadow:0 30px 60px -15px #00000059,0 0 0 1px #ffffff0a;border:1px solid var(--border-color);display:flex;flex-direction:column;overflow:hidden}.detail-scrollable{overflow-y:auto;width:100%;height:100%;display:flex;flex-direction:column}.detail-scrollable::-webkit-scrollbar{width:8px}.detail-scrollable::-webkit-scrollbar-track{background:transparent}.detail-scrollable::-webkit-scrollbar-thumb{background-color:#00000026;border-radius:4px}[data-theme=dark] .detail-scrollable::-webkit-scrollbar-thumb{background-color:#fff3}.close-btn{position:absolute;top:20px;right:20px;background:#00000014;border:1px solid var(--border-color);color:var(--text-color);width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;z-index:200;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 4px 6px #00000014}[data-theme=dark] .close-btn{background:#00000080;border-color:#ffffff26;color:#fff}.close-btn:hover{background:#ff4757;border-color:#ff4757;color:#fff;transform:rotate(90deg)}.detail-hero{width:100%;height:420px;position:relative;background:#0c0c0c;flex-shrink:0}.detail-image{width:100%;height:100%;object-fit:cover}.detail-hero-fade{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,0) 60%,var(--bg-color) 100%);pointer-events:none}.detail-free-badge{position:absolute;bottom:24px;left:30px;background:linear-gradient(135deg,#9ff50b,#30d906);color:#000;font-weight:800;padding:7px 18px;border-radius:50px;font-size:.9rem;box-shadow:0 8px 20px #30d90659;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.detail-paid-badge{position:absolute;bottom:24px;left:30px;background:linear-gradient(135deg,#ff9f43,#ff5252);color:#fff;font-weight:800;padding:7px 18px;border-radius:50px;font-size:.9rem;box-shadow:0 8px 20px #ff525259;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.detail-content{padding:10px 40px 36px;background:var(--bg-color);color:var(--text-color);flex:1;position:relative;z-index:1}.detail-heading{display:flex;flex-direction:column;gap:10px;margin-bottom:22px}.detail-title{font-size:2.1rem;margin:0;line-height:1.25;background:linear-gradient(135deg,#1a1a1a,#555);-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-weight:800}[data-theme=dark] .detail-title{background:linear-gradient(135deg,#fff,#ccc);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.detail-timestamps{display:flex;flex-wrap:wrap;gap:16px}.timestamp-item{display:inline-flex;align-items:center;gap:6px;font-size:.85rem;color:var(--secondary-text)}.timestamp-icon{color:#4a8585;flex-shrink:0}.meta-group{display:flex;align-items:flex-start;gap:10px;margin-bottom:22px}.meta-icon{color:var(--secondary-text);margin-top:6px;flex-shrink:0}.meta-tags{display:flex;flex-wrap:wrap;gap:8px}.meta-tag{padding:6px 14px;border-radius:50px;font-size:.85rem;font-weight:600;transition:transform .2s ease}.meta-tag:hover{transform:translateY(-2px)}.topic-tag{background:#4a858526;color:#3a8585;border:1px solid rgba(74,133,133,.25)}[data-theme=dark] .topic-tag{background:#4a858533;color:#64b5b5;border-color:#4a85854d}.subtag-tag{background:#e5b5672e;color:#c98c28;border:1px solid rgba(229,181,103,.3)}[data-theme=dark] .subtag-tag{background:#e5b56733;color:#e5b567;border-color:#e5b5674d}.detail-price-box{display:flex;flex-direction:column;gap:10px;background:#e5b5671a;border:1px solid rgba(229,181,103,.3);border-radius:16px;padding:14px 20px;margin-bottom:24px}.detail-price-item{display:flex;align-items:center;justify-content:space-between;font-size:.95rem}.detail-price-item:not(:last-child){border-bottom:1px dashed rgba(229,181,103,.25);padding-bottom:8px}.detail-price-label{color:var(--secondary-text);font-weight:500}.detail-price-val{font-weight:700;color:#4a8585}.detail-price-val.highlight{color:#e67e22}.detail-description-card{background:#00000006;border:1px solid var(--border-color);border-left:3px solid #4A8585;border-radius:16px;padding:20px 24px;margin-bottom:32px}[data-theme=dark] .detail-description-card{background:#ffffff08}.detail-description-card p{font-size:1.05rem;line-height:1.8;color:var(--secondary-text);margin:0;white-space:pre-wrap}.detail-actions{display:flex;flex-wrap:wrap;gap:15px}.detail-btn{flex:1;min-width:180px;padding:15px 24px;border-radius:14px;border:none;font-weight:700;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;transition:all .3s cubic-bezier(.4,0,.2,1);text-decoration:none}.detail-btn:hover{transform:translateY(-3px);filter:brightness(1.1)}.btn-video{background:#c0392b;color:#fff;box-shadow:0 4px 15px #c0392b4d}.btn-github{background:#22c55e;color:#fff;box-shadow:0 4px 15px #22c55e4d}.btn-github:hover{filter:none;background:#16a34a;color:#fff;box-shadow:0 6px 20px #22c55e73}.btn-contact{background:linear-gradient(135deg,#f5c453,#e5b567);color:#2b2106;box-shadow:0 4px 15px #e5b56766}@media(max-width:768px){.detail-overlay{align-items:center;padding:20px 16px calc(20px + env(safe-area-inset-bottom))}.detail-modal{width:100%;max-width:520px;max-height:82vh;border-radius:22px;box-shadow:0 20px 50px #0006}.detail-scrollable{scrollbar-width:thin}.detail-hero{height:clamp(140px,42vw,185px)}.detail-image{object-position:center}.close-btn{top:12px;right:12px;width:32px;height:32px;padding:0;background:#0000008c;border-color:#ffffff59;color:#fff}.close-btn svg{width:18px;height:18px}.detail-free-badge{bottom:12px;left:12px;padding:4px 10px;font-size:.7rem}.detail-content{padding:14px 16px calc(16px + env(safe-area-inset-bottom))}.detail-heading{gap:7px;margin-bottom:14px}.detail-title{font-size:clamp(1.2rem,5.5vw,1.5rem);line-height:1.3;overflow-wrap:anywhere}.detail-timestamps{gap:5px 12px}.timestamp-item{gap:4px;font-size:.7rem}.timestamp-icon{width:12px;height:12px}.meta-group{gap:7px;margin-bottom:14px}.meta-icon{width:14px;height:14px;margin-top:5px}.meta-tags{gap:5px}.meta-tag{padding:4px 9px;font-size:.7rem}.detail-description-card{margin-bottom:16px;padding:12px 14px;border-radius:12px}.detail-description-card p{font-size:.86rem;line-height:1.6}.detail-actions{flex-direction:row;flex-wrap:nowrap;gap:8px}.detail-btn{min-width:0;width:100%;padding:11px 7px;border-radius:10px;gap:6px;font-size:.78rem}.detail-btn svg{width:17px;height:17px;flex-shrink:0}}.cfm-overlay{position:fixed;inset:0;width:100vw;height:100vh;background:#0a0f1ebf;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;z-index:99999;padding:20px}.cfm-modal{background:var(--modal-bg, #fff);border:1px solid var(--border-color, #eee);border-radius:22px;width:100%;max-width:560px;height:580px;max-height:92vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 60px #00000059,0 0 0 1px #ffffff0f;position:relative}[data-theme=dark] .cfm-modal{background:#121824;border-color:#ffffff14;box-shadow:0 28px 70px #0009,0 0 0 1px #e5b56726}.cfm-header{display:flex;align-items:center;justify-content:space-between;padding:20px 22px 0}.cfm-title{font-size:1.25rem;font-weight:700;color:var(--text-color, #333);margin:0}.cfm-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#0000000d;border:1px solid var(--border-color, #eee);border-radius:8px;color:var(--secondary-text, #666);cursor:pointer;transition:all .2s;padding:0}.cfm-close:hover{background:#ef4444;border-color:#ef4444;color:#fff}.cfm-tabs{display:flex;gap:8px;padding:16px 22px 0}.cfm-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:9px 6px;border-radius:10px;border:1px solid var(--border-color, #eee);background:transparent;color:var(--secondary-text, #888);font-size:.82rem;font-weight:600;cursor:pointer;transition:all .2s ease}.cfm-tab:hover{border-color:#e5b567;color:#e5b567}.cfm-tab.active{background:linear-gradient(135deg,#e5b567,#c05c3f);border-color:transparent;color:#fff;box-shadow:0 4px 14px #e5b56759}.cfm-content{flex:1;padding:18px 22px 22px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;overflow-y:auto;scrollbar-width:none}.cfm-info-list{width:100%;display:flex;flex-direction:column;gap:8px}.cfm-info-row{display:flex;justify-content:space-between;align-items:center;background:#00000008;border:1px solid var(--border-color, #eee);border-radius:10px;padding:10px 14px;gap:8px}[data-theme=dark] .cfm-info-row{background:#ffffff0a;border-color:#ffffff14}.cfm-info-label{font-size:.8rem;color:var(--secondary-text, #888);font-weight:500;white-space:nowrap}.cfm-info-value{font-size:.9rem;font-weight:700;color:var(--text-color, #333);text-align:right}.cfm-link{color:#e5b567;text-decoration:none;transition:opacity .2s}.cfm-link:hover{opacity:.8}.cfm-qr-wrapper{display:flex;flex-direction:column;align-items:center;gap:8px}.cfm-qr-img{width:220px;height:220px;object-fit:contain;border-radius:14px;border:4px solid #fff;box-shadow:0 8px 24px #00000026}.cfm-qr-label{font-size:.78rem;color:var(--secondary-text, #888);font-weight:500}.cfm-hint{font-size:.83rem;color:var(--secondary-text, #888);text-align:center;line-height:1.5;margin:0;padding:10px 14px;border-radius:10px;background:#e5b56714;border:1px dashed rgba(229,181,103,.4);width:100%;box-sizing:border-box}.footer-contact-btn{display:inline-flex;align-items:center;gap:8px;padding:9px 28px;border-radius:50px;background:#ffffff26;border:1.5px solid rgba(255,255,255,.5);color:#fff;font-size:.88rem;font-weight:700;cursor:pointer;transition:all .25s ease;letter-spacing:.3px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.footer-contact-btn:hover{background:#ffffff47;border-color:#fff;transform:translateY(-2px);box-shadow:0 6px 20px #0003}@media(max-width:768px){.cfm-modal{height:520px;border-radius:18px}.cfm-qr-img{width:175px;height:175px}}@media(max-width:480px){.cfm-modal{max-width:100%;height:500px;border-radius:16px}.cfm-tab span{display:none}.cfm-tab{padding:10px}.cfm-header{padding:16px 16px 0}.cfm-tabs{padding:12px 16px 0;gap:6px}.cfm-content{padding:14px 16px 16px;gap:10px}.cfm-qr-img{width:155px;height:155px}.cfm-info-row{padding:8px 12px}.cfm-hint{font-size:.78rem;padding:8px 12px}}.loading-container{width:100%;height:80vh;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:40px;background:transparent}.loader-wrapper{position:relative;width:100px;height:100px;display:flex;justify-content:center;align-items:center}.loader-ring{position:absolute;width:60px;height:60px;border:4px solid transparent;border-top-color:#e5b567;border-bottom-color:#4a8585;border-radius:50%;animation:spin 1.5s cubic-bezier(.68,-.55,.265,1.55) infinite;z-index:2}.loader-ring-outer{position:absolute;width:85px;height:85px;border:2px solid transparent;border-left-color:#c05c3f;border-right-color:#e5b567;border-radius:50%;animation:spin-reverse 2s linear infinite;opacity:.6;z-index:1}.loader-center{width:12px;height:12px;background:#e5b567;border-radius:50%;box-shadow:0 0 15px #e5b567,0 0 30px #e5b567;animation:pulse-center 1s ease-in-out infinite}.message-container{height:30px;display:flex;justify-content:center;align-items:center}.loading-text{font-size:1.25rem;font-weight:700;text-align:center;background:linear-gradient(90deg,#4a8585,#e5b567,#c05c3f);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:.5px;text-shadow:0 10px 20px rgba(0,0,0,.05)}@keyframes spin-reverse{0%{transform:rotate(360deg)}to{transform:rotate(0)}}@keyframes pulse-center{0%,to{transform:scale(.8);opacity:.5;box-shadow:0 0 5px #e5b567}50%{transform:scale(1.2);opacity:1;box-shadow:0 0 20px #e5b567,0 0 40px #e5b567}}@media(max-width:768px){.loading-text{font-size:1.1rem;padding:0 20px}.loader-wrapper{transform:scale(.8)}}:root{--swiper-theme-color: #007aff}:host{position:relative;display:block;margin-left:auto;margin-right:auto;z-index:1}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1;display:block}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function, initial);box-sizing:content-box}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translateZ(0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform;display:block}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);backface-visibility:hidden}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px}.swiper-3d .swiper-slide,.swiper-3d .swiper-cube-shadow{transform-style:preserve-3d}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-css-mode.swiper-horizontal>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-css-mode.swiper-vertical>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-css-mode.swiper-free-mode>.swiper-wrapper{scroll-snap-type:none}.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}.swiper-css-mode.swiper-centered>.swiper-wrapper:before{content:"";flex-shrink:0;order:9999}.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-slide-shadow-bottom{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:#00000026}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom,#00000080,#0000)}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color, var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}:is(.swiper:not(.swiper-watch-progress),.swiper-watch-progress .swiper-slide-visible) .swiper-lazy-preloader{animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color: #fff}.swiper-lazy-preloader-black{--swiper-preloader-color: #000}@keyframes swiper-preloader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.swiper-pagination{position:absolute;text-align:center;transition:.3s opacity;transform:translateZ(0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{display:none!important}.swiper-pagination-fraction,.swiper-pagination-custom,.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal{bottom:var(--swiper-pagination-bottom, 8px);top:var(--swiper-pagination-top, auto);left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transform:scale(.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));height:var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));display:inline-block;border-radius:var(--swiper-pagination-bullet-border-radius, 50%);background:var(--swiper-pagination-bullet-inactive-color, #000);opacity:var(--swiper-pagination-bullet-inactive-opacity, .2)}button.swiper-pagination-bullet{border:none;margin:0;padding:0;box-shadow:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity, 1);background:var(--swiper-pagination-color, var(--swiper-theme-color))}.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets{right:var(--swiper-pagination-right, 8px);left:var(--swiper-pagination-left, auto);top:50%;transform:translate3d(0,-50%,0)}:is(.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets) .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap, 6px) 0;display:block}:is(.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets).swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px}:is(.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets).swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:.2s transform,.2s top}:is(.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets) .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap, 4px)}:is(.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets).swiper-pagination-bullets-dynamic{left:50%;transform:translate(-50%);white-space:nowrap}:is(.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets).swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s left}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s right}.swiper-pagination-fraction{color:var(--swiper-pagination-fraction-color, inherit)}.swiper-pagination-progressbar{background:var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, .25));position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color, var(--swiper-theme-color));position:absolute;left:0;top:0;width:100%;height:100%;transform:scale(0);transform-origin:left top}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:right top}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite{width:100%;height:var(--swiper-pagination-progressbar-size, 4px);left:0;top:0}.swiper-vertical>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite{width:var(--swiper-pagination-progressbar-size, 4px);height:100%;left:0;top:0}.swiper-pagination-lock{display:none}:root{--swiper-navigation-size: 44px}.swiper-button-prev,.swiper-button-next{position:absolute;width:var(--swiper-navigation-size);height:var(--swiper-navigation-size);z-index:10;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--swiper-navigation-color, var(--swiper-theme-color))}:is(.swiper-button-prev,.swiper-button-next).swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}:is(.swiper-button-prev,.swiper-button-next).swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled :is(.swiper-button-prev,.swiper-button-next){display:none!important}:is(.swiper-button-prev,.swiper-button-next) svg{width:100%;height:100%;object-fit:contain;transform-origin:center;fill:currentColor;pointer-events:none}.swiper-button-lock{display:none}.swiper-button-prev,.swiper-button-next{top:var(--swiper-navigation-top-offset, 50%);margin-top:calc(0px - (var(--swiper-navigation-size) / 2))}.swiper-button-prev{left:var(--swiper-navigation-sides-offset, 4px);right:auto}.swiper-button-prev .swiper-navigation-icon{transform:rotate(180deg)}.swiper-button-next{right:var(--swiper-navigation-sides-offset, 4px);left:auto}.swiper-horizontal .swiper-button-prev,.swiper-horizontal .swiper-button-next,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal~.swiper-button-next{top:var(--swiper-navigation-top-offset, 50%);margin-top:calc(0px - (var(--swiper-navigation-size) / 2));margin-left:0}.swiper-horizontal .swiper-button-prev,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal.swiper-rtl .swiper-button-next,.swiper-horizontal.swiper-rtl~.swiper-button-next{left:var(--swiper-navigation-sides-offset, 4px);right:auto}.swiper-horizontal .swiper-button-next,.swiper-horizontal~.swiper-button-next,.swiper-horizontal.swiper-rtl .swiper-button-prev,.swiper-horizontal.swiper-rtl~.swiper-button-prev{right:var(--swiper-navigation-sides-offset, 4px);left:auto}:is(.swiper-horizontal .swiper-button-prev,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal.swiper-rtl .swiper-button-next,.swiper-horizontal.swiper-rtl~.swiper-button-next) .swiper-navigation-icon{transform:rotate(180deg)}:is(.swiper-horizontal.swiper-rtl .swiper-button-prev,.swiper-horizontal.swiper-rtl~.swiper-button-prev) .swiper-navigation-icon{transform:rotate(0)}.swiper-vertical .swiper-button-prev,.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-prev,.swiper-vertical~.swiper-button-next{left:var(--swiper-navigation-top-offset, 50%);right:auto;margin-left:calc(0px - (var(--swiper-navigation-size) / 2));margin-top:0}.swiper-vertical .swiper-button-prev,.swiper-vertical~.swiper-button-prev{top:var(--swiper-navigation-sides-offset, 4px);bottom:auto}:is(.swiper-vertical .swiper-button-prev,.swiper-vertical~.swiper-button-prev) .swiper-navigation-icon{transform:rotate(-90deg)}.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-next{bottom:var(--swiper-navigation-sides-offset, 4px);top:auto}:is(.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-next) .swiper-navigation-icon{transform:rotate(90deg)}.home-page{width:100%}.container{max-width:1200px;margin:0 auto;padding:0 30px}.hero-section{width:100%;max-width:1200px;height:550px;margin:20px auto;border-radius:20px;overflow:hidden;background:#000;box-shadow:0 10px 30px #00000026}.hero-swiper{width:100%;height:100%;--swiper-navigation-size: 15px;--swiper-navigation-color: #fff;--swiper-pagination-color: #e5b567;--swiper-pagination-bullet-inactive-color: #fff;--swiper-pagination-bullet-inactive-opacity: .55}.hero-swiper .swiper-button-prev,.hero-swiper .swiper-button-next{width:30px;height:30px;margin-top:-15px;padding:0;overflow:hidden;display:flex;align-items:center;justify-content:center;box-sizing:border-box;border:1px solid rgba(255,255,255,.32);border-radius:50%;background:#00000040;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:.78;transition:opacity .2s ease,background-color .2s ease,transform .2s ease}.hero-swiper .swiper-button-prev{left:5px}.hero-swiper .swiper-button-next{right:5px}.hero-swiper .swiper-button-prev svg,.hero-swiper .swiper-button-next svg{width:13px!important;height:13px!important;flex:0 0 13px;object-fit:contain}.hero-swiper .swiper-button-prev:after,.hero-swiper .swiper-button-next:after{font-size:13px!important;line-height:1}.hero-swiper .swiper-button-prev:hover,.hero-swiper .swiper-button-next:hover{background:#00000080;opacity:1}.hero-swiper .swiper-button-prev:active,.hero-swiper .swiper-button-next:active{background:#0009;opacity:1;transform:scale(.9)}.hero-swiper .swiper-pagination-bullet{width:8px;height:8px;transition:width .2s ease,opacity .2s ease}.hero-swiper .swiper-pagination-bullet-active{width:18px;border-radius:999px}.slide-content{position:relative;width:100%;height:100%}.slide-image{width:100%;height:100%;object-fit:cover;object-position:center}.slide-overlay{position:absolute;bottom:0;left:0;width:100%;height:100%;background:linear-gradient(to top right,rgba(0,0,0,.85) 0%,rgba(0,0,0,.2) 40%,transparent 70%);display:flex;align-items:flex-end;justify-content:flex-start;padding:0 0 60px 60px}.slide-text-container{max-width:550px;color:#fff;text-align:left;animation:fadeInLeft .8s ease-out}.slide-title{font-size:3.5rem;font-weight:800;margin-bottom:15px;line-height:1.1;text-shadow:2px 2px 20px rgba(0,0,0,.5)}.slide-description{font-size:1.25rem;color:#ffffffe6;line-height:1.6}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}.welcome-banner{padding:100px 0;text-align:center;background:var(--bg-color)}.gradient-text{font-size:3.2rem;font-weight:800;background:linear-gradient(90deg,#4a8585,#e5b567,#c05c3f);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:20px}.subtitle{font-size:1.3rem;color:#666;max-width:800px;margin:0 auto}.section-header{margin-bottom:60px}.section-header.center{text-align:center}.tag{display:inline-block;padding:6px 15px;background:#e5b5671a;color:#e5b567;border-radius:50px;font-size:2rem;font-weight:700;letter-spacing:2px;margin-bottom:15px}.section-header h2{font-size:2.5rem;color:#333}.services-section{padding:100px 0;background:var(--bg-color);opacity:.98}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.service-card{background:var(--card-bg);border:1px solid var(--border-color);padding:50px 40px;border-radius:20px;transition:all .4s ease;text-align:center;box-shadow:0 10px 30px #0000000d}.service-card:hover{background:#fff;transform:translateY(-10px);border-color:#e5b567;box-shadow:0 20px 40px #0000001a}.icon-wrapper{width:70px;height:70px;background:linear-gradient(135deg,#4a858533,#e5b56733);border-radius:18px;display:flex;align-items:center;justify-content:center;margin:0 auto 30px;color:#e5b567}.service-icon{width:35px;height:35px}.service-card h3{font-size:1.5rem;color:var(--text-color);margin-bottom:15px}.service-card p{color:var(--secondary-text);line-height:1.6}.stats-section{padding:80px 0;background:linear-gradient(90deg,#4a8585,#e5b567,#c05c3f)}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;text-align:center;justify-content:center}.stat-value{font-size:2.8rem;font-weight:800;color:#fff;margin-bottom:5px}.stat-label{font-size:1rem;color:#ffffffe6;font-weight:600}.features-section{padding:120px 0;background:var(--bg-color)}.features-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.feature-list{list-style:none;padding:0;margin-top:30px}.feature-list li{display:flex;align-items:flex-start;gap:15px;margin-bottom:25px;color:var(--secondary-text);font-size:1.1rem}.li-icon{color:#e5b567;width:24px;height:24px;flex-shrink:0;margin-top:3px}.feature-list strong{color:var(--text-color)}.features-image-grid{position:relative;height:500px}.feature-img-box{position:absolute;width:65%;height:300px;border-radius:20px;overflow:hidden;box-shadow:0 20px 50px #0003;border:2px solid rgba(255,255,255,1)}.feature-img-box img{width:100%;height:100%;object-fit:cover}.box-1{top:0;left:0;z-index:2}.box-2{bottom:0;right:0;z-index:1}.loading-container{width:100%;height:80vh;display:flex;justify-content:center;align-items:center}.loader{width:50px;height:50px;border:3px solid rgba(0,0,0,.1);border-radius:50%;border-top-color:#e5b567;animation:spin 1s infinite linear}@keyframes spin{to{transform:rotate(360deg)}}.free-codes-section{padding:100px 0;background:var(--bg-color)}.section-header-flex{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:50px}.view-more-btn{display:flex;align-items:center;gap:8px;padding:12px 24px;background:#e5b567;color:#fff;border-radius:50px;font-weight:600;transition:all .3s ease;border:none;cursor:pointer}.view-more-btn:hover{background:#d4a45a;transform:translate(5px);box-shadow:0 5px 15px #e5b5674d}.free-codes-swiper{padding:20px 0 50px}.free-code-card{background:var(--card-bg);border-radius:20px;overflow:hidden;box-shadow:0 10px 30px #0000000d;transition:all .3s ease;height:100%;border:1px solid var(--border-color)}.free-code-card:hover{transform:translateY(-10px);box-shadow:0 20px 40px #0000001a}.code-img-wrapper{position:relative;height:220px;overflow:hidden}.code-img-wrapper img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.free-code-card:hover .code-img-wrapper img{transform:scale(1.1)}.code-hover-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#0006;display:flex;align-items:center;justify-content:center;opacity:0;transition:all .3s ease;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.code-img-wrapper:hover .code-hover-overlay{opacity:1}.code-actions-hover{display:flex;gap:15px}.hover-btn{display:flex;align-items:center;gap:6px;padding:10px 18px;border-radius:12px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .3s ease;border:none;text-decoration:none}.hover-btn.demo{background:#fff;color:#333}.hover-btn.link{background:#e5b567;color:#fff}.hover-btn:hover{transform:scale(1.05)}.code-info{padding:25px}.code-info h3{font-size:1.25rem;color:var(--text-color);margin-bottom:10px;font-weight:700}.free-code-card .code-info h3{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.code-info p{color:var(--secondary-text);font-size:.95rem;line-height:1.5}@media(max-width:1024px){.services-grid{grid-template-columns:repeat(2,1fr)}.features-layout{grid-template-columns:1fr;gap:50px}.features-image-grid{height:400px}}@media(max-width:768px){.hero-section{width:calc(100% - 24px);height:clamp(230px,64vw,320px);margin:12px auto;border-radius:16px}.slide-title{margin:0 0 7px;font-size:clamp(1.35rem,6vw,1.8rem);line-height:1.15;text-wrap:balance}.slide-description{display:-webkit-box;margin:0;overflow:hidden;font-size:clamp(.78rem,3.5vw,.95rem);line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}.slide-text-container{max-width:calc(100% - 45px)}.hero-swiper{--swiper-navigation-size: 15px;--swiper-navigation-color: #fff;--swiper-pagination-color: #e5b567;--swiper-pagination-bullet-inactive-color: #fff}.hero-swiper .swiper-button-prev,.hero-swiper .swiper-button-next{width:30px;height:30px;margin-top:-15px;padding:0;overflow:hidden;display:flex;align-items:center;justify-content:center;box-sizing:border-box;border:1px solid rgba(255,255,255,.32);border-radius:50%;background:#00000040;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:.78;transition:opacity .2s ease,background-color .2s ease,transform .2s ease}.hero-swiper .swiper-button-prev svg,.hero-swiper .swiper-button-next svg{width:13px!important;height:13px!important;flex:0 0 13px;object-fit:contain}.hero-swiper .swiper-button-prev:after,.hero-swiper .swiper-button-next:after{font-size:13px!important;line-height:1}.hero-swiper .swiper-button-prev:active,.hero-swiper .swiper-button-next:active{background:#0000008c;opacity:1;transform:scale(.9)}.hero-swiper .swiper-button-prev{left:5px}.hero-swiper .swiper-button-next{right:5px}.gradient-text{max-width:540px;margin:0 auto 14px;font-size:clamp(1.65rem,7vw,2rem);line-height:1.25;letter-spacing:-.4px;text-wrap:balance}.welcome-banner{padding:55px 0}.welcome-banner .container{padding:0 20px}.welcome-banner .subtitle{max-width:560px;margin:0 auto;color:var(--secondary-text);font-size:.95rem;line-height:1.65;text-wrap:pretty}.services-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.services-section{padding:50px 0}.services-section .container{padding:0 10px}.services-section .section-header{margin-bottom:24px}.services-section .tag{margin-bottom:7px;padding:5px 9px;font-size:.82rem;letter-spacing:.7px;white-space:nowrap}.service-card{min-width:0;padding:16px 6px;border-radius:14px}.service-card:hover{transform:translateY(-5px)}.icon-wrapper{width:42px;height:42px;margin-bottom:12px;border-radius:12px}.service-icon{width:22px;height:22px}.service-card h3{min-height:2.5em;margin:0 0 7px;font-size:.78rem;line-height:1.25}.service-card p{display:-webkit-box;margin:0;overflow:hidden;font-size:.62rem;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:4;line-clamp:4}.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.stats-section{padding:36px 0}.stats-section .container{padding:0 10px}.stat-item{min-width:0;padding:8px 3px}.stat-value{margin:0 0 4px;font-size:1.65rem;line-height:1.1}.stat-label{margin:0;font-size:.68rem;line-height:1.35}.features-section{padding:55px 0}.features-section .container{padding:0 10px}.features-layout{gap:28px}.features-text{text-align:center}.features-text .tag{margin-bottom:7px;padding:5px 9px;font-size:.82rem;letter-spacing:.7px;white-space:nowrap}.features-text h2{margin:4px 0 20px;font-size:1.45rem}.feature-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}.feature-list li{flex-direction:column;align-items:center;justify-content:flex-start;gap:7px;min-width:0;margin:0;padding:12px 5px;background:var(--card-bg);border:1px solid var(--border-color);border-radius:14px;box-shadow:0 6px 18px #0000000f;font-size:.68rem;line-height:1.35;text-align:center}.feature-list .li-icon{width:22px;height:22px;margin:0}.features-image-grid{height:280px}.feature-img-box{height:180px;border-radius:14px}.slide-overlay{padding:0 18px 32px;background:linear-gradient(to top,rgba(0,0,0,.88) 0%,rgba(0,0,0,.28) 52%,transparent 78%)}.free-codes-section{padding:55px 0}.section-header-flex{align-items:center;gap:12px;margin-bottom:20px}.section-header-flex .section-title h2{font-size:1.45rem}.section-header-flex .tag{margin-bottom:7px;padding:5px 9px;font-size:.82rem;letter-spacing:.7px;white-space:nowrap}.view-more-btn{flex-shrink:0;gap:4px;padding:9px 12px;font-size:.78rem}.view-more-btn svg{width:16px;height:16px}.free-codes-swiper{padding:12px 0 38px}.free-code-card{border-radius:14px}.free-code-card .code-img-wrapper{height:125px}.free-code-card .code-info{min-height:92px;padding:12px 10px}.free-code-card .code-info h3{display:block;margin:0 0 7px;overflow:hidden;font-size:.9rem;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.free-code-card .code-info p{margin:0;overflow:hidden;color:var(--secondary-text);font-size:.72rem;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}}.contact-cta-section{padding:60px 0 80px;display:flex;justify-content:center;align-items:center;background:var(--bg-color)}.contact-cta-btn{display:inline-flex;align-items:center;gap:10px;padding:16px 52px;border-radius:50px;background:linear-gradient(135deg,#4a8585,#e5b567,#c05c3f);background-size:200% auto;border:none;color:#fff;font-size:1.1rem;font-weight:700;cursor:pointer;letter-spacing:.4px;box-shadow:0 8px 28px #e5b56759;transition:background-position .4s ease,transform .25s ease,box-shadow .25s ease}.contact-cta-btn:hover{background-position:right center;transform:translateY(-3px);box-shadow:0 14px 36px #c05c3f66}.contact-cta-btn:active{transform:translateY(-1px);box-shadow:0 6px 18px #c05c3f4d}@media(max-width:768px){.contact-cta-section{padding:36px 0 50px}.contact-cta-btn{padding:13px 36px;font-size:.95rem}}.pagination-container{display:flex;justify-content:center;align-items:center;gap:12px;margin:60px 0 20px;padding:10px;-webkit-user-select:none;user-select:none;font-family:Inter,sans-serif}.pagination-container .page-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:16px;border:1px solid rgba(0,0,0,.08);background:#fff;color:#4b5563;font-weight:700;font-size:1rem;cursor:pointer;transition:all .4s cubic-bezier(.34,1.56,.64,1);box-shadow:0 4px 6px -1px #0000001a;position:relative;padding:0;margin:0}.pagination-container .page-btn:hover:not(:disabled){transform:translateY(-5px) scale(1.05);border-color:#4a8585;color:#4a8585;box-shadow:0 12px 20px #4a858526}.pagination-container .page-btn.active{background:linear-gradient(135deg,#4a8585,#e5b567);color:#fff;border:none;transform:translateY(-3px);box-shadow:0 10px 20px #4a85854d}.pagination-container .page-btn.active:hover{transform:translateY(-5px) scale(1.1);box-shadow:0 15px 30px #4a858566}.pagination-container .page-btn:disabled{opacity:.3;cursor:not-allowed;background:#f3f4f6;transform:none!important;box-shadow:none;color:#94a3b8}.pagination-container .pagination-ellipsis{width:36px;height:48px;display:flex;align-items:center;justify-content:center;color:#94a3b8;font-weight:800;letter-spacing:2px;font-size:1.2rem}.pagination-container .nav-btn{background:#f8fafc;color:#4a8585}.pagination-container .nav-btn svg{transition:transform .3s ease}.pagination-container .nav-btn:hover:not(:disabled) svg{transform:scale(1.2)}@media(max-width:768px){.pagination-container{gap:4px;margin:30px 0 12px;padding:4px 0}.pagination-container .page-btn{width:30px;height:30px;flex-shrink:0;border-radius:8px;font-size:.72rem;box-shadow:0 3px 6px #00000014}.pagination-container .nav-btn svg{width:16px;height:16px}.pagination-container .pagination-ellipsis{width:14px;height:30px;flex-shrink:0;font-size:.78rem;letter-spacing:0}}.code-page-container{max-width:1200px;margin:40px auto;padding:0 30px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;box-sizing:border-box}.search-section{position:relative;max-width:900px;width:100%;margin:0 auto 36px;text-align:center;box-sizing:border-box;padding:0 10px;overflow:visible}.search-title{font-size:2.8rem;font-weight:900;margin-bottom:15px;background:linear-gradient(135deg,#4a8585,#e5b567,#c05c3f);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-1px;text-shadow:0 4px 6px rgba(0,0,0,.1)}.search-wrapper{position:relative;width:100%;box-shadow:0 8px 30px #4a858526;border-radius:60px;transition:all .3s ease;background:var(--card-bg);border:2px solid var(--border-color);background-clip:padding-box;display:flex;align-items:center;padding:0 25px}.search-wrapper:before{content:"";position:absolute;inset:-2px;background:linear-gradient(135deg,#4a8585,#e5b567,#c05c3f);border-radius:60px;z-index:-1;opacity:0;transition:opacity .3s ease}.search-wrapper:hover:before,.search-wrapper:focus-within:before{opacity:1}.search-wrapper:hover,.search-wrapper:focus-within{transform:translateY(-4px);box-shadow:0 15px 45px #4a858540}.search-input{flex:1;padding:22px 15px;font-size:1.05rem;border:none;border-radius:60px;background:transparent;outline:none;transition:all .3s ease;color:var(--text-color);font-weight:500;box-sizing:border-box;display:block}.search-input::placeholder{color:#94a3b8;font-weight:400;text-overflow:ellipsis}.search-input:focus{background:transparent}.search-icon{color:#e5b567;font-size:1.3rem;pointer-events:none;transition:all .3s ease;flex-shrink:0}.search-wrapper:focus-within .search-icon{color:#4a8585;transform:scale(1.1)}.search-suggestions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:14px;padding:4px 2px 8px}.suggestion-tag{display:inline-flex;align-items:center;padding:6px 16px;border-radius:50px;font-size:.82rem;font-weight:600;cursor:pointer;border:1.5px solid var(--border-color, rgba(74, 133, 133, .25));background:var(--card-bg, #fff);color:var(--secondary-text, #64748b);transition:all .22s ease;letter-spacing:.2px;white-space:nowrap}.suggestion-tag:hover{border-color:#4a8585;color:#4a8585;background:#4a858512;transform:translateY(-2px);box-shadow:0 4px 12px #4a858526}.suggestion-tag--active{background:linear-gradient(135deg,#4a8585,#e5b567);border-color:transparent;color:#fff!important;box-shadow:0 4px 16px #4a858559;transform:translateY(-2px)}.suggestion-tag--active:hover{background:linear-gradient(135deg,#3d7070,#d4a455);transform:translateY(-3px);box-shadow:0 6px 20px #4a858566}.filter-free-container{display:flex;align-items:center;gap:12px;padding-left:20px;border-left:1px solid rgba(0,0,0,.1);height:30px;flex-shrink:0}.filter-label{font-size:.85rem;font-weight:700;color:#64748b;white-space:nowrap}.switch{position:relative;display:inline-block;width:44px;height:24px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:var(--border-color);transition:.4s;box-shadow:inset 0 2px 4px #0000000d}.slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.4s;box-shadow:0 2px 4px #0000001a}input:checked+.slider{background-color:#30d906}input:focus+.slider{box-shadow:0 0 1px #30d906}input:checked+.slider:before{transform:translate(20px)}.slider.round{border-radius:34px}.slider.round:before{border-radius:50%}@media(max-width:640px){.search-wrapper{padding:0 15px}.filter-free-container{padding-left:10px;gap:8px}.filter-label{font-size:.75rem}.search-input{padding:16px 10px;font-size:.9rem}.search-suggestions{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;padding:6px 4px 12px;margin-top:8px;scrollbar-width:none;-ms-overflow-style:none}.search-suggestions::-webkit-scrollbar{display:none}.suggestion-tag{flex-shrink:0}}@media(max-width:480px){.filter-label{display:none}}.codes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-bottom:60px}.code-card{background:var(--card-bg);border-radius:20px;overflow:hidden;box-shadow:0 10px 30px #0000000d;transition:all .4s ease;border:1px solid var(--border-color);display:flex;flex-direction:column;height:100%}.code-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #0000001f;border-color:#e5b56766}.card-image-wrapper{position:relative;width:100%;height:220px;overflow:hidden;background:#1e1e24;cursor:pointer}.free-badge{position:absolute;top:15px;left:-35px;background:linear-gradient(135deg,#9ff50b,#30d906);color:#fff;padding:5px 40px;font-size:.75rem;font-weight:800;text-transform:uppercase;transform:rotate(-45deg);z-index:10;box-shadow:0 4px 10px #0003;letter-spacing:1px}.paid-badge{position:absolute;top:15px;left:-35px;background:linear-gradient(135deg,#ff9f43,#ff5252);color:#fff;padding:5px 40px;font-size:.75rem;font-weight:800;text-transform:uppercase;transform:rotate(-45deg);z-index:10;box-shadow:0 4px 10px #0003;letter-spacing:1px}.card-image{width:100%;height:100%;object-fit:cover;transition:transform .6s ease;display:block}.code-card:hover .card-image{transform:scale(1.08)}.card-content{padding:25px;flex:1;display:flex;flex-direction:column;width:100%;box-sizing:border-box}.card-title{font-size:1.35rem;font-weight:800;margin-bottom:12px;color:var(--text-color);line-height:1.3;display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tags-container{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.tag-pill{padding:4px 10px;font-size:.75rem;border-radius:50px;font-weight:600;letter-spacing:.2px;display:inline-flex;align-items:center}.tag-pill.topic{background:#4a858526;color:#4a8585;border:1px solid rgba(74,133,133,.25)}.tag-pill.subtag{background:#e5b5672e;color:#ce9d4f;border:1px solid rgba(229,181,103,.3)}.card-description{font-size:.95rem;color:var(--secondary-text);margin-bottom:16px;line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;flex-grow:1}.card-price-container{display:flex;flex-wrap:wrap;gap:8px 16px;background:#e5b56714;border:1px solid rgba(229,181,103,.25);border-radius:12px;padding:8px 14px;margin-bottom:16px}.price-item{display:flex;align-items:center;gap:6px;font-size:.85rem}.price-label{color:var(--secondary-text);font-weight:500}.price-value{font-weight:700;color:#4a8585}.price-value.highlight{color:#e67e22}.card-actions{margin-top:auto;display:flex;flex-direction:column;gap:12px;padding-top:16px;border-top:1px solid var(--border-color)}.card-actions-row{display:flex;gap:12px;width:100%}.action-btn{flex:1;padding:12px 0;border-radius:12px;font-weight:700;font-size:.95rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;text-decoration:none;border:none;box-shadow:0 4px 6px #00000005}.btn-video{background:#c0392b;color:#fff}.btn-video:hover{background:#e74c3c;transform:translateY(-2px);box-shadow:0 6px 12px #c0392b33}.btn-demo{background:#2d3436;color:#fff}.btn-demo:hover{background:#000;transform:translateY(-2px);box-shadow:0 6px 12px #0000001a}.btn-demo.disabled{background:#d1d1d1;color:#888;cursor:not-allowed;opacity:.7;transform:none!important;box-shadow:none!important}.btn-demo.disabled:hover{background:#d1d1d1;transform:none;box-shadow:none}.btn-github{background:#22c55e;color:#fff;border:1px solid #22c55e}.btn-github:hover{background:#16a34a;border-color:#16a34a;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #22c55e59}.btn-contact{background:linear-gradient(135deg,#f5c453,#e5b567);color:#2b2106;border:none}.btn-contact:hover{filter:brightness(1.1);transform:translateY(-2px);box-shadow:0 8px 15px #e5b56766}.download-toast{position:fixed;bottom:32px;right:32px;z-index:9999;display:flex;align-items:center;gap:10px;background:#1a1a2e;color:#fff;padding:14px 22px;border-radius:14px;box-shadow:0 8px 30px #00000040;font-size:15px;font-weight:500;pointer-events:none}.toast-icon{color:#4ade80;flex-shrink:0}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:spin .8s linear infinite}.empty-view{text-align:center;padding:60px;color:#666}@media(max-width:1024px){.codes-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.codes-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:35px}.code-card{border-radius:14px}.card-image-wrapper{height:125px}.free-badge,.paid-badge{top:10px;left:-38px;padding:4px 38px;font-size:.6rem}.card-content{padding:12px 10px}.card-title{min-height:1.3em;margin:0 0 7px;font-size:.9rem;line-height:1.3}.card-description{margin-bottom:10px;font-size:.72rem;line-height:1.4}.card-actions{gap:6px;padding-top:10px}.card-actions-row{gap:6px}.action-btn{min-width:0;padding:8px 2px;border-radius:8px;font-size:.7rem}.action-btn svg{width:13px;height:13px;margin-right:4px!important}.search-title{font-size:2rem}.code-page-container{padding:0 10px;margin-top:20px}.search-section{margin-bottom:40px}.search-input{padding:16px 50px 16px 15px;font-size:.9rem}.search-input::placeholder{font-size:.8rem}.search-icon{right:20px}}.card-image-wrapper{cursor:zoom-in}.image-overlay-hint{position:absolute;top:0;left:0;width:100%;height:100%;background:#0006;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease;color:#fff;font-weight:600;font-size:.9rem;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.card-image-wrapper:hover .image-overlay-hint{opacity:1}.zoom-close{position:absolute;top:-50px;right:0;background:#fff;border:none;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;box-shadow:0 4px 10px #0003;color:#1a1a1a}@media(max-width:768px){.image-zoom-overlay{padding:10px}.zoom-close{top:10px;right:10px}}.tutorial-container{max-width:1000px;margin:60px auto;padding:0 24px;font-family:Plus Jakarta Sans,sans-serif;color:var(--text-color)}.tutorial-header{text-align:center;margin-bottom:80px}.tutorial-header h1{font-size:3rem;font-weight:800;background:linear-gradient(135deg,#2d3436,#636e72);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:16px}.tutorial-header p{font-size:1.1rem;color:#636e72}[data-theme=dark] .tutorial-header h1{background:linear-gradient(135deg,#fff,#b8c2cc);-webkit-background-clip:text;background-clip:text}.step-wrapper{margin-bottom:100px;position:relative}.step-card{background:var(--card-bg);border-radius:24px;padding:40px;box-shadow:0 10px 40px #0000000a;border:1px solid var(--border-color);transition:transform .3s ease}.step-title-container{display:flex;align-items:center;gap:16px;margin-bottom:40px;padding-bottom:20px;border-bottom:2px solid var(--border-color)}.step-number{background:linear-gradient(135deg,#4a8585,#e5b567);color:#fff;width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.2rem;flex-shrink:0}.step-title{font-size:1.8rem;font-weight:700;color:var(--text-color);margin:0}.step-row{display:flex;align-items:center;gap:40px;margin-bottom:40px}.step-row.reverse{flex-direction:row-reverse}.step-row.stacked{flex-direction:column;align-items:flex-start}.step-row.stacked .image-container{width:100%;margin-top:24px}.text-container{flex:1}.huongdan{font-size:1.1rem;line-height:1.8;color:var(--secondary-text);margin-bottom:0}.huongdan a{color:#4a8585;font-weight:600;text-decoration:none;border-bottom:2px solid rgba(74,133,133,.2);transition:all .2s}.huongdan a:hover{border-bottom-color:#4a8585}.image-container{flex:1;border-radius:16px;overflow:hidden;box-shadow:0 8px 30px #00000014;background:var(--bg-color);line-height:0}.minhhoa{width:100%;height:auto;display:block;transition:transform .6s cubic-bezier(.165,.84,.44,1)}.image-container:hover .minhhoa{transform:scale(1.03)}.step-note{margin-top:30px;padding:20px;background:#ff47570d;border-radius:16px;border-left:4px solid #ff4757}.step-note span{color:#ff4757;font-weight:600;font-size:1rem}.video-section{margin-top:80px;text-align:center}.video-container{margin-top:40px;width:100%;aspect-ratio:16 / 9;background:#000;border-radius:24px;overflow:hidden;box-shadow:0 20px 50px #00000026}.video-container>video{display:block;width:100%;height:100%;background:#000;object-fit:contain}.tutorial-video-trigger{display:none}.tutorial-video-modal-overlay{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:54px 10px calc(54px + env(safe-area-inset-bottom));background:#000000d6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:tutorial-video-fade-in .2s ease-out}.tutorial-video-modal{position:relative;width:min(100%,680px);aspect-ratio:16 / 9;overflow:visible;border:1px solid rgba(255,255,255,.2);border-radius:16px;background:#000;box-shadow:0 24px 60px #00000080}.tutorial-video-modal video{display:block;width:100%;height:100%;border-radius:inherit;background:#000;object-fit:contain}.tutorial-video-modal-close{position:absolute;top:-44px;right:0;z-index:2;width:36px;height:36px;padding:0;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.65);border-radius:50%;background:#000000b3;color:#fff}@keyframes tutorial-video-fade-in{0%{opacity:0}to{opacity:1}}.golive-icon{display:inline-block;height:24px;vertical-align:middle;margin:0 4px}.app-list{margin:16px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px}.app-list li{padding:14px 18px;border-radius:12px;border-left:4px solid transparent;background:var(--bg-color);border-left-color:#4a8585;font-size:1rem;line-height:1.6;color:var(--secondary-text);transition:transform .2s ease,box-shadow .2s ease}.app-list li:nth-child(2){border-left-color:#e5b567}.app-list li:nth-child(3){border-left-color:#6c8cbf}.app-list li:nth-child(4){border-left-color:#e07a7a}.app-list li:nth-child(5){border-left-color:#7ab87a}.app-list li:hover{transform:translate(4px);box-shadow:0 4px 16px #00000012}.app-list li strong{color:var(--text-color);display:inline-block;margin-right:4px}@media(max-width:768px){.tutorial-container{margin:28px auto 40px;padding:0 10px}.tutorial-header{margin-bottom:34px;padding:0 10px}.step-row{flex-direction:column;align-items:stretch;gap:14px;margin-bottom:22px}.step-row.reverse{flex-direction:column}.tutorial-header h1{margin:0 0 10px;font-size:clamp(1.65rem,8vw,2rem);line-height:1.2;text-wrap:balance}.step-title{font-size:1.05rem;line-height:1.35}.tutorial-header p{margin:0;color:var(--secondary-text);font-size:.88rem;line-height:1.55}.step-wrapper{margin-bottom:24px}.step-card{padding:15px 13px;border-radius:16px}.step-title-container{gap:10px;margin-bottom:18px;padding-bottom:12px}.step-number{width:32px;height:32px;border-radius:9px;font-size:.9rem}.step-row:last-child{margin-bottom:0}.step-row.stacked .image-container{margin-top:0}.huongdan{margin:0;font-size:.86rem;line-height:1.65;overflow-wrap:anywhere}.image-container{width:100%;border-radius:10px;box-shadow:0 5px 18px #0000001a}.step-note{margin-top:18px;padding:12px 13px;border-left-width:3px;border-radius:10px}.step-note span{font-size:.78rem;line-height:1.55}.golive-icon{height:18px}.video-section{margin-top:42px}.video-section .step-title-container{margin-bottom:16px}.video-section .step-title{font-size:1.2rem}.tutorial-video-desktop{display:none}.tutorial-video-trigger{width:100%;min-height:92px;padding:16px;display:flex;align-items:center;justify-content:center;gap:13px;border:1px solid var(--border-color);border-radius:14px;background:linear-gradient(135deg,#4a858529,#e5b5672e);color:var(--text-color);text-align:left;box-shadow:0 8px 24px #00000014}.tutorial-video-trigger:active{transform:scale(.97)}.tutorial-video-play-icon{width:46px;height:46px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:50%;background:linear-gradient(135deg,#4a8585,#e5b567);color:#fff;box-shadow:0 7px 18px #4a858547}.tutorial-video-trigger span:last-child{display:flex;flex-direction:column;gap:3px}.tutorial-video-trigger strong{font-size:.9rem}.tutorial-video-trigger small{color:var(--secondary-text);font-size:.7rem}.video-container{position:relative;margin-top:0;width:100%;aspect-ratio:4 / 3;min-height:280px;max-height:430px;background:#000;border-radius:12px;box-shadow:0 10px 28px #00000024}.video-container video{position:absolute;inset:0;display:block;width:100%;height:100%!important;background:#000;object-fit:contain}}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.image-zoom-overlay{background:#000000e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:2000}.zoom-content{position:relative;max-width:90vw;max-height:90vh;display:flex;align-items:center;justify-content:center}.zoomed-image{max-width:100%;max-height:90vh;border-radius:12px;box-shadow:0 20px 50px #00000080;object-fit:contain}.zoom-close{position:absolute;top:-50px;right:0;background:var(--card-bg);border:none;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;box-shadow:0 4px 10px #0003;color:var(--text-color);z-index:10;padding:0}.zoom-close svg{display:block;width:20px;height:20px;color:currentColor;stroke:currentColor;pointer-events:none}.zoom-close:hover{transform:scale(1.1) rotate(90deg);background:#ff4757;color:#fff}@media(max-width:768px){.image-zoom-overlay{padding:10px}.zoom-close{top:12px;right:12px;width:38px;height:38px;background:#000000b8;border:1px solid rgba(255,255,255,.7);color:#fff;box-shadow:0 4px 14px #0006}}.qr-page-container{max-width:800px;margin:80px auto;padding:0 24px;font-family:Plus Jakarta Sans,sans-serif}.qr-header{text-align:center;margin-bottom:60px}.qr-header h1{font-size:2.8rem;font-weight:800;color:#1a1a1a;margin-bottom:16px;background:linear-gradient(135deg,#4a8585,#e5b567);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.qr-header p{color:#636e72;font-size:1.1rem}.qr-input-card{background:var(--card-bg);padding:40px;border-radius:24px;box-shadow:0 10px 40px #0000000a;border:1px solid var(--border-color)}.input-group{margin-bottom:24px}.input-label{display:block;margin-bottom:12px;font-weight:600;color:var(--text-color);font-size:.95rem}.qr-input{width:100%;padding:16px 20px;border-radius:12px;border:2px solid var(--border-color);background:var(--bg-color);color:var(--text-color);font-size:1rem;transition:all .3s ease;outline:none;box-sizing:border-box}.qr-input:focus{border-color:#4a8585;box-shadow:0 0 0 4px #4a85851a}.generate-btn{width:100%;padding:16px;border-radius:12px;background:linear-gradient(135deg,#4a8585,#3a6b6b);color:#fff;font-weight:700;font-size:1.1rem;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:12px;transition:all .3s ease}.generate-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #4a85854d}.generate-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.qr-modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.qr-modal-content{background:var(--modal-bg);border-radius:32px;width:100%;max-width:1100px;height:auto;max-height:95vh;display:flex;overflow:hidden;box-shadow:0 30px 60px #0003}.qr-preview-side{flex:1.2;background:var(--bg-color);display:flex;align-items:center;justify-content:center;padding:30px;position:relative;min-height:500px}.qr-controls-side{width:450px;padding:30px;border-left:1px solid var(--border-color);overflow-y:auto;display:flex;flex-direction:column}.qr-controls-header{display:flex;align-items:center;gap:9px;margin-bottom:22px;color:var(--text-color)}.qr-controls-header svg{color:#4a8585;flex-shrink:0}.qr-controls-header h2{margin:0;font-size:1.25rem;line-height:1.3}.modal-close-btn{position:absolute;top:16px;right:16px;background:#0000008c;border:1.5px solid rgba(255,255,255,.35);color:#fff;width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 12px #00000040;z-index:10;transition:all .2s;padding:0}.modal-close-btn:hover{background:#ff4757;border-color:#ff4757;color:#fff}.qr-export-container{background:var(--card-bg);padding:20px;border-radius:16px;box-shadow:0 10px 30px #0000000d;display:flex;align-items:center;justify-content:center;max-width:100%}.qr-export-container canvas{max-width:100%;height:auto!important}.qr-export-container.frame-1{border:6px solid #2d3436;border-radius:0}.qr-export-container.frame-2{border:5px solid #E5B567;border-radius:20px}.qr-export-container.frame-3{background:linear-gradient(135deg,#4a8585,#e5b567);padding:28px}.control-section{margin-bottom:20px}.control-title{font-size:1rem;font-weight:700;margin-bottom:15px;color:var(--text-color)}.color-picker-wrapper{display:flex;align-items:center;gap:15px}.color-input{width:60px;height:60px;border:none;border-radius:12px;cursor:pointer;background:none}.frame-options{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.frame-opt{padding:12px;border:2px solid var(--border-color);border-radius:12px;cursor:pointer;font-weight:600;font-size:.9rem;text-align:center;transition:all .2s}.frame-opt:hover{background:#f8f9fa}.frame-opt.active{border-color:#4a8585;background:#4a85850d;color:#4a8585}.download-btn{width:100%;padding:14px;border-radius:12px;background:#2d3436;color:#fff;font-weight:700;border:none;cursor:pointer;margin-top:10px;display:flex;align-items:center;justify-content:center;gap:10px;transition:all .2s}.download-btn:hover{background:#000}@media(max-width:900px){.qr-modal-content{flex-direction:column;max-height:90vh;width:95%;border-radius:20px;overflow-y:auto}.qr-preview-side{min-height:300px;padding:40px 20px;flex:none;overflow:hidden}.qr-controls-side{width:100%;border-left:none;border-top:1px solid #eee;padding:20px;box-sizing:border-box}.qr-export-container{transform:scale(.75);padding:20px;margin:0 auto}}@media(max-width:500px){.qr-header h1{font-size:2rem}.qr-input-card{padding:24px}.qr-preview-side{min-height:250px;padding:30px 10px}.qr-export-container{transform:scale(.55)}.frame-options{grid-template-columns:1fr}.qr-notice-box{flex-direction:column;text-align:center;gap:10px}.notice-text{text-align:center;font-size:.75rem}.modal-close-btn{top:10px;right:10px;width:32px;height:32px}.control-section{margin-bottom:15px}.download-btn{padding:12px;font-size:.9rem}}.qr-notice-box{margin-top:20px;padding:15px;background:var(--bg-color);border-radius:16px;border:1px dashed #4A8585;display:flex;align-items:center;gap:15px}.notice-text{flex:1;font-size:.8rem;color:var(--secondary-text);line-height:1.4;margin-bottom:0;text-align:left}.zalo-contact-wrapper{flex-shrink:0}.zalo-notice-img{width:100px;height:100px;object-fit:contain;border-radius:8px;background:#fff;padding:5px}@media(max-width:768px){.qr-page-container{margin:30px auto 45px;padding:0 12px}.qr-header{margin-bottom:30px;padding:0 8px}.qr-header h1{margin:0 0 10px;font-size:clamp(1.65rem,8vw,2rem);line-height:1.2;text-wrap:balance}.qr-header p{margin:0;color:var(--secondary-text);font-size:.88rem;line-height:1.55}.qr-input-card{padding:17px 14px;border-radius:16px}.input-group{margin-bottom:15px}.input-label{margin-bottom:8px;font-size:.82rem}.qr-input{padding:13px 14px;border-width:1px;border-radius:10px;font-size:.9rem}.generate-btn{padding:13px;border-radius:10px;gap:8px;font-size:.92rem}.qr-modal-overlay{align-items:center;padding:16px}.qr-modal-content{width:100%;max-width:460px;height:auto;max-height:82dvh;border-radius:20px;overflow:hidden;overscroll-behavior:contain;flex-direction:column}.qr-preview-side{min-height:0;height:clamp(180px,28dvh,230px);padding:36px 14px 14px;flex:0 0 clamp(180px,28dvh,230px);border-bottom:1px solid var(--border-color)}.modal-close-btn{top:10px;right:10px;width:34px;height:34px;padding:0;background:#000000a6;border:1px solid rgba(255,255,255,.55);color:#fff}.modal-close-btn svg{width:18px;height:18px}.qr-export-container{width:min(100%,clamp(160px,30dvh,250px));padding:14px;margin:0 auto;border-radius:14px;transform:none;box-sizing:border-box}.qr-export-container.frame-1{border-width:8px}.qr-export-container.frame-2{border-width:7px;border-radius:18px}.qr-export-container.frame-3{padding:20px}.qr-controls-side{width:100%;min-height:0;flex:1 1 auto;padding:16px 14px calc(16px + env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.qr-controls-header{position:sticky;top:-16px;z-index:2;gap:7px;margin:-2px 0 14px;padding:8px 0;background:var(--modal-bg)}.qr-controls-header h2{font-size:1rem}.qr-controls-header svg{width:18px;height:18px}.control-section{margin-bottom:16px}.control-title{margin:0 0 10px;font-size:.86rem}.color-picker-wrapper{gap:10px;font-size:.82rem}.color-input{width:48px;height:42px;border-radius:9px}.frame-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.frame-opt{min-width:0;padding:9px 5px;border-radius:9px;font-size:.74rem}.download-btn{margin-top:0;padding:12px;border-radius:10px;font-size:.88rem}.qr-notice-box{display:none}}.chatbot-container{position:fixed;bottom:30px;right:30px;z-index:1000;display:flex;flex-direction:column;align-items:flex-end}.page-message-bubble{position:absolute;bottom:75px;right:0;width:230px;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;padding:10px 16px;border-radius:14px 14px 4px;font-size:14px;font-weight:500;line-height:1.5;box-shadow:0 4px 16px #f59e0b59;pointer-events:none}.download-success-bubble{position:absolute;bottom:75px;right:0;background:#166534;color:#fff;padding:10px 16px;border-radius:14px 14px 4px;font-size:14px;font-weight:500;white-space:nowrap;box-shadow:0 4px 16px #0003;pointer-events:none}.chatbot-toggle{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border:none;cursor:pointer;box-shadow:0 10px 25px -5px #d9770666;display:flex;align-items:center;justify-content:center;transition:transform .3s cubic-bezier(.175,.885,.32,1.275)}.chatbot-toggle:hover{transform:scale(1.1)}.notification-dot{position:absolute;top:2px;right:2px;width:14px;height:14px;background-color:#ef4444;border:2px solid white;border-radius:50%;z-index:2}.chatbot-welcome-bubble{position:absolute;bottom:75px;right:0;background:#fff;padding:12px 35px 12px 20px;border-radius:18px 18px 2px;box-shadow:0 10px 25px #0000001a;white-space:nowrap;font-size:14px;font-weight:600;color:#1f2937;z-index:10;border:1px solid rgba(0,0,0,.05);cursor:pointer}.bubble-close-btn{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:transparent;border:none;color:#9ca3af;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:4px;border-radius:50%;transition:all .2s}.bubble-close-btn:hover{background:#0000000d;color:#ef4444}[data-theme=dark] .bubble-close-btn:hover{background:#ffffff1a}[data-theme=dark] .chatbot-welcome-bubble{background:#1f2937;color:#fff;border:1px solid rgba(255,255,255,.1)}@media(prefers-color-scheme:dark){.chatbot-welcome-bubble{background:#1f2937;color:#fff;border:1px solid rgba(255,255,255,.1)}}.chatbot-window{width:380px;height:550px;background:#fffc;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.3);border-radius:24px;box-shadow:0 20px 50px #0000001a;display:flex;flex-direction:column;overflow:hidden;margin-bottom:20px;transform-origin:bottom right}[data-theme=dark] .chatbot-window{background:#111827cc;border:1px solid rgba(255,255,255,.1);color:#fff}@media(prefers-color-scheme:dark){.chatbot-window{background:#111827cc;border:1px solid rgba(255,255,255,.1);color:#fff}}.chatbot-header{padding:20px;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;display:flex;align-items:center;justify-content:space-between}.header-info{display:flex;align-items:center;gap:12px}.bot-avatar{width:40px;height:40px;background:#fff;border-radius:12px;display:flex;align-items:center;justify-content:center;overflow:hidden}.bot-avatar img{width:100%;height:100%;object-fit:cover}.header-text h3{margin:0;font-size:16px;font-weight:600}.header-text p{margin:0;font-size:12px;opacity:.8}.header-actions{display:flex;align-items:center}.close-btn{background:#ffffff1a;border:none;color:#fff;cursor:pointer;width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .2s;padding:0}.close-btn:hover{background:#fff3;transform:scale(1.05)}.chatbot-messages{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:12px}.chatbot-messages::-webkit-scrollbar{width:4px}.chatbot-messages::-webkit-scrollbar-track{background:transparent}.chatbot-messages::-webkit-scrollbar-thumb{background:#0000001a;border-radius:10px}.message{max-width:80%;padding:12px 16px;border-radius:18px;font-size:14px;line-height:1.5;position:relative;animation:messageIn .3s ease-out;white-space:pre-line}@keyframes messageIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message.bot{align-self:flex-start;background:#f3f4f6;color:#1f2937;border-bottom-left-radius:4px}[data-theme=dark] .message.bot{background:#374151;color:#f9fafb}@media(prefers-color-scheme:dark){.message.bot{background:#374151;color:#f9fafb}}.message-link{color:#2563eb;font-weight:600;text-decoration:underline;word-break:break-all}[data-theme=dark] .message-link{color:#60a5fa}.message.user .message-link{color:#fff;text-decoration:underline}.message.user{align-self:flex-end;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border-bottom-right-radius:4px}.quick-replies{display:flex;gap:10px;padding:0 20px 14px;flex-wrap:wrap}.quick-reply-btn{flex:1;min-width:100px;padding:10px 16px;border-radius:20px;border:1.5px solid #f59e0b;background:transparent;color:#f59e0b;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.quick-reply-btn:hover{background:#f59e0b;color:#fff}.chatbot-input-area{padding:20px;border-top:1px solid rgba(0,0,0,.05);display:flex;gap:10px}[data-theme=dark] .chatbot-input-area{border-top:1px solid rgba(255,255,255,.05)}@media(prefers-color-scheme:dark){.chatbot-input-area{border-top:1px solid rgba(255,255,255,.05)}}.chatbot-input-area input{flex:1;background:#f9fafb;border:1px solid #e5e7eb;padding:12px 16px;border-radius:12px;outline:none;transition:border-color .2s}[data-theme=dark] .chatbot-input-area input{background:#1f2937;border-color:#374151;color:#fff}@media(prefers-color-scheme:dark){.chatbot-input-area input{background:#1f2937;border-color:#374151;color:#fff}}.chatbot-input-area input:focus{border-color:#f59e0b}.send-btn{width:55px;height:55px;border-radius:12px;background:#f59e0b;color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.send-btn:hover{background:#d97706}.send-btn:disabled{opacity:.5;cursor:not-allowed}.typing-indicator-container{display:flex;align-items:center;gap:10px;margin-bottom:10px;margin-top:5px}.typing-indicator{display:flex;gap:4px;padding:8px 12px;background:#f3f4f6;border-radius:12px;width:fit-content}.typing-text{font-size:12px;color:#9ca3af;font-style:italic;font-weight:500}[data-theme=dark] .typing-indicator{background:#374151}@media(prefers-color-scheme:dark){.typing-indicator{background:#374151}}.dot{width:6px;height:6px;background:#9ca3af;border-radius:50%;animation:typing 1s infinite ease-in-out}.dot:nth-child(2){animation-delay:.2s}.dot:nth-child(3){animation-delay:.4s}@keyframes typing{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@media(max-width:480px){.chatbot-window{width:calc(100vw - 40px);height:500px;right:20px;bottom:90px}.chatbot-container{right:20px;bottom:calc(88px + env(safe-area-inset-bottom))}}@media(min-width:481px)and (max-width:768px){.chatbot-container{bottom:calc(88px + env(safe-area-inset-bottom))}}
