/* CSS original do arquivo ferramentas.html; regras preservadas. */
:root { --bg: #04060b; --bg-2: #070b14; --panel: #0b101b; --panel-2: #0e1421; --primary: #7868ff; --primary-2: #9b8cff; --cyan: #25d9ff; --cyan-2: #00a8ff; --green: #25d366; --white: #ffffff; --text: #eef1f7; --muted: #9ca7ba; --border: rgba(255,255,255,.08); } * { box-sizing: border-box; } html { scroll-behavior: smooth; } body { margin: 0; min-height: 100vh; font-family: 'Inter', Arial, sans-serif; color: var(--text); background: radial-gradient( circle at 50% -10%, rgba(120,104,255,.20), transparent 36% ), radial-gradient( circle at 10% 35%, rgba(37,217,255,.055), transparent 30% ), linear-gradient( 180deg, var(--bg-2) 0%, var(--bg) 100% ); overflow-x: hidden; } body::before { content: ""; position: fixed; inset: 0; pointer-events: none; background: linear-gradient( rgba(255,255,255,.012) 1px, transparent 1px ), linear-gradient( 90deg, rgba(255,255,255,.012) 1px, transparent 1px ); background-size: 50px 50px; mask-image: linear-gradient( to bottom, black, transparent 90% ); z-index: -1; } header { text-align: center; padding: 42px 20px 18px; } header img { width: auto; max-width: 175px; height: auto; filter: drop-shadow( 0 0 18px rgba(120,104,255,.40) ); transition: .3s ease; } header img:hover { transform: scale(1.03); filter: drop-shadow( 0 0 28px rgba(120,104,255,.60) ); } nav { display: flex; justify-content: center; align-items: center; margin: 0 auto 35px; padding: 0 15px; } nav a { display: inline-flex; align-items: center; justify-content: center; gap: 9px; padding: 11px 18px; color: var(--text); text-decoration: none; font-size: 13px; font-weight: 700; border: 1px solid rgba(120,104,255,.25); border-radius: 10px; background: rgba(120,104,255,.07); box-shadow: 0 8px 30px rgba(0,0,0,.25); transition: .25s ease; } nav a:hover { color: #fff; border-color: rgba(120,104,255,.65); background: rgba(120,104,255,.14); transform: translateY(-2px); box-shadow: 0 10px 35px rgba(120,104,255,.18); } .wrapper { width: min(950px, calc(100% - 30px)); margin: 0 auto 50px; padding: 42px; position: relative; background: linear-gradient( 145deg, rgba(14,20,33,.96), rgba(7,10,18,.96) ); border: 1px solid var(--border); border-radius: 20px; box-shadow: 0 25px 80px rgba(0,0,0,.45), 0 0 45px rgba(120,104,255,.08); overflow: hidden; animation: pageEnter .7s ease both; } .wrapper::before { content: ""; position: absolute; top: 0; left: 12%; width: 76%; height: 1px; background: linear-gradient( 90deg, transparent, var(--primary), var(--cyan), transparent ); box-shadow: 0 0 18px rgba(120,104,255,.75); } .wrapper::after { content: ""; position: absolute; width: 220px; height: 220px; right: -120px; top: -120px; background: radial-gradient( circle, rgba(120,104,255,.16), transparent 70% ); pointer-events: none; } .page-heading { position: relative; text-align: center; margin-bottom: 38px; z-index: 2; } .page-label { display: inline-flex; align-items: center; gap: 8px; padding: 7px 13px; margin-bottom: 14px; color: #bdb7ff; background: rgba(120,104,255,.08); border: 1px solid rgba(120,104,255,.20); border-radius: 50px; font-size: 10px; font-weight: 800; letter-spacing: 1.5px; text-transform: uppercase; } .page-heading h1 { margin: 0 0 12px; font-family: 'Cinzel', serif; font-size: clamp(25px, 4vw, 36px); font-weight: 900; color: #fff; text-shadow: 0 0 12px rgba(120,104,255,.45), 0 0 30px rgba(120,104,255,.18); } .page-heading p { max-width: 620px; margin: 0 auto; color: var(--muted); font-size: 14px; line-height: 1.7; } .heading-line { width: 90px; height: 3px; margin: 17px auto 0; border-radius: 20px; background: linear-gradient( 90deg, var(--primary), var(--cyan) ); box-shadow: 0 0 15px rgba(120,104,255,.55); } .links-section { position: relative; z-index: 2; margin-bottom: 28px; } .section-title { display: flex; align-items: center; gap: 10px; margin: 0 0 15px; padding-bottom: 11px; color: #fff; font-family: 'Cinzel', serif; font-size: 16px; font-weight: 800; border-bottom: 1px solid rgba(120,104,255,.15); } .section-title i { color: var(--primary-2); font-size: 15px; text-shadow: 0 0 12px rgba(120,104,255,.55); } .links-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; } .link-item { position: relative; display: flex; align-items: center; gap: 15px; min-height: 82px; padding: 16px 18px; text-decoration: none; color: #fff; background: linear-gradient( 145deg, rgba(255,255,255,.035), rgba(255,255,255,.015) ); border: 1px solid rgba(255,255,255,.07); border-radius: 13px; box-shadow: 0 8px 25px rgba(0,0,0,.18); transition: transform .25s ease, border-color .25s ease, background .25s ease, box-shadow .25s ease; } .link-item:hover { transform: translateY(-4px); border-color: rgba(120,104,255,.50); background: linear-gradient( 145deg, rgba(120,104,255,.11), rgba(37,217,255,.035) ); box-shadow: 0 15px 35px rgba(0,0,0,.30), 0 0 25px rgba(120,104,255,.10); } .link-icon { flex: 0 0 45px; width: 45px; height: 45px; display: flex; align-items: center; justify-content: center; border-radius: 11px; color: var(--primary-2); background: rgba(120,104,255,.09); border: 1px solid rgba(120,104,255,.16); font-size: 18px; transition: .25s ease; } .link-item:hover .link-icon { color: #fff; background: linear-gradient( 135deg, var(--primary), var(--cyan-2) ); border-color: transparent; box-shadow: 0 0 20px rgba(120,104,255,.30); transform: scale(1.05); } .link-content { min-width: 0; flex: 1; } .link-title { display: block; color: #fff; font-size: 14px; font-weight: 800; line-height: 1.45; margin-bottom: 4px; } .link-description { display: block; color: #7f8a9e; font-size: 11px; line-height: 1.5; } .link-arrow { flex: 0 0 auto; color: #566176; font-size: 13px; transition: .25s ease; } .link-item:hover .link-arrow { color: var(--cyan); transform: translateX(4px); } .link-item.whatsapp { border-color: rgba(37,211,102,.16); } .link-item.whatsapp .link-icon { color: var(--green); background: rgba(37,211,102,.08); border-color: rgba(37,211,102,.15); } .link-item.whatsapp:hover { border-color: rgba(37,211,102,.45); background: rgba(37,211,102,.055); } .link-item.whatsapp:hover .link-icon { background: linear-gradient( 135deg, #25d366, #16a34a ); color: #fff; } .link-item.plans { border-color: rgba(120,104,255,.18); } .link-item.plans .link-icon { color: #d0caff; background: rgba(120,104,255,.11); } .link-item.download .link-icon { color: var(--cyan); background: rgba(37,217,255,.07); border-color: rgba(37,217,255,.15); } .link-item.download:hover { border-color: rgba(37,217,255,.40); } footer { text-align: center; padding: 5px 15px 35px; color: #697386; font-size: 12px; letter-spacing: .3px; } footer span { color: var(--primary-2); } .whatsapp-float { position: fixed; right: 22px; bottom: 22px; width: 54px; height: 54px; display: flex; align-items: center; justify-content: center; color: #fff; background: linear-gradient( 135deg, #25d366, #16a34a ); border-radius: 50%; text-decoration: none; font-size: 25px; box-shadow: 0 8px 30px rgba(37,211,102,.30); z-index: 1000; transition: .25s ease; } .whatsapp-float:hover { transform: translateY(-4px) scale(1.05); box-shadow: 0 12px 38px rgba(37,211,102,.45); } @keyframes pageEnter { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } } @media (max-width: 800px) { .wrapper { padding: 30px 22px; } .links-list { grid-template-columns: 1fr; } } @media (max-width: 600px) { header { padding: 30px 15px 15px; } header img { max-width: 145px; } nav { margin-bottom: 25px; } .wrapper { width: calc(100% - 20px); padding: 28px 16px; border-radius: 16px; } .page-heading h1 { font-size: 23px; line-height: 1.4; } .page-heading p { font-size: 13px; } .section-title { font-size: 15px; } .link-item { min-height: 74px; padding: 13px; } .link-icon { flex-basis: 42px; width: 42px; height: 42px; font-size: 16px; } .link-title { font-size: 13px; } .link-description { font-size: 10px; } .whatsapp-float { width: 50px; height: 50px; right: 16px; bottom: 16px; font-size: 22px; } } @media (max-width: 400px) { .wrapper { padding: 24px 13px; } .link-item { gap: 10px; } .link-icon { flex-basis: 39px; width: 39px; height: 39px; } .link-arrow { display: none; } }
