/* FeelMe.in – modern theme */
:root{
  --bg:#f6f7fb; --surface:#fff; --surface-2:#f1f3f9; --text:#0f172a; --muted:#64748b;
  --border:#e5e8f0; --accent:#6366f1; --accent-2:#8b5cf6; --accent-soft:#eef0ff;
  --ok:#059669; --err:#dc2626;
  --radius:16px; --shadow:0 1px 2px rgba(15,23,42,.04),0 8px 24px rgba(15,23,42,.06);
  --shadow-hover:0 2px 4px rgba(15,23,42,.06),0 16px 40px rgba(99,102,241,.18);
  --grad:linear-gradient(135deg,var(--accent),var(--accent-2));
}
@media (prefers-color-scheme:dark){
  :root{
    --bg:#0b1020; --surface:#131a2e; --surface-2:#1a2340; --text:#e8ecf8; --muted:#94a3c0;
    --border:#243050; --accent:#818cf8; --accent-2:#a78bfa; --accent-soft:#1e2447;
    --ok:#34d399; --err:#f87171;
    --shadow:0 1px 2px rgba(0,0,0,.3),0 8px 24px rgba(0,0,0,.25);
    --shadow-hover:0 2px 4px rgba(0,0,0,.4),0 16px 40px rgba(129,140,248,.2);
  }
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);line-height:1.6;-webkit-font-smoothing:antialiased;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
a{color:var(--accent);text-decoration:none}
h1,h2,h3{line-height:1.2;letter-spacing:-.02em;margin:0 0 .5em}
p{margin:0 0 1em}
.container{width:100%;max-width:1120px;margin:0 auto;padding:0 20px}
.hidden{display:none!important}

/* Header */
.header{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--surface) 82%,transparent);
  backdrop-filter:saturate(180%) blur(14px);-webkit-backdrop-filter:saturate(180%) blur(14px);border-bottom:1px solid var(--border)}
.nav{display:flex;align-items:center;justify-content:space-between;height:64px;position:relative}
.logo{font-size:24px;font-weight:800;letter-spacing:-.04em;color:var(--text)}
.logo span{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.navlinks{display:flex;gap:4px}
.navlinks a{color:var(--muted);font-weight:500;font-size:15px;padding:8px 14px;border-radius:999px;transition:.2s}
.navlinks a:hover{color:var(--accent);background:var(--accent-soft)}
.menu{display:none;background:var(--surface-2);border:1px solid var(--border);color:var(--text);
  width:42px;height:42px;border-radius:12px;font-size:20px;cursor:pointer}

/* Hero */
.hero{position:relative;overflow:hidden;text-align:center;padding:84px 0 56px}
.hero::before{content:"";position:absolute;inset:-40% -10% auto;height:120%;z-index:0;pointer-events:none;
  background:radial-gradient(600px 300px at 25% 20%,rgba(99,102,241,.22),transparent 70%),
             radial-gradient(500px 280px at 78% 10%,rgba(139,92,246,.20),transparent 70%)}
.hero .container{position:relative;z-index:1}
.hero h1{font-size:clamp(38px,7vw,68px);font-weight:800;margin-bottom:.3em}
.hero h1 span{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero p{color:var(--muted);font-size:clamp(16px,2.2vw,19px);max-width:560px;margin:0 auto 28px}
.eyebrow{display:inline-block;background:var(--accent-soft);color:var(--accent);font-size:13px;font-weight:600;
  padding:6px 14px;border-radius:999px;margin-bottom:18px;border:1px solid color-mix(in srgb,var(--accent) 25%,transparent)}
.search{position:relative;max-width:520px;margin:0 auto}
.search input{width:100%;padding:17px 20px 17px 50px;font-size:16px;color:var(--text);background:var(--surface);
  border:1px solid var(--border);border-radius:999px;box-shadow:var(--shadow);outline:none;transition:.2s}
.search input:focus{border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 20%,transparent)}
.search-icon{position:absolute;left:20px;top:50%;transform:translateY(-52%);font-size:22px;color:var(--muted);pointer-events:none}

/* Sections & cards */
.section{padding:48px 0}
.section-head{margin-bottom:26px}
.section-head h2{font-size:clamp(24px,3.5vw,32px);margin-bottom:.2em}
.section-head p{color:var(--muted);margin:0}
.grid,.cat-grid{display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));margin:26px 0}
.section .grid,.section .cat-grid{margin:0}
.tool-card,.cat-card{display:block;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);
  padding:24px;color:var(--text);box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s,border-color .2s}
.tool-card:hover,.cat-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover);border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}
.tool-card h3,.cat-card h3{font-size:18px;margin:14px 0 6px}
.tool-card p,.cat-card p{color:var(--muted);font-size:14.5px;margin:0}
.icon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;font-size:22px;font-weight:700;
  color:var(--accent);background:var(--accent-soft)}
