body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.fixed{position:fixed}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.contents{display:contents}.hidden{display:none}.h-12{height:3rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-8{height:2rem}.min-h-11{min-height:2.75rem}.min-h-12{min-height:3rem}.w-12{width:3rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-8{width:2rem}.min-w-0{min-width:0px}.max-w-2xl{max-width:42rem}.max-w-sm{max-width:24rem}.shrink-0{flex-shrink:0}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-7{gap:1.75rem}.gap-8{gap:2rem}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-t{border-top-width:1px}.border-blue-300\/20{border-color:#93c5fd33}.border-cyan-100{--tw-border-opacity: 1;border-color:rgb(207 250 254 / var(--tw-border-opacity, 1))}.border-cyan-300\/20{border-color:#67e8f933}.border-slate-100{--tw-border-opacity: 1;border-color:rgb(241 245 249 / var(--tw-border-opacity, 1))}.border-slate-200{--tw-border-opacity: 1;border-color:rgb(226 232 240 / var(--tw-border-opacity, 1))}.border-white\/10{border-color:#ffffff1a}.border-white\/70{border-color:#ffffffb3}.bg-cyan-50{--tw-bg-opacity: 1;background-color:rgb(236 254 255 / var(--tw-bg-opacity, 1))}.bg-slate-50{--tw-bg-opacity: 1;background-color:rgb(248 250 252 / var(--tw-bg-opacity, 1))}.bg-slate-950{--tw-bg-opacity: 1;background-color:rgb(2 6 23 / var(--tw-bg-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/\[0\.06\]{background-color:#ffffff0f}.bg-\[radial-gradient\(circle_at_12\%_10\%\,rgba\(34\,211\,238\,0\.16\)\,transparent_32\%\)\,radial-gradient\(circle_at_88\%_0\%\,rgba\(124\,58\,237\,0\.22\)\,transparent_34\%\)\,linear-gradient\(135deg\,\#08111f\,\#111827_48\%\,\#24114d\)\]{background-image:radial-gradient(circle at 12% 10%,rgba(34,211,238,.16),transparent 32%),radial-gradient(circle at 88% 0%,rgba(124,58,237,.22),transparent 34%),linear-gradient(135deg,#08111f,#111827 48%,#24114d)}.bg-\[radial-gradient\(circle_at_14\%_0\%\,rgba\(34\,211\,238\,0\.18\)\,transparent_30\%\)\,radial-gradient\(circle_at_88\%_8\%\,rgba\(99\,102\,241\,0\.16\)\,transparent_32\%\)\,linear-gradient\(135deg\,\#ffffff\,\#f8fafc\)\]{background-image:radial-gradient(circle at 14% 0%,rgba(34,211,238,.18),transparent 30%),radial-gradient(circle at 88% 8%,rgba(99,102,241,.16),transparent 32%),linear-gradient(135deg,#fff,#f8fafc)}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-cyan-400{--tw-gradient-from: #22d3ee var(--tw-gradient-from-position);--tw-gradient-to: rgb(34 211 238 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-500{--tw-gradient-from: #06b6d4 var(--tw-gradient-from-position);--tw-gradient-to: rgb(6 182 212 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-slate-950{--tw-gradient-from: #020617 var(--tw-gradient-from-position);--tw-gradient-to: rgb(2 6 23 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.via-blue-950{--tw-gradient-to: rgb(23 37 84 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #172554 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-cyan-950{--tw-gradient-to: rgb(8 51 68 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #083344 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-indigo-500{--tw-gradient-to: rgb(99 102 241 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #6366f1 var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-indigo-500{--tw-gradient-to: #6366f1 var(--tw-gradient-to-position)}.to-indigo-700{--tw-gradient-to: #4338ca var(--tw-gradient-to-position)}.to-orange-400{--tw-gradient-to: #fb923c var(--tw-gradient-to-position)}.to-teal-600{--tw-gradient-to: #0d9488 var(--tw-gradient-to-position)}.p-4{padding:1rem}.p-5{padding:1.25rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.pt-4{padding-top:1rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-black{font-weight:900}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-6{line-height:1.5rem}.leading-7{line-height:1.75rem}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.text-cyan-200{--tw-text-opacity: 1;color:rgb(165 243 252 / var(--tw-text-opacity, 1))}.text-cyan-300\/80{color:#67e8f9cc}.text-cyan-600{--tw-text-opacity: 1;color:rgb(8 145 178 / var(--tw-text-opacity, 1))}.text-cyan-700{--tw-text-opacity: 1;color:rgb(14 116 144 / var(--tw-text-opacity, 1))}.text-slate-300{--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity, 1))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.text-slate-600{--tw-text-opacity: 1;color:rgb(71 85 105 / var(--tw-text-opacity, 1))}.text-slate-700{--tw-text-opacity: 1;color:rgb(51 65 85 / var(--tw-text-opacity, 1))}.text-slate-950{--tw-text-opacity: 1;color:rgb(2 6 23 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.shadow-\[0_24px_70px_rgba\(15\,23\,42\,0\.18\)\]{--tw-shadow: 0 24px 70px rgba(15,23,42,.18);--tw-shadow-colored: 0 24px 70px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-inner{--tw-shadow: inset 0 2px 4px 0 rgb(0 0 0 / .05);--tw-shadow-colored: inset 0 2px 4px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-blue-950\/25{--tw-shadow-color: rgb(23 37 84 / .25);--tw-shadow: var(--tw-shadow-colored)}.shadow-cyan-500\/20{--tw-shadow-color: rgb(6 182 212 / .2);--tw-shadow: var(--tw-shadow-colored)}.shadow-cyan-950\/20{--tw-shadow-color: rgb(8 51 68 / .2);--tw-shadow: var(--tw-shadow-colored)}.shadow-cyan-950\/25{--tw-shadow-color: rgb(8 51 68 / .25);--tw-shadow: var(--tw-shadow-colored)}.shadow-slate-200\/70{--tw-shadow-color: rgb(226 232 240 / .7);--tw-shadow: var(--tw-shadow-colored)}.shadow-slate-200\/80{--tw-shadow-color: rgb(226 232 240 / .8);--tw-shadow: var(--tw-shadow-colored)}.shadow-white\/5{--tw-shadow-color: rgb(255 255 255 / .05);--tw-shadow: var(--tw-shadow-colored)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur{--tw-backdrop-blur: blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-xl{--tw-backdrop-blur: blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;color:#333}.container{max-width:1200px;margin:0 auto;padding:0 20px}.header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:25px 0;box-shadow:0 2px 10px #0000001a;animation:slideDown .4s ease}.header-content{max-width:1200px;margin:0 auto;padding:0 20px;display:flex;justify-content:space-between;align-items:center;gap:20px}.header-left{flex:1}.header h1{font-size:2.5em;margin:0;font-weight:700;letter-spacing:.5px}.btn-admin{background:#fff3;color:#fff;border:1px solid white;padding:10px 20px;border-radius:5px;cursor:pointer;font-weight:500;transition:all .3s;white-space:nowrap}.btn-admin:hover{background:#ffffff4d;transform:scale(1.05)}.btn-cart-icon{position:relative;background:#fff3;color:#fff;border:2px solid rgba(255,255,255,.5);padding:10px 14px;border-radius:8px;cursor:pointer;font-size:1.2em;transition:all .3s;display:flex;align-items:center;justify-content:center;white-space:nowrap}.btn-cart-icon:hover{background:#ffffff4d;transform:scale(1.1)}.cart-count{position:absolute;top:-8px;right:-8px;background:#ff4757;color:#fff;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75em;font-weight:700;animation:badgePop .3s ease}.main-content{padding:40px 0}.content-grid{display:grid;grid-template-columns:1fr 350px;gap:30px;align-items:start}.content-grid-full{display:grid;grid-template-columns:1fr;gap:30px;align-items:start}.services-section{background:#fff;border-radius:10px;padding:30px;box-shadow:0 2px 10px #0000000d}.services-section h2{margin-bottom:25px;color:#333;font-size:1.8em}.service-list{width:100%}.filter-tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.filter-tabs button{background:#fff;border:1px solid #dbe3ef;border-radius:999px;color:#475569;cursor:pointer;font:inherit;font-weight:700;padding:10px 16px;transition:all .2s ease}.filter-tabs button:hover{border-color:#2563eb;color:#2563eb}.filter-tabs button.active{background:#2563eb;border-color:#2563eb;color:#fff;box-shadow:0 8px 18px #2563eb38}.no-services{text-align:center;padding:40px;color:#999}.services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.service-card{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;padding:20px;transition:all .3s ease;cursor:pointer}.service-card:hover{box-shadow:0 5px 20px #0000001a;transform:translateY(-5px)}.service-icon{font-size:3em;margin-bottom:10px;width:64px;height:64px;display:flex;align-items:center;justify-content:center;overflow:hidden;line-height:1}.service-icon img{width:100%;height:100%;display:block;-o-object-fit:contain;object-fit:contain;border-radius:8px}.service-card h3{margin:10px 0;color:#333}.service-card .category{display:inline-block;background:#667eea;color:#fff;padding:3px 10px;border-radius:20px;font-size:.85em;margin-bottom:10px}.service-card .description{font-size:.9em;color:#666;margin:10px 0}.packages-preview{background:#fff;padding:10px;border-radius:5px;margin:15px 0;font-size:.9em}.packages-preview ul{list-style:none;margin-top:5px;padding-left:10px}.packages-preview li{margin:3px 0;color:#666}.package-preview-item{display:flex;flex-direction:column;gap:2px}.package-preview-icon{display:inline-flex;align-items:center;justify-content:center;width:1.1rem;height:1.1rem;margin-right:4px;vertical-align:text-bottom}.package-preview-icon.image img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.package-preview-item small{color:#7c8798;line-height:1.35}.service-detail{animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.btn-back{display:flex;align-items:center;gap:8px;background:linear-gradient(135deg,#667eea,#764ba2);border:2px solid rgba(255,255,255,.3);color:#fff;padding:10px 18px;border-radius:8px;cursor:pointer;margin-bottom:20px;transition:all .3s ease;font-weight:600;box-shadow:0 4px 15px #667eea33}.btn-back:hover{background:linear-gradient(135deg,#764ba2,#667eea);border-color:#ffffff80;transform:translate(-3px);box-shadow:0 6px 20px #667eea4d}.btn-back:active{transform:translate(-1px)}.detail-container{margin-top:20px}.detail-header{margin-bottom:30px}.detail-icon{font-size:4em;margin-bottom:15px;min-height:72px}.detail-icon img{width:72px;height:72px;-o-object-fit:contain;object-fit:contain;border-radius:8px}.detail-header h1{font-size:2.5em;margin-bottom:10px}.detail-description{color:#666;font-size:1.1em}.packages-list h2{margin:30px 13px 20px;color:#333}.packages-grid{display:grid;margin:10px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.package-item{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border-radius:8px;padding:20px;border:2px solid #667eea;transition:all .3s ease}.package-item:hover{box-shadow:0 10px 30px #667eea4d;transform:translateY(-5px)}.package-item.out-of-stock{background:linear-gradient(135deg,#ffe8e8,#ffd4d4);border-color:#ffb3b3;opacity:.8;position:relative;pointer-events:none}.package-item.out-of-stock:hover{box-shadow:none;transform:none}.out-of-stock-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#ffc8c84d;border-radius:8px;display:flex;align-items:center;justify-content:center;z-index:10}.out-of-stock-badge{background:#ff6666f2;color:#fff;padding:12px 24px;border-radius:6px;font-weight:700;font-size:1.2em;text-shadow:0 2px 4px rgba(0,0,0,.2);box-shadow:0 4px 12px #f666;animation:pulse 2s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.package-item.out-of-stock .btn{pointer-events:auto;opacity:.6;cursor:not-allowed;background:#ccc!important}.package-item.out-of-stock .btn:hover{background:#ccc!important;box-shadow:none}.package-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:15px;border-bottom:2px solid rgba(102,126,234,.3)}.package-header h3{color:#333}.price{font-size:1.5em;font-weight:700;color:#667eea}.price small{display:block;color:#64748b;font-size:.72rem;font-weight:700;margin-top:2px}.package-description{color:#5f6c7b;line-height:1.5;margin-bottom:12px}.duration{background:#fff;padding:10px;border-radius:5px;margin:15px 0;font-weight:500;color:#667eea}.cart-section{position:sticky;top:20px}.cart{background:#fff;border-radius:10px;padding:25px;box-shadow:0 2px 10px #0000001a}.cart h2{margin-bottom:20px;color:#333;font-size:1.5em}.empty-cart{text-align:center;padding:30px 0;color:#999}.empty-cart p{margin:10px 0}.empty-hint{font-size:.9em;color:#bbb}.cart-items{max-height:400px;overflow-y:auto;margin-bottom:20px}.cart-item{background:#f9f9f9;padding:15px;border-radius:5px;margin-bottom:10px;border-left:4px solid #667eea}.item-info h4{margin-bottom:5px;color:#333}.package-name{font-size:.9em;color:#666}.item-price{color:#667eea;font-weight:700;margin-top:5px}.cart-quantity-hint{color:#64748b;font-size:.84rem;margin-top:4px}.item-controls{display:flex;gap:8px;margin-top:10px;align-items:center}.quantity-input{width:50px;padding:5px;border:1px solid #ddd;border-radius:5px;text-align:center}.btn-delete{background:#ff4757;color:#fff;border:none;padding:5px 10px;border-radius:5px;cursor:pointer;transition:background .3s}.btn-delete:hover{background:#ff3838}.item-total{text-align:right;font-weight:700;color:#667eea;margin-top:8px}.cart-summary{background:#f9f9f9;padding:15px;border-radius:5px;margin-bottom:20px}.summary-row{display:flex;justify-content:space-between;align-items:center;font-size:1.1em}.btn{border:none;padding:12px 20px;border-radius:5px;cursor:pointer;font-size:1em;transition:all .3s ease;display:inline-flex;align-items:center;gap:8px;font-weight:500}.btn-primary{background:#667eea;color:#fff}.btn-primary:hover{background:#5568d3;box-shadow:0 5px 15px #667eea66}.btn-success:hover{background:#27ae60;box-shadow:0 5px 15px #2ecc7166}.full-width{width:100%;justify-content:center}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:flex-end;z-index:1000;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{background:#fff;border-radius:10px;padding:30px;max-width:500px;width:90%;box-shadow:0 10px 40px #0000004d;position:relative;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.cart-modal{background:#fff;border-radius:15px;padding:30px;width:95%;max-width:450px;max-height:90vh;box-shadow:0 15px 50px #0006;position:relative;animation:slideInRight .3s ease;display:flex;flex-direction:column;margin-right:20px}@keyframes slideInRight{0%{opacity:0;transform:translate(100px)}to{opacity:1;transform:translate(0)}}.cart-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;padding-bottom:15px;border-bottom:2px solid #e0e0e0}.cart-modal-header h2{margin:0;color:#333;font-size:1.6em}.cart-modal-items{flex:1;overflow-y:auto;margin-bottom:20px;padding-right:10px}.cart-modal-items::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.cart-modal-items::-webkit-scrollbar-thumb{background:#667eea;border-radius:10px}.cart-modal-items::-webkit-scrollbar-thumb:hover{background:#764ba2}.cart-modal-summary{background:#f9f9f9;padding:15px;border-radius:8px;margin-bottom:20px;border-left:4px solid #667eea}.modal-close{position:absolute;top:15px;right:15px;background:#f0f0f0;border:none;width:35px;height:35px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.2em;transition:all .3s}.modal-close:hover{background:#e0e0e0;transform:rotate(90deg)}.modal h2{margin-bottom:20px;color:#333}.order-summary{background:#f9f9f9;padding:15px;border-radius:5px;margin-bottom:25px;max-height:150px;overflow-y:auto}.order-summary h3{margin-bottom:10px;font-size:1em;color:#333}.order-item{display:flex;justify-content:space-between;padding:5px 0;border-bottom:1px solid #e0e0e0;font-size:.9em}.order-item .price{font-weight:700;color:#667eea}.order-total{display:flex;justify-content:space-between;padding:10px 0;border-top:2px solid #667eea;margin-top:5px;font-weight:700;color:#333}.total-price{color:#667eea;font-size:1.1em}.contact-form{margin-bottom:25px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:#333}.required{color:#ff4757}.form-group input,.form-group textarea{width:100%;padding:10px;border:1px solid #ddd;border-radius:5px;font-family:inherit;font-size:1em;transition:border .3s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.hint{display:block;margin-top:5px;color:#999;font-size:.9em}.payment-info{background:#e8f4f8;padding:15px;border-radius:5px;border-left:4px solid #3498db}.payment-info h4{color:#333;margin-bottom:8px}.payment-info p{font-size:.95em;color:#555;line-height:1.5}.loading{text-align:center;padding:100px 20px;font-size:1.2em;color:#667eea}.loading-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 18% 18%,rgba(34,211,238,.2),transparent 28%),radial-gradient(circle at 82% 72%,rgba(249,115,22,.16),transparent 30%),linear-gradient(135deg,#0f172a,#134e4a 55%,#0b1120)}.loading-card{width:min(520px,100%);border:1px solid rgba(255,255,255,.14);border-radius:24px;background:#ffffffed;box-shadow:0 28px 80px #00000047;overflow:hidden;padding:26px}.loading-logo-wrap{display:flex;justify-content:center;margin-bottom:22px;animation:loadingFloat 1.8s ease-in-out infinite}.loading-logo-wrap .brand-lockup{border:1px solid #dbeafe;border-radius:18px;background:#fff;box-shadow:0 18px 36px #0f172a1a;padding:12px 16px}.loading-logo-wrap .brand-copy strong{color:#0f172a}.loading-logo-wrap .brand-copy small{color:#64748b}.loading-copy{text-align:center}.loading-copy span{color:#0891b2;display:block;font-size:.78rem;font-weight:900;letter-spacing:0;margin-bottom:8px;text-transform:uppercase}.loading-copy h1{color:#0f172a;font-size:clamp(1.65rem,7vw,2.35rem);line-height:1.08;margin:0}.loading-copy p{color:#64748b;line-height:1.6;margin:12px auto 0;max-width:380px}.loading-progress{height:10px;border-radius:999px;background:#e2e8f0;margin:24px 0;overflow:hidden}.loading-progress span{display:block;width:46%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#22d3ee,#2563eb,#f97316);animation:loadingSlide 1.1s ease-in-out infinite}.loading-skeleton-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.loading-skeleton-grid i{display:block;height:74px;border:1px solid #e2e8f0;border-radius:14px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.82),transparent),linear-gradient(180deg,#f8fafc,#eef2f7);background-size:180% 100%,100% 100%;animation:loadingShimmer 1.35s linear infinite}@keyframes loadingFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes loadingSlide{0%{transform:translate(-115%)}to{transform:translate(235%)}}@keyframes loadingShimmer{0%{background-position:180% 0,0 0}to{background-position:-180% 0,0 0}}@media (max-width: 520px){.loading-screen{padding:14px}.loading-card{border-radius:20px;padding:20px}.loading-logo-wrap .brand-lockup{width:100%;justify-content:center}.loading-skeleton-grid{grid-template-columns:1fr}.loading-skeleton-grid i{height:52px}}@media (max-width: 768px){.content-grid{grid-template-columns:1fr}.cart-section{position:static}.header h1,.detail-header h1{font-size:1.8em}.services-grid,.packages-grid{grid-template-columns:1fr}.modal{width:95%;max-height:90vh;overflow-y:auto}}.admin-login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.login-container{width:100%;max-width:450px}.login-box{background:#fff;border-radius:10px;padding:40px;box-shadow:0 10px 40px #0000004d;animation:slideUp .4s ease}.login-box h1{color:#333;margin-bottom:10px;text-align:center}.subtitle{text-align:center;color:#999;margin-bottom:30px}.login-form{margin-bottom:30px}.error-message{background:#ffebee;color:#c62828;padding:12px;border-radius:5px;margin-bottom:20px;border-left:4px solid #c62828}.demo-credentials{background:#f5f5f5;padding:15px;border-radius:5px;font-size:.9em;border-left:4px solid #667eea}.demo-credentials p{margin:5px 0}.demo-credentials strong{color:#667eea}.admin-dashboard{min-height:100vh;background:#f5f5f5}.admin-nav{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:20px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 10px #0000001a}.admin-nav h1{margin:0;font-size:1.8em}.btn-logout{background:#fff3;color:#fff;border:1px solid white;padding:10px 20px;border-radius:5px;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .3s}.btn-logout:hover{background:#ffffff4d}.admin-container{max-width:1400px;margin:0 auto;padding:20px}.admin-tabs{display:flex;gap:10px;margin-bottom:20px;border-bottom:2px solid #e0e0e0}.tab{background:#fff;border:none;padding:15px 25px;cursor:pointer;font-size:1em;font-weight:500;color:#666;border-bottom:3px solid transparent;transition:all .3s}.tab:hover{color:#333}.tab.active{color:#667eea;border-bottom-color:#667eea}.admin-content{background:#fff;border-radius:10px;padding:30px;box-shadow:0 2px 10px #0000000d}.service-manager{width:100%}.manager-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;padding-bottom:20px;border-bottom:2px solid #e0e0e0}.manager-header h2{margin:0;color:#333}.form-box{background:#f9f9f9;padding:20px;border-radius:8px;margin-bottom:25px;border:2px solid #667eea}.form-box form{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-box input,.form-box textarea,.form-box select{padding:12px;border:1px solid #ddd;border-radius:5px;font-family:inherit;font-size:1em}.form-box textarea{grid-column:1 / -1;resize:vertical;min-height:100px}.form-box button{grid-column:1 / -1}.services-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:15px}.service-item{background:#fff;border:1px solid #e0e0e0;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0000000d;transition:all .3s}.service-item:hover{box-shadow:0 5px 15px #0000001a}.service-header-bar{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:15px;cursor:pointer;display:flex;justify-content:space-between;align-items:center}.service-title{flex:1}.service-title h3{margin:0 0 5px}.category-badge{display:inline-block;background:#ffffff4d;color:#fff;padding:3px 8px;border-radius:3px;font-size:.85em}.expand-btn{background:none;border:none;color:#fff;cursor:pointer;font-size:1.2em}.service-details{padding:15px;border-top:1px solid #e0e0e0;background:#fafafa}.service-details p{color:#666;margin-bottom:15px;line-height:1.6}.packages-section{margin:15px 0}.packages-section h4{margin-bottom:10px;color:#333}.packages-list{background:#fff;border-radius:5px;border:1px solid #e0e0e0}.package-row{display:flex;justify-content:space-between;align-items:center;padding:10px 15px;border-bottom:1px solid #f0f0f0}.package-row:last-child{border-bottom:none}.package-row-full{padding:15px;border-bottom:1px solid #f0f0f0}.package-row-full:last-child{border-bottom:none}.package-row-full{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.pkg-pricing{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:8px;font-size:.95em}.price-label{color:#666;font-size:.9em}.base-price{color:#667eea;font-weight:700;font-size:1.05em}.profit{color:#ff9800;font-weight:700;font-size:.95em}.selling-price{color:#2ecc71;font-weight:700;font-size:1.15em;padding:4px 12px;background:#2ecc711a;border-radius:4px}.package-edit-form{flex:1}.pricing-inputs{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;margin-bottom:15px;padding:15px;background:#f9f9f9;border-radius:8px;border:1px solid #e0e0e0}.price-input-group{display:flex;flex-direction:column;gap:6px}.price-input-group label{font-weight:600;color:#333;font-size:.95em}.price-input-group input{padding:10px;border:1px solid #ddd;border-radius:4px;font-size:1em;transition:border-color .3s}.price-input-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.price-input-group input:disabled{background-color:#f5f5f5;color:#2ecc71;font-weight:700;cursor:not-allowed}.package-edit-actions{display:flex;gap:10px}.package-actions{display:flex;gap:8px}.btn-robot,.btn-edit,.btn-delete{padding:8px 12px;border:none;border-radius:4px;cursor:pointer;font-size:.9em;transition:all .3s;display:flex;align-items:center;justify-content:center}.btn-robot{background:#3498db;color:#fff;padding:8px 10px}.btn-robot:hover:not(:disabled){background:#2980b9;transform:scale(1.05)}.btn-robot:disabled{background:#95a5a6;cursor:not-allowed;opacity:.7}.btn-edit{background:#f39c12;color:#fff}.btn-edit:hover{background:#e67e22;transform:scale(1.05)}.btn-delete{background:#e74c3c;color:#fff}.btn-delete:hover{background:#c0392b;transform:scale(1.05)}.btn-small{padding:8px 15px;font-size:.9em}.btn-success{background:#2ecc71;color:#fff}.btn-success:hover{background:#27ae60}.btn-secondary{background:#95a5a6;color:#fff}.btn-secondary:hover{background:#7f8c8d}.btn-warning{background:#ff9800;color:#fff}.btn-warning:hover{background:#f57c00}.btn-danger{background:#f44336;color:#fff}.btn-danger:hover{background:#d32f2f}.no-packages{color:#999;font-style:italic;padding:10px;text-align:center}.empty-state{text-align:center;padding:60px 20px;color:#999}.contact-manager{width:100%}.contacts-grid{display:grid;grid-template-columns:350px 1fr;gap:20px;min-height:600px}.contacts-list{background:#fff;border:1px solid #e0e0e0;border-radius:8px;overflow:hidden;display:flex;flex-direction:column}.contacts-list h3{padding:15px;border-bottom:1px solid #e0e0e0;color:#333;margin:0}.contacts-scroll{flex:1;overflow-y:auto}.contact-item{padding:15px;border-bottom:1px solid #f0f0f0;cursor:pointer;transition:background .3s;border-left:3px solid transparent}.contact-item:hover{background:#f5f5f5}.contact-item.active{background:#e8f4f8;border-left-color:#667eea}.contact-summary{margin-bottom:10px}.contact-phone{font-weight:700;color:#333;display:flex;align-items:center;gap:8px;margin-bottom:8px}.contact-meta{display:flex;gap:10px;font-size:.85em}.items-count{background:#667eea;color:#fff;padding:2px 8px;border-radius:3px}.status-badge{font-weight:500}.contact-date{font-size:.85em;color:#999;display:flex;align-items:center;gap:5px}.contact-detail{background:#fff;border:1px solid #e0e0e0;border-radius:8px;overflow:auto}.detail-box{padding:25px}.detail-box h3{margin-bottom:20px;color:#333;padding-bottom:15px;border-bottom:2px solid #e0e0e0}.detail-row{margin-bottom:20px}.detail-row strong{display:block;color:#667eea;margin-bottom:5px}.detail-row p{color:#666;margin:0;padding:10px;background:#f9f9f9;border-radius:5px;border-left:3px solid #667eea}.message-text{white-space:pre-wrap;word-wrap:break-word}.total-price{font-size:1.3em!important;font-weight:700!important;color:#2ecc71!important}.status-controls{margin:25px 0;padding-top:25px;border-top:2px solid #e0e0e0}.status-controls strong{display:block;color:#667eea;margin-bottom:10px}.status-buttons{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.status-btn{padding:10px;border:2px solid #ddd;background:#fff;border-radius:5px;cursor:pointer;font-weight:500;transition:all .3s}.status-btn:hover{border-color:#667eea}.status-btn.active{background:#667eea;color:#fff;border-color:#667eea}.search-container{margin-bottom:25px;animation:slideDown .4s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.search-input-wrapper{position:relative;display:flex;align-items:center}.search-input{width:100%;padding:12px 15px;border:2px solid #667eea;border-radius:8px;font-size:1em;transition:all .3s;background:#fff}.search-input:focus{outline:none;border-color:#764ba2;box-shadow:0 0 0 3px #667eea1a;transform:scale(1.02)}.search-input::-moz-placeholder{color:#999}.search-input::placeholder{color:#999}.no-services{text-align:center;padding:60px 40px;color:#999;animation:fadeIn .4s ease}.no-results-icon{font-size:3em;margin-bottom:15px;animation:bounce 1s ease infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.no-services p{font-size:1.2em;margin:10px 0}.search-hint{font-size:.95em;color:#bbb}.modal-contact{max-width:600px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.contact-content{flex:1;display:flex;flex-direction:column;overflow-y:auto;padding-right:10px}.contact-content::-webkit-scrollbar{width:6px}.contact-content::-webkit-scrollbar-track{background:#f1f1f1;border-radius:5px}.contact-content::-webkit-scrollbar-thumb{background:#667eea;border-radius:5px}.contact-content::-webkit-scrollbar-thumb:hover{background:#764ba2}.order-items-scroll{overflow-y:visible}.order-summary{background:#f9f9f9;padding:15px;border-radius:8px;margin-bottom:20px;border-left:4px solid #667eea;flex-shrink:0}.contact-form{margin-bottom:20px;padding:15px 0;border-bottom:1px solid #e0e0e0;flex-shrink:0}.contact-info{background:#e8f4f8;padding:15px;border-radius:8px;border-left:4px solid #3498db;flex-shrink:0}.contact-info h4{color:#333;margin:0 0 10px;font-size:1em}.zalo-number{font-size:1.3em;font-weight:700;color:#0084ff;margin:10px 0}.contact-info p{font-size:.95em;color:#555;line-height:1.5;margin:8px 0}.payment-methods{margin-top:15px;padding-top:15px;border-top:1px solid #b3d9e8}.payment-methods h4{margin:0 0 10px;color:#333}.payment-methods ul{list-style:none;padding-left:0;margin:0}.payment-methods li{padding:5px 0;color:#555;display:flex;align-items:center;gap:8px}.payment-methods li:before{content:"✓";color:#2ecc71;font-weight:700}.admin-search{margin-bottom:25px;padding-bottom:20px;border-bottom:2px solid #e0e0e0}.admin-search .search-input{width:100%;max-width:400px;padding:12px 15px;border:2px solid #667eea;border-radius:8px;font-size:1em;transition:all .3s}.admin-search .search-input:focus{outline:none;border-color:#764ba2;box-shadow:0 0 0 3px #667eea1a}.admin-search .search-input::-moz-placeholder{color:#bbb}.admin-search .search-input::placeholder{color:#bbb}.btn-admin{display:none}.header-right{display:flex;align-items:center;gap:15px}.cart-badge{position:relative;display:flex;align-items:center}.badge-count{display:inline-flex;align-items:center;justify-content:center;background:#ff4757;color:#fff;width:28px;height:28px;border-radius:50%;font-weight:700;font-size:.9em;animation:badgePop .3s ease}@keyframes badgePop{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.admin-nav{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}.nav-left{flex:1}.admin-nav .btn-back{background:#fff3;border:1px solid rgba(255,255,255,.5);color:#fff;padding:10px 15px;border-radius:5px;display:flex;align-items:center;gap:8px;cursor:pointer;transition:all .3s;margin-bottom:0}.admin-nav .btn-back:hover{background:#ffffff4d;transform:translate(-3px)}.service-card{animation:fadeInUp .5s ease}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.service-card:nth-child(1){animation-delay:.1s}.service-card:nth-child(2){animation-delay:.2s}.service-card:nth-child(3){animation-delay:.3s}.service-card:nth-child(4){animation-delay:.4s}.service-card:nth-child(5){animation-delay:.5s}.service-card:nth-child(6){animation-delay:.6s}.btn-primary{position:relative;overflow:hidden}.btn-primary:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn-primary:active:before{width:300px;height:300px}.app{animation:fadeIn .3s ease}@keyframes fadeInWithSlide{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}.services-section{animation:fadeInWithSlide .4s ease}.cart-section{animation:fadeInWithSlide .5s ease}.tab.active{box-shadow:0 4px 15px #667eea4d}.service-card h3{transition:color .3s ease}.service-card:hover h3{color:#667eea}@media (max-width: 768px){.header-right{gap:10px}.admin-nav{flex-direction:column;align-items:flex-start}.nav-left{width:100%}.search-input{font-size:16px}}.empty-detail{display:flex;align-items:center;justify-content:center;height:100%;color:#999;font-size:1.1em}@media (max-width: 1024px){.contacts-grid,.services-list,.form-box form,.status-buttons{grid-template-columns:1fr}}@media (max-width: 768px){.header{padding:20px 0}.header-content{display:flex;flex-direction:column;gap:15px}.btn-admin{width:100%}.admin-nav{flex-direction:column;gap:15px}.admin-nav h1{font-size:1.4em}.admin-tabs{flex-direction:column}.admin-content{padding:15px}.admin-filter-panel,.service-form-grid,.package-form-grid{grid-template-columns:1fr}.manager-header,.section-row,.package-edit-actions{align-items:stretch;flex-direction:column}.calculated-price{margin-right:0}}body{background:#f4f7fb}.header{background:#111827;padding:18px 0}.header h1{font-size:1.7em;letter-spacing:0}.main-content{padding:28px 0}.services-section{border-radius:8px;border:1px solid #e5e7eb;box-shadow:0 12px 30px #0f172a0f}.services-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px}.service-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:18px;display:flex;flex-direction:column;min-height:340px}.service-card.clickable{cursor:pointer}.service-card:hover{border-color:#2563eb;box-shadow:0 14px 32px #2563eb1f;transform:translateY(-2px)}.service-card.clickable:focus-visible{outline:3px solid rgba(37,99,235,.18);outline-offset:2px;border-color:#2563eb}.service-card-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.service-card h3{line-height:1.25;margin:8px 0 6px}.service-card .category{background:#eef2ff;color:#3730a3;border-radius:999px;padding:4px 10px;white-space:nowrap}.service-card .description{min-height:42px;line-height:1.5}.packages-preview{border:1px solid #edf0f5;border-radius:8px;padding:12px;margin:14px 0 18px}.packages-preview li{color:#1f2937}.package-preview-item small{color:#64748b}.package-preview-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;line-height:1.45}.app-price-inline-meta{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px;min-width:0}.service-card .btn-primary{margin-top:auto;justify-content:center}.detail-header{display:grid;grid-template-columns:auto 1fr;-moz-column-gap:18px;column-gap:18px;align-items:center;border-bottom:1px solid #e5e7eb;padding-bottom:22px}.detail-header h1,.detail-description{grid-column:2}.detail-icon{grid-row:1 / span 2;width:86px;height:86px;display:flex;align-items:center;justify-content:center;background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px}.detail-icon img{width:74px;height:74px}.packages-list{margin-top:26px}.packages-list h2{color:#0f172a;font-size:1.45rem;margin-bottom:18px}.package-toolbar{display:grid;gap:14px;margin:0 12px 18px}.package-filter-tabs{display:flex;flex-wrap:wrap;gap:10px}.package-filter-tabs button{border:1px solid #cbd5e1;border-radius:999px;background:#fff;color:#475569;cursor:pointer;font:inherit;font-weight:700;padding:9px 14px;transition:all .2s ease}.package-filter-tabs button:hover{border-color:#93c5fd;color:#1d4ed8}.package-filter-tabs button.active{background:#1d4ed8;border-color:#1d4ed8;color:#fff;box-shadow:0 10px 22px #1d4ed838}.package-search-input{width:100%;border:1px solid #cbd5e1;border-radius:10px;background:#fff;color:#0f172a;font:inherit;padding:12px 14px}.package-search-input:focus{border-color:#60a5fa;box-shadow:0 0 0 4px #60a5fa2e;outline:none}.packages-empty-state{position:relative;overflow:hidden;display:grid;gap:10px;padding:28px 24px;border:1px solid #dbe3ef;border-radius:12px;background:radial-gradient(circle at top right,rgba(59,130,246,.16),transparent 32%),linear-gradient(180deg,#fff,#f8fbff);box-shadow:0 14px 34px #0f172a0f}.packages-empty-state:after{content:"";position:absolute;inset:auto -20px -20px auto;width:140px;height:140px;border-radius:50%;background:#2563eb14;filter:blur(2px)}.packages-empty-state>*{position:relative;z-index:1}.packages-empty-kicker{width:-moz-fit-content;width:fit-content;padding:6px 10px;border-radius:999px;background:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8;font-size:.78rem;font-weight:800;letter-spacing:.02em;text-transform:uppercase}.packages-empty-state h3{color:#0f172a;font-size:1.18rem;margin:0}.packages-empty-state p{color:#64748b;line-height:1.6;margin:0;max-width:560px}.packages-empty-state-compact{margin:0 12px;padding:22px 20px}.package-item{background:#fff;border:1px solid #dbe3ef;border-radius:8px;box-shadow:0 10px 24px #0f172a0d;position:relative}.package-item:hover{box-shadow:0 14px 28px #2563eb1f;transform:translateY(-2px)}.package-icon{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:1.35em;height:1.35em;font-size:1.05rem;line-height:1}.package-icon img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.package-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0;align-items:start}.package-meta-grid>span{background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;color:#64748b;display:flex;flex-direction:column;gap:4px;padding:10px;font-size:.9em;min-width:0}.package-meta-grid b{color:#111827;font-size:1.05em;display:block;line-height:1.45;white-space:normal;overflow-wrap:anywhere;word-break:break-word}.package-meta-grid .remaining-meta{flex-direction:row;align-items:baseline;justify-content:center;gap:5px;min-height:44px;white-space:nowrap}.package-meta-grid .remaining-meta span{white-space:nowrap}.package-meta-grid .remaining-meta b{display:inline;white-space:nowrap;overflow-wrap:normal;word-break:normal}.package-meta-grid .app-price-meta{grid-column:1 / -1;position:relative;overflow:hidden;gap:6px;min-height:82px;padding:14px 16px 12px;background:linear-gradient(180deg,#f8fbff,#eef6ff);border-color:#bfdbfe;box-shadow:inset 0 1px #ffffffd1}.app-price-meta-label{color:#475569;font-size:.82rem;font-weight:700;padding-right:128px}.app-price-value{color:#0f172a!important;font-size:1.12rem!important;font-weight:800;max-width:100%;padding-right:4px}.app-price-corner-badge{position:absolute;top:10px;right:10px;display:inline-flex;align-items:center;justify-content:center;width:-moz-fit-content;width:fit-content;max-width:calc(100% - 20px);min-height:28px;padding:5px 11px;border-radius:999px;background:linear-gradient(180deg,#fb923c,#f97316);border:1px solid #ea580c;color:#fff;box-shadow:0 8px 18px #f973163d,inset 0 1px #ffffff47;font-size:.8rem;font-weight:800;line-height:1.2;text-shadow:0 1px 0 rgba(124,45,18,.18);white-space:nowrap}.app-price-corner-badge.compact{position:static;min-height:22px;padding:3px 8px;font-size:.76rem;box-shadow:none}.remaining-number{color:#dc2626!important;font-size:1.4em!important}.duration{display:inline-flex;align-items:center;width:-moz-fit-content;width:fit-content;max-width:100%;background:linear-gradient(135deg,#eef2ff,#ecfeff);border:1px solid #c7d2fe;color:#3730a3;overflow-wrap:anywhere}.social-package-panel{display:grid;gap:12px;margin:14px 0}.social-live-total{display:grid;gap:4px;padding:14px 16px;border:1px solid #bfdbfe;border-radius:10px;background:linear-gradient(180deg,#eff6ff,#dbeafe);box-shadow:inset 0 1px #ffffffbf}.social-live-total-label{color:#1d4ed8;font-size:.8rem;font-weight:800;text-transform:uppercase}.social-live-total strong{color:#0f172a;font-size:1.35rem;line-height:1.2}.social-live-total small{color:#475569;font-size:.86rem;font-weight:700}.social-package-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.social-package-meta span,.warranty-meta,.social-quantity-box{background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;color:#64748b;padding:11px 12px}.social-package-meta span{display:flex;flex-direction:column;gap:4px}.social-package-meta b{color:#0f172a;font-size:1.1rem}.warranty-meta{display:flex;flex-direction:column;gap:4px}.warranty-meta.has-warranty{background:#ecfdf5;border-color:#86efac;color:#166534}.warranty-meta strong{color:inherit}.social-quantity-box{display:grid;grid-template-columns:1fr 150px;align-items:center;gap:10px;font-weight:700}.social-quantity-box input{border:1px solid #cbd5e1;border-radius:8px;color:#0f172a;font:inherit;font-weight:800;padding:10px 12px;width:100%}.package-item-child{border-left:5px solid #22c55e;transform:translate(calc(min(var(--package-level, 0),3)*12px))}.package-item-child:hover{transform:translate(calc(min(var(--package-level, 0),3)*12px)) translateY(-2px)}.package-parent-label,.package-child-hint{display:inline-flex;align-items:center;width:-moz-fit-content;width:fit-content;border-radius:999px;font-size:.8rem;font-weight:800}.package-parent-label{background:#dcfce7;color:#166534;margin-bottom:10px;padding:5px 10px}.package-parent-label:before{content:"Thuộc ";font-weight:600;margin-right:3px}.package-child-hint{background:#eff6ff;color:#1d4ed8;margin:6px 0 14px;padding:6px 10px}.admin-dashboard{background:#f4f7fb}.admin-nav{background:#111827;padding:16px 22px}.admin-container{max-width:1500px}.admin-content{border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 12px 30px #0f172a0f}.admin-tabs{border-bottom:none}.tab{border:1px solid #e5e7eb;border-radius:8px}.tab.active{background:#111827;border-color:#111827;color:#fff;box-shadow:none}.admin-modern .manager-header{border-bottom:1px solid #e5e7eb}.api-rotation-note{display:flex;align-items:center;gap:10px;margin:16px 0;padding:12px 14px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff;color:#1e40af;font-weight:600}.api-key-form{margin-bottom:18px}.api-key-list{display:grid;gap:12px}.service-filter-form{margin-bottom:14px}.service-filter-list{display:grid;gap:10px;margin-bottom:16px}.service-filter-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid #dbe3ef;border-radius:10px;background:#fff}.service-filter-card.editing{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) auto}.service-filter-card input{border:1px solid #d1d5db;border-radius:8px;font:inherit;min-width:0;padding:10px 12px}.service-filter-main{display:grid;gap:4px;min-width:0}.service-filter-main strong,.service-filter-main small{overflow-wrap:anywhere}.service-filter-main small{color:#64748b}.service-filter-actions{display:flex;align-items:center;gap:8px}.api-key-card{display:grid;grid-template-columns:minmax(260px,1fr) minmax(220px,1.2fr) auto;gap:14px;align-items:center;border:1px solid #e5e7eb;border-radius:8px;padding:14px;background:#fff}.api-key-main{display:flex;align-items:center;gap:12px;min-width:0}.api-key-icon{width:42px;height:42px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:#f8fafc;border:1px solid #e5e7eb;color:#2563eb}.api-key-main strong,.api-key-main code{display:block}.api-key-main code{margin-top:4px;color:#64748b;font-family:Consolas,Courier New,monospace;overflow-wrap:anywhere}.api-key-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;color:#64748b}.api-key-meta small{flex-basis:100%;color:#b45309;line-height:1.4}.api-status{border-radius:999px;border:1px solid #e5e7eb;background:#f8fafc;color:#475569;padding:4px 9px;font-size:.85em;font-weight:700}.api-status.active,.api-status.ok{background:#dcfce7;border-color:#86efac;color:#166534}.api-status.inactive{background:#f1f5f9;color:#64748b}.api-status.rate_limited{background:#fef3c7;border-color:#fcd34d;color:#92400e}.api-status.error{background:#fee2e2;border-color:#fecaca;color:#991b1b}.api-key-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.api-key-edit{grid-column:1 / -1;display:grid;grid-template-columns:1fr 1.3fr 160px;gap:12px;align-items:center}.api-key-edit input,.api-key-edit select{border:1px solid #d1d5db;border-radius:8px;padding:11px 12px;font:inherit;min-width:0}.admin-eyebrow{color:#2563eb;font-weight:700;margin:0 0 4px;text-transform:uppercase;font-size:.78em}.admin-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:20px}.admin-search-box{flex:1;display:flex;align-items:center;gap:10px;border:1px solid #dbe3ef;border-radius:8px;padding:0 12px;background:#fff}.admin-search-box svg{color:#64748b}.admin-search-box input{width:100%;border:none;outline:none;padding:13px 0;font-size:1em}.admin-count{color:#475569;font-weight:700;white-space:nowrap}.admin-panel-form{background:#f8fafc;border:1px solid #dbe3ef;border-radius:8px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:20px;padding:16px}.admin-panel-form.compact{margin-bottom:18px}.admin-panel-form input,.admin-panel-form select,.admin-panel-form textarea,.admin-package-form input,.admin-package-form select,.admin-package-form textarea{border:1px solid #d1d5db;border-radius:8px;padding:11px 12px;font:inherit;min-width:0}.admin-package-form input[readonly]{background:#f8fafc}.admin-panel-form textarea{grid-column:1 / -1;min-height:78px;resize:vertical}.admin-form-actions{display:flex;gap:10px;grid-column:1 / -1}.admin-service-list{grid-template-columns:1fr}.admin-service-card{border-color:#e5e7eb;cursor:grab;transition:box-shadow .2s ease,transform .2s ease,border-color .2s ease,background .2s ease}.admin-service-card.drag-source{background:#f8fbff;outline:1px dashed #93c5fd;opacity:.76}.admin-service-card.drop-target{background:#eff6ff;box-shadow:inset 0 0 0 2px #60a5fa}.admin-service-head{background:#fff;color:#111827;padding:14px;gap:12px}.admin-service-main{flex:1;display:flex;align-items:center;gap:14px;background:transparent;border:none;color:inherit;cursor:pointer;min-width:0;text-align:left}.admin-service-main strong{display:block;font-size:1.05em}.admin-service-main small{color:#64748b;display:block;margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-service-logo{width:54px;height:54px;flex:0 0 54px;display:flex;align-items:center;justify-content:center;background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;color:#94a3b8;font-size:1.5em;overflow:hidden}.admin-service-logo img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;display:block}.admin-head-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.service-drag-handle{width:36px;height:36px;border:1px solid #dbe3ef;background:#fff;color:#64748b;border-radius:8px;cursor:grab;display:inline-flex;align-items:center;justify-content:center;transition:all .2s ease}.service-drag-handle:hover{border-color:#2563eb;color:#2563eb;background:#eff6ff}.admin-service-head .category-badge{background:#eef2ff;color:#3730a3;border-radius:999px}.status-on,.status-off{border-radius:999px;font-size:.85em;font-weight:700;padding:4px 10px}.status-on{background:#dcfce7;color:#166534}.status-off{background:#fee2e2;color:#991b1b}.icon-action{width:36px;height:36px;border:1px solid #dbe3ef;background:#fff;color:#334155;border-radius:8px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .2s ease}.icon-action:hover{border-color:#2563eb;color:#2563eb;background:#eff6ff}.icon-action.ai{color:#7c3aed}.icon-action.ai:hover{border-color:#7c3aed;background:#f5f3ff}.icon-action:disabled{cursor:not-allowed;opacity:.72}.icon-action.ai.loading{border-color:#7c3aed;background:#f5f3ff;color:#7c3aed}.icon-action.ai.loading svg{animation:aiSpin .9s linear infinite}@keyframes aiSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.icon-action.danger{color:#dc2626}.icon-action.danger:hover{background:#fef2f2;border-color:#dc2626}.admin-service-body{background:#f8fafc;padding:16px}.section-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.section-row h4{display:flex;align-items:center;gap:8px;margin:0}.admin-package-list{border-radius:8px;overflow:hidden}.admin-package-tree-item{--package-indent: calc(min(var(--package-level, 0), 5)*22px) ;margin-left:var(--package-indent);position:relative}.admin-package-tree-item:before{content:"";position:absolute;left:-12px;top:0;bottom:0;width:2px;background:#dbeafe;display:none}.admin-package-tree-item.package-has-parent:before{display:block}.admin-package-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:14px;border-bottom:1px solid #edf0f5;cursor:grab;background:#fff}.admin-package-row.drag-source{background:#f8fbff;outline:1px dashed #93c5fd;opacity:.72}.admin-package-row.drop-target{background:#eff6ff;box-shadow:inset 0 0 0 2px #60a5fa}.admin-package-row:last-child{border-bottom:none}.package-drag-handle{width:38px;height:38px;flex:0 0 38px;border:1px solid #dbe3ef;border-radius:8px;background:#fff;color:#64748b;cursor:grab;display:inline-flex;align-items:center;justify-content:center;transition:all .2s ease}.package-drag-handle:hover{border-color:#2563eb;color:#2563eb;background:#eff6ff}.package-drag-handle:active{cursor:grabbing}.admin-package-info{flex:1;min-width:0}.admin-package-info p{color:#64748b;margin:6px 0}.admin-package-title-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.package-child-count{border:1px solid #bbf7d0;border-radius:999px;background:#f0fdf4;color:#15803d;font-size:.78rem;font-weight:800;padding:3px 8px}.admin-source-package-name{display:inline-flex;align-items:center;width:-moz-fit-content;width:fit-content;max-width:100%;margin:7px 0 0;padding:6px 9px;border:1px solid #c7d2fe;border-radius:10px;color:#4338ca;background:#eef2ff;font-size:.86rem;font-weight:800;line-height:1.35}.admin-package-children{margin-top:8px}.admin-price-line{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.admin-price-line span{background:#f8fafc;border:1px solid #e5e7eb;border-radius:999px;color:#334155;padding:6px 10px;font-size:.9em}.remaining-pill{background:#fff7ed!important;border-color:#fed7aa!important;color:#c2410c!important;font-weight:800}.package-editor-box{background:#fff;border:1px solid #dbe3ef;border-radius:8px;margin-bottom:12px;padding:14px}.package-editor-box.full{flex:1}.package-child-editor{margin:8px 0 12px calc(var(--package-indent, 0px) + 44px);border-color:#bbf7d0;background:#fbfffd}.package-child-editor-title{color:#166534;font-weight:800;margin-bottom:12px}.admin-package-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:12px}.computed-price-card{display:flex;flex-direction:column;justify-content:center;gap:6px;border:1px solid #dbe3ef;border-radius:10px;padding:10px 12px;background:linear-gradient(180deg,#f8fbff,#eef4ff)}.computed-price-card small{color:#64748b;font-weight:600}.computed-price-card strong{color:#1d4ed8;font-size:1.05rem}.source-price-hint{grid-column:1 / -1;display:inline-flex;align-items:center;width:-moz-fit-content;width:fit-content;max-width:100%;margin-top:-4px;padding:7px 10px;border:1px solid #bfdbfe;border-radius:10px;color:#1d4ed8;background:#eff6ff;font-size:.82rem;font-weight:800;line-height:1.35}.admin-package-form textarea{grid-column:span 2;min-height:78px;resize:vertical}.ai-price-field{display:flex;gap:8px}.ai-price-field.wide{grid-column:span 2}.ai-price-field input{flex:1}.ai-detecting-note{grid-column:1 / -1;margin-top:-4px;color:#7c3aed;font-size:.9em;font-weight:600}.package-actions{align-items:center}.toast-confirm-card{min-width:320px;max-width:420px;border:1px solid #dbe3ef;border-radius:12px;background:#fff;box-shadow:0 18px 40px #0f172a29;padding:16px}.toast-confirm-card p{color:#0f172a;line-height:1.5;margin:0 0 14px}.toast-confirm-actions{display:flex;justify-content:flex-end;gap:10px}@media (max-width: 900px){.admin-panel-form,.admin-package-form,.package-meta-grid,.api-key-card,.api-key-edit{grid-template-columns:1fr}.admin-package-form textarea{grid-column:1}.social-package-meta,.social-quantity-box{grid-template-columns:1fr}.package-toolbar{margin-inline:0}.packages-empty-state-compact{margin:0}.service-filter-card,.service-filter-card.editing{grid-template-columns:1fr;justify-content:stretch}.admin-toolbar,.admin-service-head,.admin-package-row{align-items:stretch;flex-direction:column}.admin-head-actions,.package-actions,.api-key-actions{justify-content:flex-start}.detail-header{grid-template-columns:1fr}.detail-header h1,.detail-description{grid-column:1}.detail-icon{grid-row:auto}}:root{--dl-ink: #0f172a;--dl-muted: #64748b;--dl-line: #dbe4f0;--dl-surface: #ffffff;--dl-soft: #f4f8fb;--dl-blue: #2563eb;--dl-cyan: #0891b2;--dl-orange: #f97316;--dl-green: #16a34a}body{background:linear-gradient(180deg,#eef7f7 0,#f8fafc 260px,#f3f6fb);color:var(--dl-ink)}.header{position:sticky;top:0;z-index:80;background:#0f172af0;border-bottom:1px solid rgba(255,255,255,.08);padding:12px 0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.header-content{max-width:1240px}.brand-lockup{display:inline-flex;align-items:center;gap:12px;min-width:0}.brand-mark{width:48px;height:48px;flex:0 0 48px;filter:drop-shadow(0 12px 22px rgba(8,145,178,.22))}.brand-copy{display:grid;gap:2px;min-width:0}.brand-copy strong{color:#fff;font-size:1.34rem;font-weight:900;line-height:1}.brand-copy small{color:#cbd5e1;font-size:.84rem;font-weight:650;line-height:1.25}.btn-cart-icon{min-height:44px;gap:8px;border:1px solid rgba(148,163,184,.45);background:#ffffff17;border-radius:999px;padding:10px 16px}.cart-button-label{font-size:.9rem;font-weight:800}.cart-count{background:var(--dl-orange);box-shadow:0 8px 18px #f9731652}.container,.header-content{max-width:1240px}.main-content{padding:22px 0 42px}.services-section{background:transparent;border:0;box-shadow:none;padding:0}.storefront-hero{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px;align-items:stretch;margin-bottom:18px}.hero-copy,.hero-stats-panel,.storefront-toolbar,.service-card,.package-item,.detail-header,.packages-empty-state{border:1px solid rgba(203,213,225,.92);background:#ffffffe6;box-shadow:0 18px 45px #0f172a14}.hero-copy{display:grid;gap:14px;border-radius:18px;padding:28px;background:linear-gradient(135deg,#0f172afa,#115e59eb),#0f172a;color:#fff;overflow:hidden}.hero-brand-chip{display:inline-flex;align-items:center;gap:10px;width:-moz-fit-content;width:fit-content}.hero-brand-icon{width:42px;height:42px;flex:0 0 42px;border:1px solid rgba(255,255,255,.14);border-radius:14px;box-shadow:0 12px 24px #22d3ee2e}.hero-kicker,.section-eyebrow{color:var(--dl-cyan);font-size:.78rem;font-weight:900;letter-spacing:0;text-transform:uppercase}.hero-copy h1{max-width:720px;color:#fff;font-size:clamp(2rem,5vw,4.15rem);line-height:1;margin:0}.hero-copy p{max-width:650px;color:#dbeafe;font-size:1.02rem;line-height:1.65;margin:0}.hero-trust-row{display:flex;flex-wrap:wrap;gap:10px}.hero-trust-row span{display:inline-flex;align-items:center;gap:7px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:#ffffff1a;color:#eff6ff;font-weight:800;padding:8px 11px}.hero-trust-row svg{color:#67e8f9}.hero-stats-panel{display:grid;border-radius:18px;overflow:hidden}.hero-stats-panel div{display:grid;align-content:center;gap:6px;min-height:104px;padding:18px 22px;border-bottom:1px solid var(--dl-line)}.hero-stats-panel div:last-child{border-bottom:0}.hero-stats-panel strong{color:var(--dl-ink);font-size:2rem;line-height:1}.hero-stats-panel span{color:var(--dl-muted);font-weight:800}.storefront-toolbar{position:sticky;top:76px;z-index:60;display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,380px);gap:14px;align-items:center;border-radius:16px;margin-bottom:18px;padding:12px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.filter-tabs{margin:0;gap:8px}.filter-tabs button{min-height:42px;border-color:#cbd5e1;background:#fff;color:#334155;padding:9px 14px}.filter-tabs button.active{background:var(--dl-ink);border-color:var(--dl-ink);color:#fff;box-shadow:0 10px 20px #0f172a29}.search-container{margin:0}.search-input-wrapper{position:relative}.search-leading-icon{position:absolute;left:14px;top:50%;color:#64748b;transform:translateY(-50%)}.search-input{min-height:44px;border:1px solid #cbd5e1;border-radius:999px;background:#fff;color:var(--dl-ink);font-weight:650;padding:11px 14px 11px 40px;width:100%}.search-input:focus{border-color:var(--dl-cyan);box-shadow:0 0 0 4px #0891b229;outline:none}.section-title-row{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:22px 2px 14px}.section-title-row h2{color:var(--dl-ink);font-size:1.7rem;margin:4px 0 0}.section-title-row small{color:var(--dl-muted);font-weight:800;white-space:nowrap}.services-grid{grid-template-columns:repeat(auto-fill,minmax(285px,1fr));gap:16px}.service-card{min-height:0;border-radius:16px;padding:16px;overflow:hidden}.service-card:hover{border-color:#0891b28c;box-shadow:0 20px 42px #0891b221}.service-card-topline{display:grid;grid-template-columns:58px minmax(0,1fr);gap:12px;align-items:center}.service-icon{width:58px;height:58px;border:1px solid #e2e8f0;border-radius:14px;background:linear-gradient(180deg,#fff,#f1f5f9);color:var(--dl-cyan);font-size:2rem;margin:0}.service-card-title{display:grid;gap:6px}.service-card h3{color:var(--dl-ink);font-size:1.08rem;margin:0}.service-card:hover h3{color:var(--dl-cyan)}.service-card .category{width:-moz-fit-content;width:fit-content;margin:0;background:#ecfeff;border:1px solid #a5f3fc;color:#0e7490;font-size:.76rem;font-weight:900}.service-card .description{min-height:0;color:#475569;font-size:.92rem;line-height:1.5;margin:12px 0}.service-card-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px}.service-card-metrics span{display:flex;align-items:baseline;justify-content:space-between;gap:8px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;color:#64748b;font-size:.82rem;font-weight:800;padding:9px 10px}.service-card-metrics b{color:var(--dl-ink);font-size:1rem}.packages-preview{flex:1;border-radius:14px;background:#fbfdff;padding:12px}.packages-preview strong{color:var(--dl-ink)}.packages-preview ul{padding:0}.package-preview-item{border-top:1px solid #edf2f7;padding-top:8px}.service-card .btn-primary,.package-item .btn-primary{border-radius:12px;background:linear-gradient(135deg,var(--dl-cyan),var(--dl-blue));font-weight:900}.service-detail{animation:none;padding-top:8px}.btn-back{border:1px solid #cbd5e1;border-radius:999px;background:#fff;color:var(--dl-ink);box-shadow:0 10px 22px #0f172a0f}.btn-back:hover{background:var(--dl-ink);border-color:var(--dl-ink);color:#fff;transform:translate(-2px)}.detail-header{grid-template-columns:88px minmax(0,1fr);border-radius:18px;padding:18px}.detail-icon{width:72px;height:72px;border-radius:16px;margin:0;background:linear-gradient(180deg,#fff,#eff6ff)}.detail-header h1{color:var(--dl-ink);font-size:clamp(1.8rem,4vw,2.65rem);margin:0}.detail-description{color:#475569;line-height:1.6;margin:6px 0 0}.detail-quick-meta{grid-column:2;display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.detail-quick-meta span{border:1px solid #dbeafe;border-radius:999px;background:#eff6ff;color:#1d4ed8;font-size:.8rem;font-weight:850;padding:6px 10px}.packages-list{margin-top:18px}.packages-heading{display:grid;gap:5px;margin:0 0 16px;padding:18px 20px;border:1px solid rgba(219,228,240,.86);border-radius:18px;background:radial-gradient(circle at 8% 0%,rgba(34,211,238,.12),transparent 28%),linear-gradient(135deg,#fff,#f8fafc);box-shadow:0 12px 28px #0f172a0d}.packages-heading h2{color:var(--dl-ink);font-size:1.55rem;margin:0}.packages-heading p{color:var(--dl-muted);margin:0;max-width:680px;line-height:1.55}.package-toolbar{position:sticky;top:76px;z-index:50;border:1px solid rgba(203,213,225,.9);border-radius:16px;background:#ffffffeb;box-shadow:0 14px 32px #0f172a14;margin:0 0 16px;padding:12px;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.package-filter-tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.package-filter-tabs::-webkit-scrollbar{display:none}.package-filter-tabs button{flex:0 0 auto;min-height:40px;border-radius:999px;padding:8px 13px}.package-filter-tabs button.active{background:var(--dl-ink);border-color:var(--dl-ink);box-shadow:0 10px 20px #0f172a29}.package-search-input{border-radius:999px}.packages-grid{grid-template-columns:repeat(auto-fill,minmax(265px,1fr));gap:14px;margin:0;padding:0 12px 12px}.package-item{border-radius:16px;padding:15px}.package-item:hover{border-color:#2563eb73}.package-header{gap:8px;margin-bottom:10px;padding-bottom:10px;border-bottom-color:#e2e8f0}.package-header h3{flex:1;color:var(--dl-ink);font-size:1.02rem;line-height:1.25;min-width:0}.price{color:var(--dl-cyan);font-size:1.18rem;line-height:1.15;text-align:right;white-space:nowrap}.package-description{color:#475569;font-size:.9rem}.package-note{display:grid;gap:6px;margin:9px 0 10px;padding:10px 11px;border:1px solid rgba(14,165,233,.18);border-radius:13px;background:linear-gradient(135deg,#f8fafc,#eef6ff)}.package-note span{display:inline-flex;align-items:center;gap:6px;color:#2563eb;font-size:.76rem;font-weight:950;text-transform:uppercase}.package-note p{margin:0;color:#475569;font-size:.88rem;font-weight:650;line-height:1.45;white-space:pre-line}.package-meta-grid .app-price-meta{background:linear-gradient(135deg,#fff7ed,#ecfeff);border-color:#fed7aa}.app-price-corner-badge{background:linear-gradient(135deg,var(--dl-orange),#ef4444);border:0}.remaining-number{color:var(--dl-orange)!important}.social-live-total{border-color:#a5f3fc;background:linear-gradient(135deg,#ecfeff,#eff6ff)}.social-live-total-label{color:#0e7490}.warranty-meta.has-warranty{background:#f0fdf4;border-color:#bbf7d0}.modal-overlay{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.cart-modal{border:1px solid #e2e8f0;border-radius:18px}.cart-modal-summary{background:#ecfeff;border-left-color:var(--dl-cyan)}@media (max-width: 980px){.storefront-hero{grid-template-columns:1fr}.hero-stats-panel{grid-template-columns:repeat(3,minmax(0,1fr))}.hero-stats-panel div{min-height:92px;border-right:1px solid var(--dl-line);border-bottom:0}.hero-stats-panel div:last-child{border-right:0}.storefront-toolbar{grid-template-columns:1fr}}@media (max-width: 720px){.container{padding:0 10px}.header{padding:9px 0}.header-content{flex-direction:row;padding:0 10px}.brand-mark{width:42px;height:42px;flex-basis:42px}.brand-copy strong{font-size:1.12rem}.brand-copy small{max-width:170px;font-size:.72rem}.cart-button-label{display:none}.btn-cart-icon{width:44px;height:44px;padding:0}.main-content{padding-top:12px}.storefront-hero{gap:10px;margin-bottom:12px}.hero-copy{border-radius:16px;padding:18px}.hero-brand-chip{gap:8px}.hero-brand-icon{width:36px;height:36px;flex-basis:36px;border-radius:12px}.hero-copy h1{font-size:2.05rem}.hero-copy p{font-size:.94rem}.hero-trust-row{gap:7px}.hero-trust-row span{padding:7px 9px;font-size:.78rem}.hero-stats-panel{border-radius:14px}.hero-stats-panel div{min-height:72px;padding:12px 10px}.hero-stats-panel strong{font-size:1.35rem}.hero-stats-panel span{font-size:.74rem}.storefront-toolbar,.package-toolbar{top:62px;border-radius:14px;padding:9px}.filter-tabs,.package-filter-tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.filter-tabs::-webkit-scrollbar{display:none}.filter-tabs button,.package-filter-tabs button{flex:0 0 auto;min-height:38px;padding:8px 11px;font-size:.86rem}.search-input,.package-search-input{min-height:40px;font-size:16px}.section-title-row{align-items:flex-start;margin-top:16px}.section-title-row small{display:none}.services-grid{grid-template-columns:1fr;gap:12px}.service-card{border-radius:14px;padding:13px}.service-card .description{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical}.packages-preview,.btn-back{margin-bottom:12px}.detail-header{grid-template-columns:58px minmax(0,1fr);border-radius:16px;padding:14px}.detail-icon{width:54px;height:54px;border-radius:14px;font-size:2rem}.detail-icon img{width:46px;height:46px}.detail-header h1,.detail-description,.detail-quick-meta{grid-column:2}.detail-header h1{font-size:1.38rem}.detail-description{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.88rem}.detail-quick-meta{display:none}.packages-heading{margin-bottom:11px;padding:13px 14px;border-radius:15px}.packages-heading h2{font-size:1.26rem}.packages-heading p{font-size:.88rem}.packages-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:0 6px 10px}.package-item{border-radius:14px;padding:10px}.package-item:hover,.package-item-child,.package-item-child:hover{transform:none}.package-header{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:7px;margin-bottom:8px;padding-bottom:8px}.package-icon{grid-row:auto;margin-right:0!important}.package-header:has(.package-icon){grid-template-columns:auto minmax(0,1fr)}.package-header h3{font-size:.9rem}.price{grid-column:1 / -1;text-align:left;font-size:1.02rem;white-space:normal}.price small{display:inline;margin-left:4px}.package-child-hint{display:none}.duration{display:inline-flex;width:100%;margin:7px 0 8px;padding:8px 9px;border-radius:11px;font-size:.76rem;font-weight:900;line-height:1.35}.package-note{gap:4px;margin:7px 0 8px;padding:8px 9px;border-radius:11px}.package-note span{font-size:.68rem}.package-note p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3;font-size:.76rem;line-height:1.35}.package-meta-grid{gap:7px;margin:8px 0}.package-meta-grid>span{border-radius:10px;font-size:.76rem;padding:8px}.package-meta-grid .app-price-meta{min-height:0;padding:28px 8px 8px}.app-price-meta-label{padding-right:0;font-size:.72rem}.app-price-value{font-size:.9rem!important}.app-price-corner-badge{left:8px;right:auto;top:7px;min-height:20px;padding:3px 7px;font-size:.66rem}.remaining-number{font-size:1.05em!important}.package-meta-grid .remaining-meta{min-height:36px;padding:8px 6px;gap:4px}.social-package-panel{gap:8px;margin:8px 0}.social-live-total,.social-package-meta span,.warranty-meta,.social-quantity-box{border-radius:10px;padding:8px}.social-live-total-label{font-size:.66rem}.social-live-total strong{font-size:1rem}.social-live-total small,.warranty-meta span{font-size:.72rem}.social-package-meta{gap:7px}.social-package-meta span{font-size:.72rem}.social-package-meta b{font-size:.9rem}.social-quantity-box{grid-template-columns:1fr;gap:6px;font-size:.78rem}.social-quantity-box input{padding:8px}.package-item .btn-primary{min-height:38px;border-radius:10px;font-size:.78rem;padding:8px}.cart-modal{width:100%;max-width:none;height:auto;max-height:88vh;margin:auto 0 0;border-radius:18px 18px 0 0;padding:18px}}@media (max-width: 390px){.packages-grid{gap:7px;padding:0 4px 8px}.package-item{padding:8px}.package-header h3{font-size:.84rem}.price{font-size:.94rem}}.admin-dashboard{background:linear-gradient(180deg,#eef6f7 0,#f6f8fb 260px,#eef2f7)}.admin-login-page{background:radial-gradient(circle at 20% 10%,rgba(34,211,238,.2),transparent 28%),linear-gradient(135deg,#0f172a,#134e4a 52%,#0f172a)}.admin-nav{background:#0f172af5;border-bottom:1px solid rgba(255,255,255,.08);position:sticky;top:0;z-index:90}.admin-nav-kicker{color:#67e8f9;font-size:.74rem;font-weight:900;letter-spacing:0;margin:0 0 3px;text-transform:uppercase}.admin-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:4px 0 18px}.admin-stat-card{display:grid;gap:7px;min-height:118px;border:1px solid #dbe4f0;border-radius:14px;background:#ffffffeb;box-shadow:0 16px 34px #0f172a12;padding:15px}.admin-stat-card svg{color:#0891b2;font-size:1.25rem}.admin-stat-card span{color:#64748b;font-size:.84rem;font-weight:800}.admin-stat-card strong{color:#0f172a;font-size:1.45rem;line-height:1}.admin-stat-card small{color:#64748b;line-height:1.45}.admin-session-card{background:linear-gradient(135deg,#ecfefff5,#fff7edf5)}.admin-tabs{display:flex;gap:10px;overflow-x:auto;padding-bottom:6px;scrollbar-width:none}.admin-tabs::-webkit-scrollbar{display:none}.admin-tabs .tab{flex:0 0 auto;border-radius:999px;font-weight:850}.admin-content{border-radius:16px}.login-brand-icon{width:58px;height:58px;margin:0 auto 14px;border:1px solid #a5f3fc;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,#ecfeff,#eff6ff);color:#0891b2;font-size:1.5rem}.login-session-note{border:1px solid #dbeafe;border-radius:12px;background:#eff6ff;color:#1e40af;font-size:.9rem;font-weight:700;line-height:1.5;padding:12px 14px}.admin-package-form{align-items:stretch}.admin-panel-form input,.admin-panel-form select,.admin-panel-form textarea,.admin-package-form input,.admin-package-form select,.admin-package-form textarea{width:100%;min-height:46px;background:#fff}.admin-panel-form input:focus,.admin-panel-form select:focus,.admin-panel-form textarea:focus,.admin-package-form input:focus,.admin-package-form select:focus,.admin-package-form textarea:focus{border-color:#0891b2;box-shadow:0 0 0 4px #0891b224;outline:none}.package-editor-box{border-radius:14px}.admin-package-row{border-radius:12px;margin-bottom:8px;border:1px solid #edf2f7}.admin-package-list{overflow:visible}@media (max-width: 1100px){.admin-overview,.admin-package-form{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-price-field.wide,.admin-package-form textarea{grid-column:1 / -1}}@media (max-width: 720px){.admin-login-page{padding:14px}.login-box{border-radius:18px;padding:24px 18px}.admin-nav{align-items:stretch;gap:12px;padding:12px}.admin-nav .btn-back,.btn-logout{width:100%;justify-content:center}.admin-container{padding:12px 10px}.admin-overview{grid-template-columns:1fr 1fr;gap:9px}.admin-stat-card{min-height:104px;border-radius:12px;padding:12px}.admin-session-card{grid-column:1 / -1}.admin-content{border-radius:14px;padding:12px}.manager-header,.admin-toolbar,.section-row{align-items:stretch;flex-direction:column}.manager-header .btn,.section-row .btn,.admin-form-actions .btn{width:100%;justify-content:center}.admin-search-box{width:100%}.admin-count{white-space:normal}.admin-panel-form,.admin-package-form{grid-template-columns:1fr!important;border-radius:14px;padding:12px}.admin-panel-form textarea,.admin-package-form textarea,.ai-price-field.wide{grid-column:1!important}.ai-price-field{display:grid;grid-template-columns:1fr auto;gap:8px;min-width:0}.ai-price-field input{min-width:0}.ai-price-field .icon-action{width:46px;height:46px}.computed-price-card{min-height:64px}.service-filter-actions,.admin-head-actions,.package-actions,.api-key-actions,.admin-form-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(44px,1fr));width:100%}.icon-action,.service-drag-handle,.package-drag-handle{width:100%;min-width:44px;height:42px}.admin-service-main{align-items:flex-start}.admin-service-logo{width:48px;height:48px;flex-basis:48px}.admin-service-body{padding:12px}.admin-package-tree-item{margin-left:0}.admin-package-tree-item:before{display:none!important}.package-child-editor{margin:8px 0 12px}.admin-price-line span{border-radius:10px;width:100%}.api-key-card{grid-template-columns:1fr;border-radius:14px}.api-key-edit{grid-template-columns:1fr}}.cart-modal{display:flex;flex-direction:column;width:min(92vw,720px);max-width:720px;max-height:min(88vh,820px);padding:0;overflow:hidden;border:1px solid rgba(219,228,240,.92);border-radius:24px;background:radial-gradient(circle at 18% 0%,rgba(34,211,238,.16),transparent 34%),radial-gradient(circle at 92% 8%,rgba(249,115,22,.13),transparent 28%),#fff;box-shadow:0 28px 80px #0f172a42;animation:cartPanelIn .28s ease}@keyframes cartPanelIn{0%{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.cart-modal-header{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0;padding:22px 24px 18px;border-bottom:1px solid rgba(219,228,240,.9)}.cart-title-wrap{display:flex;align-items:center;gap:13px;min-width:0}.cart-title-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;flex:0 0 48px;border-radius:16px;color:#fff;background:linear-gradient(135deg,#0891b2,#2563eb);box-shadow:0 14px 28px #2563eb38}.cart-title-wrap p{margin:0 0 3px;color:var(--dl-muted);font-size:.78rem;font-weight:800;text-transform:uppercase}.cart-title-wrap h2{margin:0;color:var(--dl-ink);font-size:1.58rem;line-height:1.1}.cart-modal .modal-close{position:static;width:42px;height:42px;flex:0 0 42px;color:#475569;background:#f1f5f9;border:1px solid #e2e8f0;box-shadow:none}.cart-modal .modal-close:hover{color:var(--dl-ink);background:#e0f2fe;transform:rotate(0)}.cart-progress-card{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:18px 24px 12px;padding:14px 16px;border:1px solid rgba(165,243,252,.95);border-radius:18px;background:linear-gradient(135deg,#ecfeff,#fff7ed)}.cart-progress-card span{color:#0e7490;font-size:.9rem;font-weight:800}.cart-progress-card strong{color:var(--dl-ink);font-size:1.22rem}.cart-modal-items{display:grid;gap:12px;max-height:38vh;margin:0;padding:0 24px 14px;overflow-y:auto}.cart-modal-items::-webkit-scrollbar{width:6px}.cart-modal-items::-webkit-scrollbar-track{background:transparent}.cart-modal-items::-webkit-scrollbar-thumb{border-radius:999px;background:#bae6fd}.cart-modal .cart-item{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"info total" "controls controls";gap:12px;padding:14px;border:1px solid #e2e8f0;border-radius:18px;background:#ffffffe0;box-shadow:0 14px 34px #0f172a12;animation:cartItemIn .24s ease both}.cart-modal .cart-item:nth-child(2){animation-delay:.03s}.cart-modal .cart-item:nth-child(3){animation-delay:.06s}@keyframes cartItemIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.cart-modal .item-info{grid-area:info;min-width:0}.cart-modal .item-info h4{margin:0 0 4px;color:var(--dl-ink);font-size:1rem;line-height:1.25}.cart-modal .package-name{margin:0 0 7px;color:#475569;font-size:.9rem}.cart-modal .item-price{display:inline-flex;align-items:center;margin:0;padding:5px 9px;border-radius:999px;color:#0f766e;background:#ccfbf1;font-size:.82rem;font-weight:900}.cart-quantity-hint{margin:8px 0 0;color:#64748b;font-size:.78rem}.cart-modal .item-total{grid-area:total;display:grid;align-content:start;justify-items:end;gap:3px;min-width:118px}.cart-modal .item-total span{color:#94a3b8;font-size:.72rem;font-weight:800}.cart-modal .item-total strong{color:var(--dl-orange);font-size:1.02rem;white-space:nowrap}.cart-modal .item-controls{grid-area:controls;display:grid;grid-template-columns:38px minmax(74px,118px) 38px 42px;gap:8px;align-items:center}.quantity-stepper,.cart-modal .btn-delete{display:inline-flex;align-items:center;justify-content:center;height:38px;border:1px solid #dbe4f0;border-radius:12px;cursor:pointer;transition:transform .18s ease,background .18s ease,border-color .18s ease}.quantity-stepper{color:#0e7490;background:#f0fdff}.quantity-stepper:hover{transform:translateY(-1px);border-color:#67e8f9;background:#ecfeff}.cart-modal .quantity-input{width:100%;height:38px;border:1px solid #dbe4f0;border-radius:12px;color:var(--dl-ink);background:#fff;font-size:.95rem;font-weight:900;text-align:center}.cart-modal .btn-delete{color:#ef4444;background:#fff1f2}.cart-modal .btn-delete:hover{transform:translateY(-1px);border-color:#fecdd3;background:#ffe4e6}.cart-modal-summary{display:grid;gap:9px;margin:0 24px 16px;padding:15px;border:1px solid #dbe4f0;border-left:0;border-radius:18px;background:#f8fafc}.summary-row{display:flex;justify-content:space-between;gap:12px;color:#475569;font-size:.92rem}.summary-row strong{color:var(--dl-ink)}.summary-total{align-items:baseline;padding-top:9px;border-top:1px dashed #cbd5e1}.summary-total span{color:var(--dl-ink);font-weight:900}.summary-total strong{color:#ea580c;font-size:1.35rem}.cart-contact-panel{margin:0 24px 24px;padding:16px;border:1px solid rgba(165,243,252,.92);border-radius:20px;background:linear-gradient(135deg,#ecfeffeb,#fff7edeb),#fff}.cart-contact-copy{display:grid;gap:5px;margin-bottom:13px}.cart-contact-label{display:inline-flex;align-items:center;gap:7px;color:#0e7490;font-size:.88rem;font-weight:900}.cart-contact-copy p{margin:0;color:#475569;font-size:.9rem;line-height:1.45}.cart-copy-note{position:relative;display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px;margin-top:2px;padding:10px;overflow:hidden;border:1px solid rgba(129,140,248,.38);border-radius:16px;color:#4338ca;background:linear-gradient(135deg,#eef2fffa,#f5f3fff0),#fff;box-shadow:inset 0 0 0 1px #ffffffad,0 10px 24px #4f46e514;font-size:.8rem;font-weight:800;line-height:1.38;animation:cartNoteGlow 2.4s ease-in-out infinite}.cart-copy-note:after{content:"";position:absolute;inset:0 auto 0 -42%;width:40%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.72),transparent);transform:skew(-18deg);animation:cartNoteSweep 3.2s ease-in-out infinite}@keyframes cartNoteSweep{0%,62%{left:-42%}to{left:112%}}.cart-copy-note-icon{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:14px;color:#6366f1;background:#ffffffc7;box-shadow:0 9px 18px #6366f129;animation:cartCopyIconPop 1.8s ease-in-out infinite}.cart-copy-note-icon svg{font-size:1rem}.cart-copy-note-body{position:relative;z-index:1;display:grid;gap:2px;min-width:0}.cart-copy-animated-text{display:block;background:linear-gradient(90deg,#4338ca,#7c3aed,#db2777,#4338ca);background-size:220% auto;-webkit-background-clip:text;background-clip:text;color:transparent;font-weight:950;animation:cartCopyTextFlow 2.2s linear infinite,cartCopyTextPulse 1.8s ease-in-out infinite}.cart-copy-note-body small{display:block;color:#4f46e5;font-size:.76rem;font-weight:760;line-height:1.36}@keyframes cartNoteGlow{0%,to{border-color:#818cf85c;box-shadow:inset 0 0 0 1px #ffffffad,0 10px 24px #4f46e514}50%{border-color:#a855f78f;box-shadow:inset 0 0 0 1px #ffffffbd,0 14px 30px #7c3aed29}}@keyframes cartCopyIconPop{0%,to{transform:scale(1)}50%{transform:scale(1.08) rotate(-3deg)}}@keyframes cartCopyTextFlow{to{background-position:220% center}}@keyframes cartCopyTextPulse{0%,to{transform:translateY(0);filter:drop-shadow(0 0 0 rgba(124,58,237,0))}50%{transform:translateY(-1px);filter:drop-shadow(0 0 7px rgba(124,58,237,.25))}}.cart-contact-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cart-contact-btn{position:relative;display:flex;align-items:center;gap:11px;min-height:58px;padding:12px 14px;overflow:hidden;border:0;border-radius:16px;color:#fff;cursor:pointer;box-shadow:0 16px 30px #0f172a21;transition:transform .2s ease,filter .2s ease,box-shadow .2s ease}.cart-contact-btn:after{content:"";position:absolute;inset:-80% auto auto -20%;width:56px;height:180px;background:#ffffff3d;transform:rotate(28deg);animation:contactSweep 2.7s ease-in-out infinite}@keyframes contactSweep{0%,55%{transform:translate(-38px) rotate(28deg)}to{transform:translate(240px) rotate(28deg)}}.cart-contact-btn:hover:not(:disabled){transform:translateY(-2px);filter:saturate(1.06);box-shadow:0 18px 34px #0f172a33}.cart-contact-btn:disabled{cursor:wait;opacity:.76}.cart-contact-btn.facebook{background:linear-gradient(135deg,#2563eb,#7c3aed)}.cart-contact-btn.zalo{background:linear-gradient(135deg,#0891b2,#14b8a6)}.cart-contact-btn svg{position:relative;z-index:1;flex:0 0 auto;font-size:1.35rem}.cart-contact-btn span{position:relative;z-index:1;display:grid;gap:2px;text-align:left}.cart-contact-btn b{font-size:.98rem}.cart-contact-btn small{color:#ffffffd1;font-size:.76rem;font-weight:800}.empty-cart{display:grid;justify-items:center;gap:10px;padding:44px 26px 48px;text-align:center}.empty-cart-icon{display:inline-flex;align-items:center;justify-content:center;width:70px;height:70px;border-radius:22px;color:#0e7490;background:linear-gradient(135deg,#ecfeff,#fef3c7);box-shadow:0 18px 34px #0e749021}.empty-cart-icon svg{font-size:1.85rem}.empty-cart h3{margin:6px 0 0;color:var(--dl-ink);font-size:1.25rem}.empty-cart .empty-hint{max-width:360px;margin:0;color:#64748b;font-size:.95rem;line-height:1.55}@media (max-width: 720px){.cart-modal{width:100%;max-width:none;max-height:92vh;margin:auto 0 0;border-radius:24px 24px 0 0}.cart-modal-header{padding:17px 16px 14px}.cart-title-icon{width:42px;height:42px;flex-basis:42px;border-radius:14px}.cart-title-wrap h2{font-size:1.32rem}.cart-progress-card,.cart-modal-summary,.cart-contact-panel{margin-left:14px;margin-right:14px}.cart-progress-card{margin-top:12px;margin-bottom:9px;padding:11px 12px}.cart-modal-items{max-height:30vh;padding:0 14px 10px}.cart-modal .cart-item{grid-template-columns:1fr;grid-template-areas:"info" "total" "controls";gap:10px}.cart-modal .item-total{display:flex;align-items:center;justify-content:space-between;min-width:0;padding:9px 10px;border-radius:12px;background:#fff7ed}.cart-modal .item-controls{grid-template-columns:38px minmax(76px,1fr) 38px 42px}.cart-contact-actions{grid-template-columns:1fr}.cart-contact-panel{margin-bottom:14px;padding:12px;border-radius:18px}.cart-contact-copy{gap:8px;margin-bottom:10px}.cart-contact-label{font-size:.82rem}.cart-copy-note{grid-template-columns:34px minmax(0,1fr);gap:9px;padding:9px;border-radius:15px}.cart-copy-note-icon{width:34px;height:34px;border-radius:12px}.cart-copy-animated-text{font-size:.78rem}.cart-copy-note-body small{font-size:.72rem}.cart-contact-btn{min-height:54px;padding:11px 12px}.cart-contact-btn small{font-size:.72rem}}.service-card.clickable{position:relative;transform-origin:center;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease,background .22s ease}.service-card.clickable:active{transform:translateY(-2px) scale(.985)}.service-card.clickable:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;border-radius:inherit;background:radial-gradient(circle at var(--tap-x, 50%) var(--tap-y, 50%),rgba(34,211,238,.18),transparent 42%);opacity:0;transform:scale(.88);transition:opacity .26s ease,transform .26s ease}.service-card.clickable:active:after{opacity:1;transform:scale(1)}.service-detail{animation:serviceDetailReveal .36s cubic-bezier(.2,.78,.2,1) both}.detail-container{animation:serviceDetailLift .42s cubic-bezier(.2,.78,.2,1) both}.detail-header{animation:detailHeaderFocus .46s ease both}.packages-list{animation:packagesPanelReveal .48s ease .06s both}.packages-grid .package-item{animation:packageCardReveal .42s cubic-bezier(.18,.82,.24,1) both}.packages-grid .package-item:nth-child(1){animation-delay:.08s}.packages-grid .package-item:nth-child(2){animation-delay:.13s}.packages-grid .package-item:nth-child(3){animation-delay:.18s}.packages-grid .package-item:nth-child(4){animation-delay:.23s}.packages-grid .package-item:nth-child(5){animation-delay:.28s}.packages-grid .package-item:nth-child(n+6){animation-delay:.32s}.package-toolbar{animation:packageToolbarSlide .42s ease .12s both}@keyframes serviceDetailReveal{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes serviceDetailLift{0%{opacity:0;transform:scale(.985)}to{opacity:1;transform:scale(1)}}@keyframes detailHeaderFocus{0%{opacity:0;filter:blur(7px);transform:translateY(12px)}to{opacity:1;filter:blur(0);transform:translateY(0)}}@keyframes packagesPanelReveal{0%{opacity:0;transform:translateY(16px);box-shadow:0 4px 18px #0f172a0a}to{opacity:1;transform:translateY(0);box-shadow:0 18px 42px #0f172a12}}@keyframes packageCardReveal{0%{opacity:0;transform:translateY(18px) scale(.97)}70%{opacity:1;transform:translateY(-2px) scale(1.006)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes packageToolbarSlide{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 720px){.service-detail{animation-duration:.28s}.packages-grid .package-item{animation-duration:.34s}.packages-grid .package-item:nth-child(n+4){animation-delay:.18s}}@media (prefers-reduced-motion: reduce){.service-card.clickable,.service-card.clickable:after,.service-detail,.detail-container,.detail-header,.packages-list,.packages-grid .package-item,.package-toolbar{animation:none!important;transition:none!important;transform:none!important}}.hover\:-translate-y-0\.5:hover{--tw-translate-y: -.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-blue-200\/40:hover{border-color:#bfdbfe66}.hover\:border-cyan-200:hover{--tw-border-opacity: 1;border-color:rgb(165 243 252 / var(--tw-border-opacity, 1))}.hover\:border-cyan-200\/40:hover{border-color:#a5f3fc66}.hover\:text-cyan-200:hover{--tw-text-opacity: 1;color:rgb(165 243 252 / var(--tw-text-opacity, 1))}.hover\:text-cyan-700:hover{--tw-text-opacity: 1;color:rgb(14 116 144 / var(--tw-text-opacity, 1))}.hover\:shadow-lg:hover{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-xl:hover{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.group:hover .group-hover\:text-cyan-200{--tw-text-opacity: 1;color:rgb(165 243 252 / var(--tw-text-opacity, 1))}@media (min-width: 640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:p-5{padding:1.25rem}.sm\:p-6{padding:1.5rem}.sm\:text-4xl{font-size:2.25rem;line-height:2.5rem}}@media (min-width: 768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1024px){.lg\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-\[1\.12fr_0\.88fr\]{grid-template-columns:1.12fr .88fr}.lg\:items-center{align-items:center}.lg\:p-6{padding:1.5rem}.lg\:p-8{padding:2rem}}
