/* Noviq premium layer — shared polish on top of per-page styles. */
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap");

:root{
  --grad:linear-gradient(135deg,#6f7dff 0%,#6a4bf6 100%);
  --grad-soft:linear-gradient(135deg,rgba(111,125,255,.14),rgba(106,75,246,.14));
  --shadow-card:0 1px 2px rgba(10,14,40,.05),0 14px 36px -20px rgba(10,14,40,.22);
  --shadow-btn:0 6px 18px -6px rgba(100,88,245,.45);
}
html[data-theme="dark"]{
  --shadow-card:0 1px 2px rgba(0,0,0,.35),0 16px 40px -22px rgba(0,0,0,.6);
  --shadow-btn:0 8px 22px -8px rgba(106,75,246,.55);
}

body{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  font-feature-settings:"cv02","cv03","cv04";
}
html[data-theme="light"] body{
  background:radial-gradient(1100px 520px at 85% -12%,rgba(100,88,245,.07),transparent 60%),
             radial-gradient(900px 480px at -10% 110%,rgba(111,125,255,.05),transparent 60%),var(--bg);
}
html[data-theme="dark"] body{
  background:radial-gradient(1100px 520px at 85% -12%,rgba(106,75,246,.12),transparent 60%),
             radial-gradient(900px 480px at -10% 110%,rgba(111,125,255,.07),transparent 60%),var(--bg);
}

.pagetitle{font-size:23px;letter-spacing:-.55px}
h1{letter-spacing:-.6px}

.card,.jrow,.crow,.vrow,.metric,.conv,.side,.main{box-shadow:var(--shadow-card)}
.jrow,.crow,.vrow,.conv{transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}
.jrow:hover,.crow:hover,.vrow:hover,.conv:hover{transform:translateY(-1px)}

.btn{background:var(--grad);border:0;box-shadow:var(--shadow-btn);transition:filter .12s,transform .12s}
.btn:hover{filter:brightness(1.07)}
.btn:active{transform:scale(.985)}
.btn.ghost,.btn.finish{background:transparent;color:var(--accent);border:1px solid var(--border2);box-shadow:none}
.btn.ghost:hover,.btn.finish:hover{border-color:var(--accent);filter:none}
.btn.done{background:var(--good);box-shadow:none}

.nav.on{background:var(--grad);box-shadow:0 6px 16px -6px rgba(100,88,245,.5)}
.rolepill,.pill.on{background:var(--grad-soft)}
.photo,.jicon.grad,.ava{background:var(--grad)!important;color:#fff}
.toggle.on{background:var(--grad)}
.exp .bar i,.bars .b{background:var(--grad)}
.metric .v{letter-spacing:-.8px}
.tag{border:1px solid transparent}

input:focus,textarea:focus,.search:focus-within{box-shadow:0 0 0 3px var(--accent-weak)}
.search:focus-within{border-color:var(--accent)}

*{scrollbar-width:thin;scrollbar-color:var(--border2) transparent}
*::-webkit-scrollbar{width:8px;height:8px}
*::-webkit-scrollbar-thumb{background:var(--border2);border-radius:8px}
*::-webkit-scrollbar-thumb:hover{background:var(--dim)}
*::-webkit-scrollbar-track{background:transparent}

.me .bub,.user .bub{background:var(--grad)}
.bub{box-shadow:0 1px 2px rgba(10,14,40,.06)}

.status,.badge{font-variant-numeric:tabular-nums}