.cat-grid .cat-card{text-align:center}
.cat-grid .icon{margin:0 auto}
.section[style*="background"]{background:var(--surface)!important;border-block:1px solid var(--border)}
.cta{text-align:center;color:#fff;background:var(--grad);border-radius:24px;padding:54px 24px;box-shadow:var(--shadow-hover)}
.cta h2{font-size:clamp(24px,4vw,34px)}
.cta p{opacity:.9;max-width:540px;margin:0 auto}

/* Ad placeholder */
.ad{margin:24px 0;min-height:90px;display:grid;place-items:center;font-size:11px;letter-spacing:.14em;color:var(--muted);
  border:1px dashed var(--border);border-radius:12px;background:var(--surface-2); display:none}

/* Tool pages */
.tool-hero{padding:52px 0 8px;text-align:center}
.tool-hero h1{font-size:clamp(30px,5vw,46px);font-weight:800;margin-bottom:.25em}
.tool-hero p{color:var(--muted);font-size:17px;margin:0 auto;max-width:560px}
.tool-hero .eyebrow{margin-bottom:14px}
.toolbox{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:28px;margin:24px 0;box-shadow:var(--shadow)}
.toolbox h2{font-size:20px;margin-top:1.2em}
.toolbox h2:first-child{margin-top:0}
.toolbox p:last-child{margin-bottom:0}
.label{display:block;font-size:13.5px;font-weight:600;margin-bottom:8px}
.input,.textarea{width:100%;padding:13px 15px;font:inherit;font-size:15.5px;color:var(--text);background:var(--surface-2);
  border:1px solid var(--border);border-radius:12px;outline:none;transition:.2s}
.input:focus,.textarea:focus{background:var(--surface);border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 18%,transparent)}
.textarea{min-height:220px;resize:vertical;line-height:1.55}
input[type=checkbox]{accent-color:var(--accent);width:16px;height:16px;vertical-align:-2px;margin-right:6px}
input[type=file].input{padding:11px;cursor:pointer}
.row,.row3{display:grid;gap:16px}
.row{grid-template-columns:repeat(2,1fr)}
.row3{grid-template-columns:repeat(3,1fr)}
.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 22px;font:inherit;font-size:15px;font-weight:600;
  color:#fff;background:var(--grad);border:0;border-radius:12px;cursor:pointer;transition:.2s;
  box-shadow:0 6px 16px color-mix(in srgb,var(--accent) 35%,transparent)}
.btn:hover{transform:translateY(-1px);filter:brightness(1.06)}
.btn:active{transform:translateY(0)}
.btn:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 45%,transparent);outline-offset:2px}
.btn.secondary{color:var(--text);background:var(--surface-2);border:1px solid var(--border);box-shadow:none}
.btn.secondary:hover{border-color:var(--accent);color:var(--accent)}
a.btn.success{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 6px 16px rgba(5,150,105,.3)}
.result{margin-top:22px;padding:20px;background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent) 22%,transparent);border-radius:14px;font-size:16px}
.result strong{color:var(--accent)}
.result .row3>div{background:var(--surface);border-radius:12px;padding:14px 16px;border:1px solid var(--border)}
.result .input{background:var(--surface)}
.note{color:var(--muted);font-size:13.5px;margin:14px 0 0}
p.success,.success:not(.btn){color:var(--ok);font-weight:600;font-size:14px}
p.error,.error{color:var(--err);font-weight:600;font-size:14px}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:20px}
.stat{background:var(--surface-2);border:1px solid var(--border);border-radius:14px;padding:16px;text-align:center}
.stat strong{display:block;font-size:28px;font-weight:800;letter-spacing:-.03em;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.stat span{font-size:13px;color:var(--muted)}
.drop{border:2px dashed var(--border);border-radius:16px;padding:28px;text-align:center;background:var(--surface-2);transition:.2s}
.drop.over,.drop:hover{border-color:var(--accent);background:var(--accent-soft)}
.drop p{margin:12px 0 0;color:var(--muted)}

/* Footer (always dark) */
.footer{margin-top:64px;background:#0b1020;color:#aab3cc;padding:56px 0 0}
.footer-inner{display:grid;grid-template-columns:2fr 1fr 1fr;gap:36px}
.footer h3{color:#fff;font-size:15px;margin-bottom:14px}
.footer h3.logo{font-size:24px}
.footer .logo span{background:linear-gradient(135deg,#818cf8,#a78bfa);-webkit-background-clip:text;background-clip:text;color:transparent}
.footer p{font-size:14.5px;max-width:320px}
.footer-inner a{display:block;color:#aab3cc;font-size:14.5px;padding:4px 0;transition:.2s}
.footer-inner a:hover{color:#fff;transform:translateX(3px)}
.copyright{margin-top:40px;padding:22px 20px;border-top:1px solid #1b2440;font-size:13.5px;color:#7d87a6}

/* Responsive */
@media (max-width:820px){
  .menu{display:block}
  .navlinks{display:none;position:absolute;top:70px;left:20px;right:20px;flex-direction:column;background:var(--surface);
    border:1px solid var(--border);border-radius:16px;padding:8px;box-shadow:var(--shadow-hover)}
  .navlinks.mobile{display:flex}
  .navlinks a{padding:12px 14px}
  .stats{grid-template-columns:repeat(2,1fr)}
  .footer-inner{grid-template-columns:1fr 1fr}
  .footer-inner>div:first-child{grid-column:1/-1}
}
@media (max-width:560px){
  .row,.row3{grid-template-columns:1fr}
  .hero{padding:56px 0 36px}
  .toolbox{padding:20px}
  .actions .btn{flex:1 1 auto}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
