main.container { font-family: 'Inter', system-ui, sans-serif !important; background-color: #f8fafc; padding: 40px 15px !important; border-radius: 16px; }
.tool-hero { text-align: center; margin-bottom: 35px; }
.tool-title-main { font-size: 2.2rem !important; font-weight: 800 !important; color: #0f172a !important; letter-spacing: -1px !important; display: flex; align-items: center; justify-content: center; gap: 14px; }

/* SVG Sizing Configurations */
.hero-icon-svg { width: 44px; height: 44px; display: inline-block; }
.title-icon-svg { width: 22px; height: 22px; margin-right: 10px; display: inline-block; vertical-align: middle; }

.tool-subtitle-main { font-size: 16px !important; color: #475569 !important; font-weight: 600 !important; max-width: 750px; margin: 0 auto; line-height: 1.6; }
.safe-workspace { max-width: 1100px; margin: 0 auto; }
.safe-grid { display: grid; grid-template-columns: 1fr; gap: 25px; }
@media (min-width: 768px) { .safe-grid { grid-template-columns: 1.1fr 0.9fr; } }

.safe-card { background: #ffffff; border: 1px solid #e2e8f0; border-radius: 16px; padding: 24px; box-shadow: 0 10px 30px -10px rgba(0,0,0,0.06); display: flex; flex-direction: column; gap: 18px; border-top: 4px solid #ec4899; }
.preview-card { border-top: 4px solid #3b82f6; align-items: center; }

.card-title { font-size: 18px !important; font-weight: 800 !important; color: #0f172a !important; margin: 0; padding-bottom: 12px; border-bottom: 1px solid #f1f5f9; display: flex; align-items: center; width: 100%; }
.form-group { display: flex; flex-direction: column; gap: 6px; width: 100%; }
.lbl { font-size: 13px; font-weight: 700; color: #475569; }
.pro-input { width: 100%; padding: 12px 14px; font-size: 14.5px; font-weight: 600; border: 2px solid #e2e8f0; border-radius: 8px; outline: none; background: #fff; color: #0f172a; box-sizing: border-box; }
.pro-input:focus { border-color: #ec4899; }

/* Custom Premium Upload Button */
.custom-file-upload { display: flex; align-items: center; justify-content: center; gap: 10px; background: #fdf2f8; color: #db2777; border: 2px dashed #fbcfe8; padding: 14px; border-radius: 10px; font-weight: 700; font-size: 14px; cursor: pointer; transition: all 0.2s; }
.custom-file-upload:hover { background: #fce7f3; border-color: #f472b6; transform: translateY(-1px); }

.pro-slider { width: 100%; height: 6px; background: #e2e8f0; border-radius: 5px; outline: none; -webkit-appearance: none; margin: 10px 0; }
.pro-slider::-webkit-slider-thumb { -webkit-appearance: none; width: 18px; height: 18px; border-radius: 50%; background: #ec4899; cursor: pointer; transition: transform 0.1s; }
.pro-slider::-webkit-slider-thumb:hover { transform: scale(1.2); }

.status-banner { padding: 14px; border-radius: 10px; font-size: 13px; font-weight: 600; line-height: 1.5; }
.premium-pink-banner { background: #fff1f2; color: #9f1239; border: 1px solid #ffe4e6; }

/* 📱 High Tech Mobile Simulator Viewport Studio */
.viewport-wrapper { background: #0f172a; padding: 20px; border-radius: 24px; box-shadow: 0 20px 40px -15px rgba(0,0,0,0.3); }
.mobile-viewport { width: 280px; height: 497px; background: #1e293b; border-radius: 16px; position: relative; overflow: hidden; background-size: cover; background-position: center; border: 4px solid #334155; }
.default-bg-placeholder { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; color: #64748b; font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.5px; border: 2px dashed #334155; margin: 10px; border-radius: 10px; }

/* Overlay HUD Bounding Interferences masks styles */
.overlay-mask { position: absolute; background: rgba(236, 72, 153, 0.35); color: #ffffff; font-size: 11px; font-weight: 800; display: flex; align-items: center; justify-content: center; text-transform: uppercase; pointer-events: none; backdrop-filter: blur(1px); transition: opacity 0.2s ease; border: 1px dashed rgba(255,255,255,0.4); text-shadow: 0 1px 4px rgba(0,0,0,0.6); }

.top-mask { top: 0; left: 0; width: 100%; height: 60px; }
.side-mask { top: 100px; right: 0; width: 55px; height: 220px; border-radius: 8px 0 0 8px; }
.bottom-mask { bottom: 0; left: 0; width: 100%; height: 110px; }

/* SEO Quadrants Blocks Rules */
.seo-guide-section { max-width: 1100px; margin: 50px auto 0 auto; }
.step-grid { display: grid; grid-template-columns: 1fr; gap: 20px; margin-top: 25px; }
@media (min-width: 768px) { .step-grid { grid-template-columns: repeat(3, 1fr); } }
.step-card { background: #fff; border: 1px solid #e2e8f0; padding: 22px; border-radius: 12px; position: relative; }
.step-num { position: absolute; top: -12px; left: 20px; color: #fff; font-weight: 800; width: 28px; height: 28px; display: flex; align-items: center; justify-content: center; border-radius: 50%; font-size: 13px; }
.bg-grad-1 { background: linear-gradient(135deg, #3b82f6, #60a5fa); }
.bg-grad-2 { background: linear-gradient(135deg, #8b5cf6, #a78bfa); }
.bg-grad-3 { background: linear-gradient(135deg, #ec4899, #f472b6); }

.step-card h4 { margin: 8px 0; font-size: 16px; font-weight: 700; color: #0f172a; }
.step-card p { margin: 0; font-size: 13.5px; color: #475569; line-height: 1.5; }

.faq-section { max-width: 850px; margin: 50px auto 20px auto; }
.faq-main-title { font-size: 24px !important; font-weight: 800 !important; color: #0f172a; text-align: center; margin-bottom: 25px; }
.faq-item { background: #ffffff; border: 1px solid #e2e8f0; border-radius: 12px; padding: 20px; margin-bottom: 15px; }
.faq-question { font-size: 16px !important; font-weight: 700 !important; color: #0f172a; margin: 0 0 8px 0; }
.faq-answer { font-size: 14px; color: #475569; line-height: 1.6; margin: 0; }