/*
Theme Name: PauerTech Portfolio
Theme URI: https://pauertech.com
Author: PauerTech
Description: A modern dark technology portfolio with projects, writing, and contact pages.
Version: 2.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: pauertech
License: GNU General Public License v2 or later
*/
:root{--bg:#080e19;--bg2:#0e1728;--panel:#111f32;--line:#283950;--text:#f0f5ff;--muted:#a3b2ca;--blue:#66b6ff;--violet:#8b88ff;--max:1160px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.7 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}a{color:var(--blue);text-decoration:none}a:hover{color:#bce2ff}img{max-width:100%;height:auto}button,input,textarea{font:inherit}.container{width:min(var(--max),calc(100% - 48px));margin:auto}.site-header{position:sticky;top:0;z-index:30;background:#080e19ec;border-bottom:1px solid #25344a;backdrop-filter:blur(18px)}.header-inner{height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;gap:11px;align-items:center;font-weight:850;letter-spacing:.02em;font-size:22px;color:#fff}.brand-mark{display:grid;place-items:center;width:36px;height:36px;background:linear-gradient(135deg,#318bff,#7161ff);border-radius:11px;font-weight:900;font-size:21px;box-shadow:0 6px 25px #367aff44}.brand-dot{color:var(--blue)}.nav-menu{display:flex;align-items:center;gap:30px;list-style:none;margin:0;padding:0}.nav-menu a{font-size:14px;color:#c3d2e7;font-weight:650}.nav-menu .current-menu-item a,.nav-menu a:hover{color:#fff}.nav-toggle{display:none;color:#fff;border:1px solid var(--line);background:var(--panel);border-radius:10px;padding:6px 12px;cursor:pointer}.hero{position:relative;overflow:hidden;padding:112px 0 100px;background:radial-gradient(ellipse at 75% 25%,#204c8540,transparent 45%),radial-gradient(ellipse at 25% 75%,#4834ac27,transparent 50%)}.hero-inner{display:grid;grid-template-columns:1.25fr .9fr;align-items:center;gap:70px}.eyebrow{color:#80c2ff;text-transform:uppercase;letter-spacing:.21em;font-size:12px;font-weight:800}.hero h1{font-size:clamp(48px,6vw,84px);line-height:1.09;letter-spacing:-.065em;margin:18px 0 26px;font-weight:850}.gradient{background:linear-gradient(100deg,#79cfff,#8f92ff);background-clip:text;color:transparent}.hero p{font-size:18px;line-height:1.85;color:var(--muted);max-width:660px}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:11px;padding:12px 22px;border:1px solid #4a6685;font-weight:750;font-size:14px;transition:transform .2s,background .2s;cursor:pointer}.btn:hover{transform:translateY(-2px)}.btn-primary{background:linear-gradient(100deg,#298dff,#575df6);color:#fff;border:0}.btn-primary:hover{color:#fff}.btn-outline{color:#e0edff;background:#ffffff05}.hero-art{position:relative;min-height:340px;display:grid;place-items:center}.orb{position:absolute;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#5dc4ff,#3a4ae4 45%,#0e1b37 70%);filter:drop-shadow(0 0 55px #397cfa66);opacity:.85}.ring{position:absolute;border:1px solid #6bafff55;transform:rotate(-28deg);width:340px;height:160px;border-radius:50%}.ring.two{transform:rotate(37deg);width:345px;height:175px}.terminal{position:relative;width:min(340px,100%);padding:18px 21px;border:1px solid #446388;background:#0c192ce8;border-radius:16px;box-shadow:0 30px 75px #000b;backdrop-filter:blur(14px);transform:rotate(-4deg)}.window-dots{display:flex;gap:6px;margin-bottom:23px}.window-dots i{width:9px;height:9px;border-radius:50%;background:#fc7d88}.window-dots i:nth-child(2){background:#fbc768}.window-dots i:nth-child(3){background:#64dcaa}.code-line{font:13px/2 ui-monospace,SFMono-Regular,Consolas,monospace;color:#c0d8f3}.code-line span{color:#84d2ff}.code-line em{color:#98ebc0;font-style:normal}.code-line strong{color:#bba5ff}.section{padding:90px 0}.section.alt{background:#0c1524}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:35px}.section-head h2,.page-title{font-size:clamp(34px,4vw,49px);letter-spacing:-.045em;line-height:1.15;margin:12px 0}.section-intro,.page-lead{color:var(--muted);font-size:17px;max-width:720px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.card{padding:28px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(155deg,#14263b,#101929);transition:transform .2s,border-color .2s;min-width:0}.card:hover{transform:translateY(-4px);border-color:#4d75a1}.card-icon{display:grid;place-items:center;width:51px;height:51px;border-radius:13px;background:#193d68;color:#86c6ff;font-size:25px;margin-bottom:27px}.card h3{font-size:21px;letter-spacing:-.02em;margin:0 0 11px}.card p{color:var(--muted);font-size:14px;margin:0 0 20px}.card .tag,.pill{display:inline-block;padding:5px 10px;border:1px solid #385273;background:#17304a;border-radius:100px;font-size:11px;letter-spacing:.03em;color:#a9d5ff;margin:4px 6px 0 0}.link-more{font-size:14px;font-weight:750}.feature-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#101b2d}.feature-inner{display:grid;grid-template-columns:repeat(4,1fr);padding:23px 0;gap:16px}.feature{text-align:center;color:#b3c5e0;font-size:13px;font-weight:720}.feature b{display:block;color:#fff;font-size:17px}.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.about-panel{padding:35px;border:1px solid var(--line);background:linear-gradient(130deg,#1a3656,#151a3c);border-radius:22px;min-height:260px;display:flex;flex-direction:column;justify-content:center}.about-panel .giant{font-size:100px;line-height:1;margin-bottom:20px}.about-panel strong{font-size:26px}.about-panel small{color:#a7bfdf;margin-top:6px}.cta{padding:58px;border-radius:24px;background:linear-gradient(110deg,#143f73,#262b71);border:1px solid #4d71ac;display:flex;justify-content:space-between;align-items:center;gap:22px}.cta h2{font-size:32px;margin:0 0 8px}.cta p{color:#c1d7ef;margin:0}.footer{border-top:1px solid var(--line);padding:35px 0;color:var(--muted);font-size:13px}.footer-inner{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap}.page-hero{padding:75px 0 38px;background:radial-gradient(ellipse at 80% 20%,#2d477e30,transparent 55%)}.prose{max-width:850px;color:#c4d3e8;font-size:17px}.prose h2,.prose h3{color:#fff;margin-top:38px}.prose p{margin-bottom:20px}.post-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.post-card{border:1px solid var(--line);border-radius:18px;background:var(--panel);padding:30px}.post-card h2{margin:8px 0 14px;font-size:24px}.post-card p{color:var(--muted)}.post-meta{font-size:12px;color:#8fa5c2}.pagination{margin-top:35px}.pagination a,.pagination span{padding:9px 14px;display:inline-block;border-radius:6px;border:1px solid var(--line);margin:4px}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:50px}.contact-form{background:#111e30;border:1px solid var(--line);border-radius:19px;padding:30px}.contact-form label{display:block;font-weight:700;font-size:13px;margin-bottom:7px}.contact-form input,.contact-form textarea{display:block;width:100%;background:#081423;border:1px solid #3b4b63;border-radius:10px;color:white;padding:12px 14px;margin:0 0 20px}.contact-form textarea{height:150px;resize:vertical}.notice{padding:14px 18px;border-radius:9px;background:#183d2f;border:1px solid #3d8068;margin-bottom:20px}.notice.error{background:#491d2a;border-color:#a94a63}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.site-content{min-height:45vh}.wp-block-image img{border-radius:12px}.alignwide{max-width:1160px;margin-left:auto;margin-right:auto}.alignfull{width:100%}@media(max-width:850px){.hero-inner,.split,.contact-grid{grid-template-columns:1fr}.hero{padding:66px 0}.hero-art{min-height:280px;order:-1}.cards{grid-template-columns:1fr 1fr}.feature-inner{grid-template-columns:repeat(2,1fr)}.nav-toggle{display:block}.nav-menu{display:none;position:absolute;top:78px;left:0;right:0;background:#0c1625;border-bottom:1px solid var(--line);padding:22px 24px;flex-direction:column;align-items:start;gap:18px}.nav-menu.open{display:flex}.cta{padding:30px;flex-direction:column;align-items:start}}@media(max-width:580px){.container{width:min(100% - 34px,var(--max))}.cards,.post-grid{grid-template-columns:1fr}.section{padding:65px 0}.hero h1{font-size:48px}.hero-art{min-height:230px}.orb{width:190px;height:190px}.terminal{width:270px}.ring,.ring.two{width:270px}.cta h2{font-size:26px}}

/* Projects page: paired cards per focus area */
.projects-pair{grid-template-columns:repeat(2,minmax(0,1fr))}.project-group{margin-top:74px}@media(max-width:580px){.projects-pair{grid-template-columns:1fr}.project-group{margin-top:56px}}

/* Portfolio v1.3: detail page links and reader-friendly project templates */
.project-title-link{color:var(--text)}.project-title-link:hover,.project-title-link:focus-visible{color:var(--blue)}
.project-card-action{margin:20px 0 0 !important}.project-card-action a{display:inline-block;padding:4px 0}
.project-stack{margin:16px 0 25px}.project-stack .tag{display:inline-block;padding:6px 12px;border-radius:99px;border:1px solid #385273;background:#17304a;color:#c3e2ff;font-size:12px;margin-right:8px}
.project-detail-body{max-width:860px}.project-detail-body h2{font-size:clamp(24px,3vw,30px);line-height:1.3}.project-detail-body p{line-height:1.85}
.project-detail-footer{margin-top:48px;border-top:1px solid var(--line);padding-top:32px}
.project-title-link:focus-visible,.link-more:focus-visible{outline:3px solid #b6e2ff;outline-offset:4px;border-radius:3px}

/* Portfolio v1.4: documentation and infrastructure callouts */
.project-detail-body ul{padding-left:1.45em;margin:12px 0 25px}.project-detail-body li{margin:9px 0;line-height:1.8}.project-detail-body strong{color:#e7f5ff}.project-detail-body a{text-decoration:underline;text-underline-offset:3px}
.project-detail-body .wp-block-quote{border-left:3px solid var(--blue);padding:10px 22px;margin:27px 0;color:#c7d9ee;background:#14243a;border-radius:0 12px 12px 0}

/* v2.0 — final release refinements: usability, readability and small screens */
:focus-visible{outline:3px solid #8dd6ff;outline-offset:3px}
.skip-link{position:fixed;z-index:1000;top:-120px;left:12px;background:#fff;color:#101625;padding:12px 18px;border-radius:10px;font-weight:700}
.skip-link:focus{top:12px}
.project-card{display:flex;flex-direction:column}
.project-card .project-card-action{margin-top:auto!important;padding-top:18px}
.project-card .project-tags{margin-bottom:12px}
.three-principles{margin-top:65px}
.content-extra{margin-top:42px}
.project-page-extra{margin-top:65px}
.form-disclosure{color:var(--muted);font-size:13px;line-height:1.7;margin:0 0 18px}
.prose{overflow-wrap:anywhere}
.prose ul,.prose ol{padding-left:1.5rem}
.prose li{margin:.55rem 0}
.prose pre{background:#081523;padding:16px;border-radius:10px;overflow-x:auto}
.prose code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}
.prose table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse}
.prose th,.prose td{border:1px solid var(--line);padding:10px}
.contact-form input:focus,.contact-form textarea:focus{outline:3px solid #568fff;outline-offset:2px}
.page-hero .search-form{margin-top:24px;display:flex;flex-wrap:wrap;gap:10px}
.page-hero .search-field{border:1px solid var(--line);background:var(--panel);color:#fff;border-radius:9px;padding:10px 14px}
.page-hero .search-submit{background:#2b7de2;color:#fff;border:0;border-radius:9px;padding:10px 18px;cursor:pointer}
@media(max-width:850px){.nav-menu{max-height:calc(100vh - 78px);overflow-y:auto}.hero-inner{gap:25px}}
@media(max-width:580px){.hero h1{font-size:clamp(42px,11vw,54px)}.hero-art{overflow:hidden}.card{padding:23px}.page-hero{padding:55px 0 32px}.cta{padding:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
