.theme-floating-btn{position:fixed;bottom:80px;right:20px;z-index:1050;display:flex;align-items:center;gap:8px;background:var(--accent-gradient,linear-gradient(135deg,#10b981,#059669));color:#fff;border:none;padding:10px 18px;border-radius:50px;box-shadow:var(--shadow-glow,0 4px 15px rgba(16,185,129,.4));cursor:pointer;font-weight:600;font-size:14px;transition:all .3s cubic-bezier(.4,0,.2,1)}.theme-floating-btn:hover{transform:translateY(-3px) scale(1.03);box-shadow:0 8px 25px rgba(0,0,0,.25)}.theme-btn-icon{font-size:18px;animation:spinSlow 12s linear infinite}@keyframes spinSlow{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.theme-modal-overlay{position:fixed;inset:0;z-index:2000;background:rgba(0,0,0,.65);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:16px;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.theme-modal-container{background:var(--bg-surface,#fff);color:var(--text-primary,#0f172a);border:1px solid var(--border-color,#e2e8f0);border-radius:20px;width:100%;max-width:680px;max-height:85vh;overflow-y:auto;box-shadow:var(--shadow-lg,0 20px 40px rgba(0,0,0,.2));display:flex;flex-direction:column}.theme-modal-header{display:flex;justify-content:space-between;align-items:center;padding:18px 24px 14px;border-bottom:1px solid var(--border-color,#e2e8f0)}.theme-modal-icon{font-size:24px;color:var(--accent-primary,#10b981)}.theme-modal-title{font-size:18px;font-weight:700;color:var(--text-primary,#0f172a)}.theme-modal-sub{font-size:13px;color:var(--text-muted,#64748b)}.theme-close-btn{background:transparent;border:none;font-size:22px;color:var(--text-muted,#64748b);cursor:pointer;border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;transition:background .2s}.theme-close-btn:hover{background:var(--border-light,#f1f5f9);color:var(--text-primary,#0f172a)}.customizer-tabs-bar{display:flex;background:var(--border-light,#f1f5f9);padding:6px;margin:16px 24px 0;border-radius:12px;gap:6px}.customizer-tab-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;background:transparent;border:none;padding:10px 14px;border-radius:8px;font-size:13px;font-weight:700;color:var(--text-secondary,#475569);cursor:pointer;transition:all .2s ease}.customizer-tab-btn.active{background:var(--bg-surface,#fff);color:var(--accent-primary,#10b981);box-shadow:var(--shadow-sm)}.theme-grid{padding:20px 24px;display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:16px}.templates-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.theme-card{background:var(--bg-card,#fff);border:2px solid var(--border-color,#e2e8f0);border-radius:14px;overflow:hidden;cursor:pointer;transition:all .25s ease;position:relative;display:flex;flex-direction:column}.theme-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.theme-card.active,.theme-card:hover{border-color:var(--accent-primary,#10b981)}.theme-card.active{box-shadow:0 0 0 3px var(--border-accent)}.theme-card-banner{height:60px;padding:8px 12px;align-items:flex-start;position:relative}.template-card-header,.theme-card-banner{display:flex;justify-content:space-between}.template-card-header{padding:12px 14px;background:var(--border-light,#f1f5f9);align-items:center}.template-icon-wrap{width:36px;height:36px;border-radius:10px;background:var(--accent-light,#ecfdf5);color:var(--accent-primary,#10b981);display:flex;align-items:center;justify-content:center;font-size:18px}.theme-card-badge{font-size:10px;font-weight:700;text-transform:uppercase;background:rgba(0,0,0,.35);color:#fff;padding:3px 8px;border-radius:12px;letter-spacing:.5px}.theme-active-icon{width:24px;height:24px;background:var(--accent-primary,#10b981);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;box-shadow:0 2px 5px rgba(0,0,0,.2)}.theme-card-body{padding:12px;flex-grow:1}.theme-card-name{font-size:15px;font-weight:700;margin:0 0 4px;color:var(--text-primary,#0f172a)}.template-tag-pill{display:inline-block;font-size:11px;font-weight:700;color:var(--accent-primary,#10b981);background:var(--accent-light,#ecfdf5);padding:2px 8px;border-radius:6px;margin-bottom:6px}.template-desc{font-size:12px;margin:0;line-height:1.4}.template-desc,.theme-card-cat{color:var(--text-muted,#64748b)}.theme-card-cat{font-size:11px;display:block;margin-bottom:8px}.theme-color-dots{display:flex;gap:6px}.color-dot{width:14px;height:14px;border-radius:50%}.theme-modal-footer{padding:16px 24px;border-top:1px solid var(--border-color,#e2e8f0);display:flex;justify-content:flex-end}.theme-apply-btn{background:var(--accent-gradient,linear-gradient(135deg,#10b981,#059669));color:#fff;border:none;padding:10px 24px;border-radius:10px;font-weight:600;cursor:pointer;transition:opacity .2s}@media (max-width:576px){.theme-floating-btn{bottom:75px;right:14px;padding:8px 14px;font-size:12px}.theme-modal-header{padding:14px 16px}.customizer-tabs-bar{margin:12px 16px 0;padding:4px}.customizer-tab-btn{padding:8px 10px;font-size:12px}.theme-grid{padding:14px 16px;grid-template-columns:repeat(2,1fr);gap:12px}.templates-grid{grid-template-columns:1fr}}.pwa-install-banner{position:sticky;top:0;z-index:9999;background:linear-gradient(135deg,#1c2317,#2a3821);color:#fff;padding:10px 16px;box-shadow:0 4px 20px rgba(0,0,0,.25);animation:slideDownBanner .4s cubic-bezier(.16,1,.3,1);border-bottom:2px solid #7fad39}@keyframes slideDownBanner{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.pwa-banner-container{max-width:1200px;margin:0 auto;justify-content:space-between}.pwa-banner-container,.pwa-banner-left{display:flex;align-items:center;gap:12px}.pwa-banner-left{flex:1;min-width:0}.pwa-banner-icon{width:42px;height:42px;border-radius:10px;object-fit:cover;box-shadow:0 2px 8px rgba(127,173,57,.4);background-color:#fff;padding:2px;flex-shrink:0}.pwa-banner-text{display:flex;flex-direction:column;min-width:0}.pwa-banner-title{font-size:14px;font-weight:700;color:#fff;line-height:1.2}.pwa-banner-subtitle,.pwa-banner-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pwa-banner-subtitle{font-size:12px;color:#b5d588}.pwa-banner-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.pwa-install-btn{background-color:#7fad39;color:#fff;border:none;padding:8px 18px;border-radius:20px;font-weight:700;font-size:13px;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .2s ease-in-out;box-shadow:0 4px 12px rgba(127,173,57,.35)}.pwa-install-btn:hover{background-color:#6c982e;transform:translateY(-1px);box-shadow:0 6px 16px rgba(127,173,57,.5)}.pwa-install-btn:active{transform:scale(.96)}.pwa-dismiss-btn{background:hsla(0,0%,100%,.12);border:none;color:#d1d5db;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:16px;transition:all .2s ease}.pwa-dismiss-btn:hover{background:hsla(0,0%,100%,.25);color:#fff}.pwa-ios-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.65);backdrop-filter:blur(4px);z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px}.pwa-ios-modal{background:#fff;color:#333;border-radius:20px;padding:24px;max-width:380px;width:100%;text-align:center;box-shadow:0 20px 40px rgba(0,0,0,.3);animation:popIn .3s cubic-bezier(.16,1,.3,1)}@keyframes popIn{0%{transform:scale(.85);opacity:0}to{transform:scale(1);opacity:1}}.pwa-ios-title{font-size:18px;font-weight:700;color:#1c1c1c;margin-bottom:12px}.pwa-ios-step{font-size:14px;color:#555;margin:10px 0;display:flex;align-items:center;justify-content:center;gap:8px}.pwa-ios-close-btn{margin-top:16px;background:#7fad39;color:#fff;border:none;padding:10px 24px;border-radius:20px;font-weight:600;cursor:pointer}@media (max-width:576px){.pwa-banner-subtitle{display:none}.pwa-install-btn{padding:6px 14px;font-size:12px}}