/*
Theme Name: CalcPro
Description: Futuristic green glass calculator theme with a 3D hero scene, glass category cards, live calculator search, English Gematria quick-check, dark mode, AdSense-ready ad slots and auto-created required pages.
Version: 1.1.0
Requires at least: 5.8
Requires PHP: 7.4
Author: Your Name
License: GNU General Public License v2 or later
Text Domain: calcpro
*/
:root{--bg:#f3f1e6;--fade:#f3f1e6;--fade2:rgba(241,244,233,.97);--ov:rgba(247,246,238,.80);--ov2:rgba(238,244,232,.92);--text:#1c2b1f;--muted:#5d6e61;--head:#0d3b1c;--accent:#1e7a39;--btn:#1b6b34;--btn2:#2f9a4f;
--glass:linear-gradient(145deg,rgba(255,255,255,.88),rgba(255,255,255,.52));--glassb:rgba(255,255,255,.75);--line:rgba(20,83,45,.14);
--shadow:0 18px 44px rgba(20,83,45,.15),inset 0 1px 0 rgba(255,255,255,.95);--glow:0 0 0 4px rgba(47,154,79,.18),0 8px 24px rgba(47,154,79,.35)}
html[data-theme=dark]{--bg:#0b160f;--fade:#0b160f;--fade2:rgba(6,16,10,.97);--ov:rgba(8,20,12,.86);--ov2:rgba(6,16,10,.95);--text:#e5f0e7;--muted:#9cb5a1;--head:#dcf7e2;--accent:#66d682;--btn:#2a9a4a;--btn2:#45c46a;
--glass:linear-gradient(145deg,rgba(255,255,255,.10),rgba(255,255,255,.04));--glassb:rgba(255,255,255,.14);--line:rgba(255,255,255,.14);
--shadow:0 18px 44px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.12)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--text);line-height:1.65;background-color:var(--bg);background-image:linear-gradient(var(--ov),var(--ov2)),url(assets/img/page-bg.jpg);background-size:cover;background-position:center;background-attachment:fixed}
a{color:var(--accent)}img{max-width:100%;height:auto}
.screen-reader-text,.skip:not(:focus){position:absolute;left:-9999px}
.skip:focus{position:fixed;top:8px;left:8px;background:#fff;padding:8px 14px;z-index:99}
.cp-wrap{max-width:1240px;margin:0 auto;padding:0 22px}
.glass,.cp-article,.cp-post,.cp-tile,.cp-cat,.cp-spot,.cp-bar{background:var(--glass);border:1px solid var(--glassb);box-shadow:var(--shadow);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}

/* header floats over the hero */
.cp-header{position:sticky;top:0;z-index:50;padding:16px 0;margin-bottom:-90px}
body:not(.home) #main{padding-top:92px}
.cp-bar{display:flex;align-items:center;gap:14px;border-radius:999px;padding:9px 18px}
.cp-logo,.custom-logo-link{display:flex;align-items:center;gap:10px;font-weight:800;font-size:23px;color:var(--head);text-decoration:none;letter-spacing:-.01em}
.cp-logo img{width:38px;height:38px;border-radius:10px;box-shadow:0 4px 12px rgba(20,83,45,.35)}
.cp-nav{flex:1}.cp-menu{display:flex;gap:4px;list-style:none;margin:0;padding:5px;justify-content:center;background:rgba(255,255,255,.35);border-radius:999px;width:max-content;margin-inline:auto}
html[data-theme=dark] .cp-menu{background:rgba(255,255,255,.06)}
.cp-menu a{display:block;padding:9px 20px;border-radius:999px;text-decoration:none;color:var(--text);font-weight:500;transition:.2s}
.cp-menu a:hover{background:rgba(47,154,79,.16)}
.cp-menu .current-menu-item>a,.cp-menu .current_page_item>a{background:linear-gradient(135deg,var(--btn2),var(--btn));color:#fff;box-shadow:var(--glow)}
.cp-burger,.cp-mode{background:none;border:0;font-size:21px;cursor:pointer;color:var(--text);padding:6px 10px;border-radius:50%}
.cp-mode:hover{background:rgba(47,154,79,.16)}
.cp-burger{display:none}

/* search */
.cp-search{position:relative;display:flex;align-items:center;border-radius:999px;padding:4px 4px 4px 18px;background:var(--glass);border:1px solid var(--glassb);box-shadow:var(--shadow)}
.cp-search input{border:0;background:transparent;flex:1;min-width:0;padding:10px;font-size:15px;color:var(--text);outline:none;font-family:inherit}
.cp-search button{border:0;background:linear-gradient(135deg,var(--btn2),var(--btn));color:#fff;width:44px;height:44px;border-radius:50%;cursor:pointer;font-size:20px;box-shadow:var(--glow)}
.cp-header .cp-search{width:250px}
.cp-suggest{position:absolute;left:0;right:0;top:calc(100% + 8px);background:var(--bg);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);overflow:hidden;z-index:60}
.cp-suggest a{display:block;padding:11px 18px;color:var(--text);text-decoration:none}.cp-suggest a:hover{background:rgba(47,154,79,.14)}

/* hero (uses artwork from the design) */
.cp-hero{position:relative;aspect-ratio:1536/748;min-height:780px;background:url(assets/img/hero-bg.jpg) 72% top/cover no-repeat;display:flex;align-items:center}
.cp-hero::before{content:"";position:absolute;inset:0;background:rgba(5,16,9,0)}
html[data-theme=dark] .cp-hero::before{background:linear-gradient(90deg,rgba(5,16,9,.78),rgba(5,16,9,.45))}
.cp-hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:170px;background:linear-gradient(to bottom,transparent,var(--fade2) 95%);pointer-events:none}
.cp-hero-in{position:relative;z-index:2;width:100%;padding-top:96px;padding-bottom:140px}
.cp-hero-text{max-width:min(620px,50%)}
.cp-eyebrow{display:flex;align-items:center;gap:12px;font-size:13px;letter-spacing:.16em;font-weight:700;color:var(--head)}
.cp-eyebrow::after{content:"";width:34px;height:2px;background:linear-gradient(90deg,var(--accent),transparent)}
.cp-hero h1{font-size:clamp(40px,4.7vw,78px);line-height:1;margin:14px 0 16px;color:var(--head);font-weight:800;letter-spacing:-.03em}
.cp-hero h1 span{display:block}
.cp-hero h1 .cp-acc{position:relative;width:max-content;white-space:nowrap;padding-bottom:2px;background:linear-gradient(90deg,#14532d,#2f9a4f);-webkit-background-clip:text;background-clip:text;color:transparent}
html[data-theme=dark] .cp-hero h1 .cp-acc{background:linear-gradient(90deg,#8cf0a5,#3fc063);-webkit-background-clip:text;background-clip:text}
.cp-hero h1 .cp-acc::after{content:"";position:absolute;left:4%;right:2%;bottom:-6px;height:5px;border-radius:5px;background:linear-gradient(90deg,#14532d,#4ccb6f)}
.cp-sub{font-size:clamp(16px,1.5vw,21px);color:var(--muted);max-width:480px;margin:0 0 24px}
.cp-hero .cp-search{max-width:600px;padding:7px 7px 7px 22px}
.cp-hero .cp-search input{font-size:17px;padding:13px 8px}
.cp-hero .cp-search button{width:54px;height:54px;font-size:24px}
.cp-badges{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:30px;max-width:620px}
.cp-badge{display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.cp-badge i{flex:none;width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:var(--glass);border:1px solid var(--glassb);box-shadow:var(--shadow);color:var(--accent)}
.cp-badge svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.cp-badge b{display:block;font-size:14px;line-height:1.2;color:var(--head)}.cp-badge small{font-size:12px;color:var(--muted);line-height:1.2;display:block;margin-top:3px}
.cp-hero-art{display:none}

/* sections */
.cp-sec{padding:34px 0}.cp-sec h2{font-size:clamp(24px,3vw,32px);color:var(--head);margin:0 0 20px;letter-spacing:-.01em}
.cp-cats-sec{position:relative;z-index:3;margin-top:-120px;padding-top:0}
.cp-cats{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}
.cp-cat,.cp-tile{display:block;position:relative;text-decoration:none;color:var(--text);border-radius:24px;padding:20px 18px 18px;transition:transform .25s,box-shadow .25s}
.cp-cat:hover,.cp-tile:hover{transform:translateY(-6px);box-shadow:0 26px 54px rgba(20,83,45,.25),var(--glow)}
.cp-ico{display:block;width:62px;height:62px;border-radius:18px;overflow:hidden;margin-bottom:12px;box-shadow:0 8px 18px rgba(20,83,45,.2)}.cp-ico img{width:100%;height:100%;object-fit:cover;display:block}
.cp-cat h3,.cp-tile h3{margin:0 0 6px;font-size:18px;line-height:1.2;color:var(--head)}.cp-cat p,.cp-tile p{margin:0 0 30px;font-size:12.5px;color:var(--muted);line-height:1.4;padding-right:34px}
.cp-go{position:absolute;right:14px;bottom:14px;width:34px;height:34px;border-radius:50%;background:var(--glass);border:1px solid var(--glassb);display:grid;place-items:center;color:var(--accent);font-weight:700;transition:.25s}
.cp-cat:hover .cp-go,.cp-tile:hover .cp-go{background:var(--btn);color:#fff}
.cp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px}
.cp-tile p{margin-bottom:26px}
.cp-post{border-radius:22px;overflow:hidden}.cp-post-b{padding:18px}.cp-post h3{margin:4px 0 6px}.cp-post h3 a{color:var(--head);text-decoration:none}.cp-post small{color:var(--muted)}

/* gematria spotlight */
.cp-spot{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center;border-radius:30px;padding:32px;position:relative;overflow:hidden}
.cp-spot::before{content:"";position:absolute;width:420px;height:420px;right:-120px;top:-160px;background:radial-gradient(circle,rgba(76,203,111,.35),transparent 65%);pointer-events:none}
.cp-spot h2{margin-top:0}
.cp-gm{position:relative;background:rgba(47,154,79,.09);border:1px solid var(--line);border-radius:22px;padding:20px}
.cp-gm label{font-weight:700;color:var(--head);display:block;margin-bottom:8px}
.cp-gm-in{width:100%;padding:14px 18px;font-size:18px;border-radius:14px;border:2px solid var(--line);background:var(--bg);color:var(--text);font-family:inherit}
.cp-gm-in:focus{outline:none;border-color:var(--accent);box-shadow:var(--glow)}
.cp-gm-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:10px;margin:14px 0}
.cp-gm-grid div{background:var(--bg);border:1px solid var(--line);border-radius:14px;padding:10px;text-align:center}
.cp-gm-grid span{display:block;font-size:12px;color:var(--muted)}.cp-gm-grid b{font-size:27px;color:var(--accent)}
.cp-gm-foot{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--muted)}
.cp-gm-copy{background:linear-gradient(135deg,var(--btn2),var(--btn));color:#fff;border:0;border-radius:999px;padding:7px 18px;cursor:pointer}
.cp-gm-more{display:inline-block;margin-top:10px;font-weight:600}
.cp-gm-big{max-width:760px;margin:22px auto}

/* content pages */
.cp-crumbs{font-size:14px;color:var(--muted);padding:0 22px 14px}.cp-crumbs a{color:var(--muted)}
.cp-article{border-radius:26px;padding:clamp(20px,4vw,42px);margin-bottom:24px}
.cp-article h1{font-size:clamp(30px,5vw,46px);line-height:1.12;color:var(--head);margin-top:0;letter-spacing:-.02em}
.cp-article h2{color:var(--head);margin-top:1.6em}.cp-article h3{color:var(--head)}
.cp-meta{color:var(--muted);font-size:14px;margin-bottom:16px}
.cp-toc{background:rgba(47,154,79,.09);border:1px solid var(--line);border-radius:16px;padding:14px 22px;margin:18px 0}.cp-toc ol{margin:6px 0 0;padding-left:20px}
.cp-ad{margin:24px auto;text-align:center;min-height:30px;overflow:hidden;max-width:100%}.cp-ad small{display:block;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}
.navigation.pagination{margin:26px 0;text-align:center}.page-numbers{display:inline-block;padding:8px 15px;margin:2px;border-radius:12px;background:var(--glass);border:1px solid var(--glassb);text-decoration:none}.page-numbers.current{background:var(--btn);color:#fff}
.cp-clist{list-style:none;padding:0}.cp-clist li{margin-bottom:14px}
.cp-comments input[type=text],.cp-comments input[type=email],.cp-comments textarea{width:100%;padding:10px;border-radius:12px;border:1px solid var(--line);background:var(--bg);color:var(--text)}
.wp-block-image img{border-radius:14px}

/* footer */
.cp-footer{margin-top:50px;background:linear-gradient(160deg,#0d3b1c,#0a2a14);color:#d4e8d8;padding:46px 0 22px;border-radius:36px 36px 0 0}
.cp-footer a{color:#bfe6c8}.cp-fgrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}.cp-footer h4{color:#fff;margin-top:0}
.cp-footer ul{list-style:none;padding:0;margin:0}.cp-footer li{margin-bottom:7px}.cp-copy{border-top:1px solid rgba(255,255,255,.15);margin-top:26px;padding-top:16px;font-size:14px}

/* responsive */
@media(max-width:1180px){.cp-hero-text{max-width:min(620px,54%)}.cp-cats{grid-template-columns:repeat(3,1fr)}.cp-cats-sec{margin-top:-90px}}
@media(max-width:980px){
 .cp-header .cp-search{display:none}
 .cp-hero{aspect-ratio:auto;min-height:0;background:none;flex-direction:column;padding:6px 0 0}
 .cp-hero::after{display:none}
 .cp-hero-in{padding-top:96px;padding-bottom:0}.cp-hero-text{max-width:100%}
 .cp-hero-art{display:block;width:calc(100% - 44px);max-width:640px;margin:26px auto 0;border-radius:30px;box-shadow:0 24px 50px rgba(20,83,45,.3),var(--glow)}
 .cp-cats-sec{margin-top:30px}.cp-spot{grid-template-columns:1fr}
}
@media(max-width:760px){.cp-burger{display:block;margin-left:auto}.cp-bar{border-radius:26px;flex-wrap:wrap}.cp-nav{display:none;flex-basis:100%;order:5}.cp-nav.open{display:block}.cp-menu{flex-direction:column;width:100%;border-radius:20px}.cp-fgrid{grid-template-columns:1fr}.cp-cats{grid-template-columns:1fr 1fr}.cp-badges{grid-template-columns:1fr 1fr}body{background-attachment:scroll}}
@media(max-width:420px){.cp-cats{grid-template-columns:1fr}}
