/*
Theme Name: PulseVault Portal
Theme URI: https://thisisangrycloud.com/
Author: Willie Howe Technology, LLC
Author URI: https://williehowe.com/
Description: PulseVault companion portal theme (no sidebar). Top navigation appears under the site name when logged in. Includes light/dark mode.
Version: 0.2.1
License: GPLv2 or later
Text Domain: pulsevault-portal
*/

:root{
  --pv-bg:#0b1220;
  --pv-surface:#0f1a2e;
  --pv-surface-2:#111f3a;
  --pv-border:rgba(255,255,255,0.10);
  --pv-text:rgba(255,255,255,0.92);
  --pv-muted:rgba(255,255,255,0.70);
  --pv-link:rgba(120,180,255,0.95);
  --pv-link-hover:rgba(120,220,255,1);
  --pv-accent:rgba(0,160,255,0.95);
}

html[data-pv-theme="light"]{
  --pv-bg:#f6f8fc;
  --pv-surface:#ffffff;
  --pv-surface-2:#f3f6ff;
  --pv-border:rgba(10,20,40,0.12);
  --pv-text:rgba(10,20,40,0.92);
  --pv-muted:rgba(10,20,40,0.65);
  --pv-link:rgba(0,90,200,0.95);
  --pv-link-hover:rgba(0,90,200,1);
  --pv-accent:rgba(0,120,220,0.95);
}

*{box-sizing:border-box}
body{
  margin:0;
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;
  background:var(--pv-bg);
  color:var(--pv-text);
}
a{color:var(--pv-link);text-decoration:none}
a:hover{color:var(--pv-link-hover);text-decoration:underline}

.pv-wrap{max-width:980px;margin:0 auto;padding:18px 14px 40px}
.pv-header{
  position:sticky;top:0;z-index:50;
  backdrop-filter:saturate(180%) blur(12px);
  background:rgba(15,26,46,0.72);
  border-bottom:1px solid var(--pv-border);
}
html[data-pv-theme="light"] .pv-header{background:rgba(246,248,252,0.88)}
.pv-header-inner{max-width:980px;margin:0 auto;padding:12px 14px}
.pv-brand{display:flex;align-items:center;justify-content:space-between;gap:12px}
.pv-brand-left{display:flex;align-items:center;gap:12px}
.pv-logo{
  width:38px;height:38px;border-radius:12px;
  display:flex;align-items:center;justify-content:center;
  overflow:hidden;
  background:rgba(0,160,255,0.12);
  border:1px solid rgba(0,160,255,0.28);
}
.pv-logo img{display:block;width:38px;height:38px;object-fit:contain}
.pv-site-title{font-weight:800;letter-spacing:0.2px}
.pv-site-desc{font-size:13px;color:var(--pv-muted);margin-top:2px}
.pv-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}

.pv-nav{
  margin-top:10px;
  display:flex;gap:8px;flex-wrap:wrap;
}
.pv-nav a{
  display:inline-flex;align-items:center;gap:8px;
  padding:8px 10px;border-radius:12px;
  background:rgba(255,255,255,0.05);
  border:1px solid var(--pv-border);
  color:var(--pv-text);
  text-decoration:none;
}
html[data-pv-theme="light"] .pv-nav a{background:rgba(10,20,40,0.03)}
.pv-nav a:hover{border-color:rgba(0,160,255,0.45);text-decoration:none}
.pv-ico{width:18px;height:18px;display:inline-block}
.pv-ico svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

.pv-content{
  background:var(--pv-surface);
  border:1px solid var(--pv-border);
  border-radius:18px;
  box-shadow:0 10px 30px rgba(0,0,0,0.20);
}
.pv-content-inner{padding:22px}
.pv-main{margin-top:18px}

.pv-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:9px 12px;border-radius:12px;
  border:1px solid var(--pv-border);
  background:rgba(255,255,255,0.05);
  color:var(--pv-text);
  cursor:pointer;
  text-decoration:none;
}
html[data-pv-theme="light"] .pv-btn{background:rgba(10,20,40,0.03)}
.pv-btn:hover{border-color:rgba(0,160,255,0.45);text-decoration:none}
.pv-primary{background:rgba(0,160,255,0.15);border-color:rgba(0,160,255,0.35)}
.pv-primary:hover{background:rgba(0,160,255,0.20)}

.pv-footer{margin-top:16px;color:var(--pv-muted);font-size:13px;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.pv-beta{
  padding:10px 12px;border-radius:12px;
  border:1px solid rgba(240,180,73,0.55);
  background:rgba(240,180,73,0.12);
  margin:0 0 16px 0;
}
