/*
Theme Name: Johnz Vault
Theme URI: https://johnzvault.com
Author: Johnz Vault
Description: A dark collector showroom with a vault archive, Charizard quest, diecast collections and journal. No paid plugins required.
Version: 1.0.1
Requires at least: 6.0
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: johnz-vault
*/

:root{--bg:#101111;--panel:#191a1b;--text:#f4f1eb;--muted:#a4a4a1;--orange:#ff743b;--line:#303131}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:5px}button{cursor:pointer}header{height:94px;display:flex;align-items:center;gap:32px;padding:0 4%;border-bottom:1px solid var(--line);background:#111212;position:relative;z-index:10}.brand{display:flex;align-items:center;gap:12px;font-size:19px;letter-spacing:1px;white-space:nowrap}.brand b{color:var(--orange)}.brand small{display:block;font-size:7px;letter-spacing:2px;margin-top:6px;color:#bcbcb8}.brand-icon{font-size:21px;font-weight:900;border:1px solid #595047;transform:skew(-5deg);padding:8px}.brand-icon span{color:var(--orange);font-size:18px}.brand img{width:52px;height:52px;object-fit:contain}nav{display:flex;gap:23px;margin-left:auto;font-size:12px;color:#b5b5b1}nav a.active,nav a:hover{color:var(--orange)}.nav-vault{border:1px solid #514137;padding:13px 17px;font-size:12px}.nav-vault span{margin-left:15px;color:var(--orange)}#mobile{display:none}.hero{min-height:660px;position:relative;display:flex;align-items:center;background:#171719 url('assets/hero.webp') center center/cover no-repeat;overflow:hidden}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,12,12,.96),rgba(11,12,12,.67) 38%,transparent 74%),linear-gradient(0deg,#101111,transparent 22%)}.hero-content{position:relative;width:56%;padding:60px 7%}.eyebrow{font-family:monospace;letter-spacing:2.4px;font-size:11px;text-transform:uppercase;color:var(--orange);display:flex;align-items:center;gap:10px}.eyebrow:before{content:'';width:22px;height:1px;background:var(--orange)}h1{font-size:clamp(52px,6.2vw,91px);line-height:.99;letter-spacing:-4px;font-weight:800;margin:27px 0}h1 em{font-style:normal;color:var(--orange)}.hero p{max-width:420px;font-size:15px;line-height:1.8;color:#bcbab6}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:29px}.button{display:inline-flex;gap:30px;align-items:center;padding:15px 22px;border:1px solid #55514c;background:transparent;color:var(--text);font-size:12px}.button.primary{color:#16120f;background:var(--orange);border-color:var(--orange);font-weight:700}.button:hover{filter:brightness(1.14)}.hero-label{position:absolute;right:6%;bottom:65px;display:flex;gap:12px;align-items:center;font:10px monospace;color:#b8b7b2;letter-spacing:2px}.hero-label span{width:7px;height:7px;background:var(--orange);border-radius:50%}.ticker{padding:20px 6%;display:flex;justify-content:space-between;font:11px monospace;letter-spacing:2px;border-bottom:1px solid var(--line);color:#c0bcb6}.ticker i{color:var(--orange)}.wrap{max-width:1320px;margin:auto;padding:75px 6%}.section-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:30px}.section-head h2{font-size:34px;letter-spacing:-1px;margin:13px 0 0}.section-head p{color:var(--muted);font-size:14px;line-height:1.7;max-width:530px}.text-link{font-size:12px;border-bottom:1px solid #555;padding-bottom:7px;white-space:nowrap}.text-link span{color:var(--orange);margin-left:17px}.collections{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.collection{min-height:330px;padding:26px;position:relative;background:radial-gradient(ellipse at 70% 30%,#473127,transparent 65%),#1b1b1b;border:1px solid #30302e;overflow:hidden;display:flex;flex-direction:column;justify-content:end}.collection:nth-child(2){background:radial-gradient(ellipse at 60% 30%,#333d43,transparent 65%),#181b1d}.collection:nth-child(3){background:radial-gradient(ellipse at 60% 30%,#3c3647,transparent 65%),#1c1b1f}.collection .art{position:absolute;top:25px;left:15%;width:75%;height:195px;transition:transform .3s}.collection:hover .art{transform:translateY(-8px) rotate(2deg)}.collection .num{position:absolute;top:23px;left:25px;color:#a49d94;font:11px monospace}.collection h3{font-size:25px;letter-spacing:-.5px;margin:0 0 8px}.collection p{font-size:12px;color:#b6b3ae;margin:0}.collection .arrow{position:absolute;bottom:28px;right:25px;color:var(--orange);font-size:23px}.stats{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);margin:40px 0 0}.stat{padding:26px;border-right:1px solid var(--line)}.stat:last-child{border:0}.stat strong{display:block;font-size:33px;font-weight:500;letter-spacing:-1px;margin-bottom:8px}.stat small{color:var(--muted);font:10px monospace;letter-spacing:1px;text-transform:uppercase}.note{font:10px monospace;color:#8c8c87;margin-top:13px;line-height:1.7}.quest-banner{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:radial-gradient(ellipse at 15% 60%,#36211b,transparent 60%),#161616}.quest-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:center}.quest-art{height:300px;display:flex;align-items:center;justify-content:center}.quest-art svg{height:290px;max-width:100%;filter:drop-shadow(0 20px 40px #070707)}.quest-copy h2{font-size:44px;letter-spacing:-1.6px;margin:20px 0}.quest-copy p{font-size:14px;color:var(--muted);line-height:1.8}.progress{height:4px;background:#444;margin:27px 0 11px}.progress span{display:block;height:100%;background:var(--orange)}.progress-label{display:flex;justify-content:space-between;color:#a8a5a0;font:11px monospace}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.item{border:1px solid var(--line);background:#171818;text-align:left;padding:0;color:inherit;transition:border-color .2s,transform .2s;min-width:0}.item:hover{border-color:#8c573e;transform:translateY(-3px)}.item-visual{height:215px;position:relative;background:radial-gradient(ellipse at 50% 40%,#2d2e2d,transparent 73%),#1c1d1d;display:flex;align-items:center;justify-content:center;padding:20px}.item-visual svg{width:100%;height:100%}.item-visual img{width:100%;height:100%;object-fit:contain}.badge{position:absolute;top:13px;left:13px;background:#27231f;padding:5px 7px;font:8px monospace;color:#e3b599;letter-spacing:1px}.item-info{padding:20px}.item-info small{font:9px monospace;color:var(--orange);letter-spacing:1.2px;text-transform:uppercase}.item-info h3{font-size:15px;line-height:1.4;margin:12px 0 7px;font-weight:500}.item-info p{font-size:11px;color:var(--muted);margin:0}.item-bottom{display:flex;justify-content:space-between;gap:5px;margin-top:20px;font:10px monospace;color:#b5b3ad}.item-bottom span:last-child{color:var(--orange)}.journal{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:25px}.story{border-top:1px solid #555;padding-top:21px}.story small{font:10px monospace;color:var(--orange)}.story h3{font-size:24px;font-weight:500;line-height:1.25;letter-spacing:-.5px}.story p{font-size:13px;color:var(--muted);line-height:1.7}.manifesto{padding:70px 6%;border-top:1px solid var(--line);text-align:center}.manifesto h2{font-size:clamp(32px,4vw,54px);letter-spacing:-1.5px;margin:18px 0}.manifesto p{color:var(--muted);font-size:14px;line-height:1.8;max-width:580px;margin:auto}.manifesto .eyebrow{justify-content:center}footer{padding:42px 6% 28px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:22px;align-items:center}footer .brand{font-size:16px}footer p{font-size:12px;color:var(--muted)}footer div{margin-left:auto;display:flex;gap:22px;font-size:11px}footer small{width:100%;font:9px monospace;color:#787976}.page-intro{padding-bottom:30px}.page-intro h1{font-size:60px;letter-spacing:-2px}.page-intro p{max-width:670px;color:var(--muted);line-height:1.8;font-size:14px}.toolbar{display:flex;flex-wrap:wrap;gap:10px;margin:27px 0}.toolbar input{flex:1;min-width:190px}.toolbar select{max-width:230px}.field input,.field select,.field textarea,.toolbar input,.toolbar select{background:#1e1f20;color:var(--text);border:1px solid #454646;border-radius:0;padding:13px;width:100%}.chips{display:flex;gap:9px;flex-wrap:wrap;margin:15px 0 27px}.chip{border:1px solid #444;background:none;color:#bcbcb8;font-size:11px;padding:10px 15px}.chip.active{border-color:var(--orange);color:var(--orange)}.empty{padding:70px 20px;text-align:center;border:1px dashed #454545;color:#aaa;grid-column:1/-1}.timeline{border-left:1px solid #555;padding-left:30px;margin:35px 0}.timeline article{position:relative;padding:0 0 40px;max-width:730px}.timeline article:before{content:'';position:absolute;left:-36px;top:2px;width:10px;height:10px;border:1px solid var(--orange);background:#121212}.timeline small{font:10px monospace;color:var(--orange)}.timeline h3{font-size:24px}.timeline p{color:var(--muted);line-height:1.7;font-size:14px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:23px;max-width:850px}.field label{display:block;color:#b0afaa;font-size:11px;margin-bottom:9px}.field textarea{min-height:100px}.field.full{grid-column:1/-1}.helper{font-size:11px;line-height:1.7;color:#9e9e98}.money{color:var(--orange)}dialog{background:#191a1a;color:var(--text);border:1px solid #57534f;padding:32px;max-width:850px;width:90%;max-height:90vh}dialog::backdrop{background:#000b;backdrop-filter:blur(7px)}.close{float:right;background:none;color:#ddd;border:1px solid #555;width:33px;height:33px;font-size:20px}.detail-layout{display:grid;grid-template-columns:1fr 1.25fr;gap:30px;margin-top:28px}.detail-layout .item-visual{height:320px}.detail-layout h2{font-size:30px;letter-spacing:-1px;margin:10px 0 20px}.details-list{display:grid;grid-template-columns:1fr 1fr;gap:13px}.details-list div{padding:10px 0;border-top:1px solid #353636}.details-list dt{color:#92938f;font:9px monospace;text-transform:uppercase;line-height:1.5}.details-list dd{font-size:12px;margin:7px 0 0}.detail-layout p{font-size:12px;line-height:1.7;color:#aaa}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#e1d8ca;color:#181818;padding:14px 25px;z-index:100;font-size:12px;display:none}.article-body{max-width:740px;color:#c5c3bd;line-height:1.9;font-size:16px}.article-body h2{color:var(--text);font-size:26px;margin-top:35px}.cover-note{color:#8f8e87;font:9px monospace;position:absolute;bottom:18px;right:6%;letter-spacing:1px}.row{display:flex;align-items:center;gap:15px;padding:20px;border:1px solid #373838;margin:12px 0}.row strong{flex:1}.row span{font:11px monospace;color:#aaa}.warning{padding:18px;border:1px solid #544233;color:#cdb49f;font-size:12px;line-height:1.7}.hidden{display:none!important}@media(min-width:1500px){.hero-content{padding-left:calc((100vw - 1320px)/2 + 80px)}}@media(max-width:1100px){header{gap:20px}nav{gap:14px}nav a{font-size:10px}.brand{font-size:16px}.nav-vault{font-size:10px;padding:12px}.hero-content{width:65%}.grid{grid-template-columns:repeat(3,1fr)}.quest-layout{gap:35px}.journal{grid-template-columns:1fr 1fr}.story:first-child{grid-column:1/-1}}@media(max-width:780px){header{height:78px;padding:0 5%}.brand small{font-size:6px}.nav-vault{margin-left:auto}#mobile{display:block;border:0;background:transparent;color:#ddd;font-size:23px;order:3}nav{display:none;position:absolute;top:78px;left:0;right:0;background:#181919;padding:25px;flex-direction:column;border-bottom:1px solid #444}nav.open{display:flex}nav a{font-size:14px}.hero{min-height:620px;background-position:66% center}.hero:before{background:linear-gradient(90deg,#0d0e0ef2,#0d0e0e91 65%,#0d0e0e44),linear-gradient(0deg,#101111,transparent 20%)}.hero-content{width:100%;padding:50px 7%}h1{font-size:66px}.hero p{max-width:330px}.hero-label{bottom:40px;left:7%;right:auto}.ticker{font-size:8px;gap:15px;flex-wrap:wrap}.wrap{padding:50px 6%}.collections{grid-template-columns:1fr}.collection{min-height:300px}.collection .art{left:35%;width:60%;top:35px}.collection h3{font-size:27px}.stats{grid-template-columns:1fr 1fr}.stat:nth-child(2){border-right:0}.stat:nth-child(-n+2){border-bottom:1px solid var(--line)}.stat{padding:22px}.stat strong{font-size:28px}.quest-layout{grid-template-columns:1fr;gap:10px}.quest-art{height:230px}.quest-art svg{height:220px}.quest-copy h2{font-size:37px}.grid{grid-template-columns:1fr 1fr;gap:12px}.item-visual{height:170px;padding:12px}.item-info{padding:15px}.item-info h3{font-size:13px}.item-info small{font-size:8px}.item-bottom{font-size:8px}.journal{grid-template-columns:1fr}.story:first-child{grid-column:auto}.section-head h2{font-size:29px}.section-head{align-items:start}.section-head .text-link{font-size:10px;margin-top:25px}.settings-grid,.detail-layout{grid-template-columns:1fr}.detail-layout .item-visual{height:210px}.page-intro h1{font-size:46px}footer div{margin-left:0;flex-wrap:wrap}footer p{margin:0}dialog{padding:20px}.cover-note{font-size:7px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}