:root{
  --ink:#141820; --ink2:#1b2027; --bg:#12161d;
  --head:#f4f1ea; --body:#d7d3c8; --muted:#9aa1ac;
  --brass:#d6bc82; --brass-deep:#b9985a; --brass-soft:#e6cf9a;
  --line:rgba(214,188,130,0.16);
  --display:'Bodoni Moda',Georgia,serif; --mono:'JetBrains Mono',ui-monospace,monospace;
  --sans:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --G:15px; --arm:64px;
  --W:340px; --H:calc(var(--W) * 1.25); --top:58px; --vx:calc(var(--W) - var(--arm)); --c:16px;
}
*{margin:0;padding:0;box-sizing:border-box}
html,body{height:100%}
body{font-family:var(--sans);color:var(--body);background:var(--bg);height:100vh;overflow:hidden;position:relative;-webkit-font-smoothing:antialiased}
a{color:var(--brass);text-decoration:none}
a:hover{color:var(--brass-soft)}

/* background field (fixed — never scrolls) */
.field{position:fixed;inset:0;z-index:0;pointer-events:none}
.field::before{content:'';position:absolute;inset:0;
  background:radial-gradient(120% 120% at 74% 42%,rgba(214,188,130,0.09),transparent 52%),
            radial-gradient(90% 90% at 10% 98%,rgba(185,152,90,0.06),transparent 55%),
            linear-gradient(165deg,var(--ink2),var(--ink) 64%)}
.field::after{content:'';position:absolute;inset:0;opacity:.28;
  background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);
  background-size:64px 64px;
  -webkit-mask-image:radial-gradient(120% 100% at 50% 55%,#000 26%,transparent 74%);mask-image:radial-gradient(120% 100% at 50% 55%,#000 26%,transparent 74%)}

/* screen corner brackets — top-right is the anchor's job, so only 3 */
.brackets{position:fixed;inset:16px;z-index:2;pointer-events:none}
.brackets i{position:absolute;width:20px;height:20px;opacity:.5}
.brackets .tl{left:0;top:0;border-left:1px solid var(--brass-deep);border-top:1px solid var(--brass-deep)}
.brackets .bl{left:0;bottom:0;border-left:1px solid var(--brass-deep);border-bottom:1px solid var(--brass-deep)}
.brackets .br{right:0;bottom:0;border-right:1px solid var(--brass-deep);border-bottom:1px solid var(--brass-deep)}

/* ── MAIN DISPLAY VIEWPORT — the console screen; scrolls internally, shell stays put ── */
.viewport{position:fixed;inset:0;z-index:5;overflow-y:auto;overflow-x:hidden;
  padding:4.8rem clamp(1.5rem,6vw,6rem) 5.6rem;
  /* content dissolves at the framed screen edges — enters from the unviewed void, fades back into it */
  --edge:16px; --ramp:1.25rem; /* --edge aligns the dissolve to the corner-bracket frame; --ramp is the crisp fade */
  -webkit-mask-image:linear-gradient(to bottom, transparent 0, transparent var(--edge), #000 calc(var(--edge) + var(--ramp)), #000 calc(100% - var(--edge) - var(--ramp)), transparent calc(100% - var(--edge)), transparent 100%);
          mask-image:linear-gradient(to bottom, transparent 0, transparent var(--edge), #000 calc(var(--edge) + var(--ramp)), #000 calc(100% - var(--edge) - var(--ramp)), transparent calc(100% - var(--edge)), transparent 100%)}
.viewport::-webkit-scrollbar{width:10px}
.viewport::-webkit-scrollbar-thumb{background:linear-gradient(var(--brass-deep),var(--brass));border-radius:6px;border:3px solid var(--bg)}
.viewport::-webkit-scrollbar-track{background:transparent}

/* pages (one active at a time — client-side swap, the anchor never re-renders) */
.page{display:none;max-width:940px}
.page.active{display:block;animation:fadein .4s ease}
@keyframes fadein{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

.eyebrow{font-family:var(--mono);font-size:.66rem;letter-spacing:.24em;text-transform:uppercase;color:var(--brass);display:flex;align-items:center;gap:.6rem;margin-bottom:1.3rem}
.eyebrow::before{content:'';width:26px;height:1px;background:var(--brass-deep)}
.page h1{font-family:var(--display);font-weight:600;color:#f7f4ec;font-size:clamp(2.3rem,4.8vw,4rem);line-height:1.03;letter-spacing:-.02em;margin-bottom:1.2rem;text-wrap:balance}
.page h1 em{font-style:italic;font-weight:500;color:var(--brass)}
.lead{font-size:1.12rem;line-height:1.6;color:var(--body);max-width:60ch;margin-bottom:1.6rem}
.page h2{font-family:var(--display);font-size:clamp(1.4rem,2.6vw,1.95rem);font-weight:600;color:var(--head);margin:2.4rem 0 .9rem;letter-spacing:-.01em}
.page h3{font-family:var(--display);font-size:1.14rem;font-weight:600;color:var(--head);margin-bottom:.35rem}
.page p{font-size:1rem;line-height:1.75;color:var(--body);max-width:64ch;margin-bottom:1.05rem}
.page p strong{color:var(--head)}
.page p em{color:var(--brass-soft);font-style:italic}

.acts{display:flex;gap:.9rem;flex-wrap:wrap;margin-top:1.8rem}
.cta{font-family:var(--sans);font-weight:700;font-size:.92rem;padding:.85rem 1.5rem;border-radius:9px;cursor:pointer;border:1px solid transparent;text-decoration:none;display:inline-block}
.cta.primary{background:var(--brass);color:var(--ink);box-shadow:0 8px 26px rgba(214,188,130,.22)}
.cta.ghost{background:transparent;color:var(--head);border-color:rgba(244,241,234,.22)}
.cta.ghost:hover{border-color:var(--brass)}

/* home 3-step readouts */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.6rem;max-width:860px}
.step{background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.01));border:1px solid var(--line);border-radius:12px;padding:1.2rem 1.1rem}
.step .n{font-family:var(--mono);font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:var(--brass);margin-bottom:.7rem}
.step h4{font-family:var(--display);font-size:1.06rem;font-weight:600;color:var(--head);margin-bottom:.4rem}
.step p{font-size:.85rem;line-height:1.55;color:var(--muted);margin:0}
@media(max-width:760px){.steps{grid-template-columns:1fr}}

/* about team grid */
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem 2.2rem;margin-top:.6rem}
.grid2 .cell p{font-size:.92rem;color:var(--muted);margin:0}
@media(max-width:760px){.grid2{grid-template-columns:1fr}}

/* home masthead — company nameplate */
.masthead{display:inline-flex;flex-direction:column;gap:.5rem;margin-bottom:1.7rem}
.masthead b{font-family:var(--mono);font-weight:500;font-size:.72rem;letter-spacing:.34em;text-transform:uppercase;color:var(--brass-soft)}
.masthead .rule{height:1px;width:100%;background:linear-gradient(90deg,var(--brass-deep),transparent)}

/* ── Log in / Sign up — space-age glass ── */
#page-login{max-width:none}
/* fill exactly the viewport's available height (100vh minus its 4.8rem+5.6rem padding) so a centered card never creates scroll */
#page-login.active{display:grid;place-items:center;min-height:calc(100vh - 10.4rem);position:relative}
#page-login .orbit{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;z-index:0}
#page-login .orbit i{position:absolute;border-radius:50%;border:1px solid rgba(214,188,130,.12)}
#page-login .orbit i:nth-child(1){width:min(640px,82vw);height:min(640px,82vw)}
#page-login .orbit i:nth-child(2){width:min(450px,60vw);height:min(450px,60vw);border-color:rgba(214,188,130,.16)}
#page-login .halo{position:absolute;width:min(520px,80vw);height:min(380px,62vh);border-radius:50%;pointer-events:none;z-index:0;
  background:radial-gradient(circle,rgba(214,188,130,.20),transparent 66%);filter:blur(30px)}
.auth{position:relative;z-index:1;width:min(440px,92vw);padding:2.3rem 2.2rem;border-radius:18px;
  background:linear-gradient(180deg,rgba(36,42,54,.96),rgba(20,24,32,.94));
  border:1px solid rgba(214,188,130,.28);
  box-shadow:0 40px 90px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.06)}
.auth .eyebrow{margin-bottom:.9rem}
.auth-title{font-family:var(--display);font-size:1.8rem;font-weight:600;color:#f7f4ec;letter-spacing:-.01em;margin-bottom:.35rem}
.auth-sub{font-size:.9rem;color:var(--muted);line-height:1.5;margin-bottom:1.4rem;max-width:34ch}
.auth-tabs{display:flex;gap:.3rem;padding:.28rem;background:rgba(0,0,0,.28);border:1px solid var(--line);border-radius:11px;margin-bottom:1.3rem}
.atab{flex:1;font-family:var(--mono);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);
  background:transparent;border:none;padding:.6rem;border-radius:8px;cursor:pointer;transition:.2s}
.atab.on{background:linear-gradient(180deg,rgba(214,188,130,.16),rgba(214,188,130,.08));color:var(--brass-soft);box-shadow:inset 0 0 0 1px rgba(214,188,130,.25)}
.auth-form{display:flex;flex-direction:column;gap:.85rem}
.afield{display:flex;flex-direction:column;gap:.35rem}
.afield span{font-family:var(--mono);font-size:.58rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.afield input{width:100%;background:rgba(0,0,0,.26);border:1px solid var(--line);border-radius:10px;padding:.72rem .85rem;
  color:var(--head);font-family:var(--sans);font-size:.95rem;transition:border-color .2s,box-shadow .2s;outline:none}
.afield input::placeholder{color:#6b7280}
.afield input:focus{border-color:var(--brass);box-shadow:0 0 0 3px rgba(214,188,130,.14)}
.auth-submit{width:100%;margin-top:.4rem;text-align:center}
.auth-alt{font-size:.82rem;color:var(--muted);margin-top:1.1rem;text-align:center}
.auth-alt a{color:var(--brass-soft);text-decoration:none;border-bottom:1px solid rgba(214,188,130,.3);cursor:pointer}
#page-login[data-mode="login"] .signup-only{display:none}
.forgot{align-self:flex-end;font-family:var(--mono);font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;color:var(--brass-soft);text-decoration:none;cursor:pointer;margin-top:-.25rem;border-bottom:1px solid rgba(214,188,130,.3)}
.reset-only{display:none}
.reset-only a{color:var(--brass-soft);text-decoration:none;cursor:pointer;border-bottom:1px solid rgba(214,188,130,.3)}
#page-login[data-mode="signup"] .forgot{display:none}
#page-login[data-mode="reset"] .signup-only,
#page-login[data-mode="reset"] .password-row,
#page-login[data-mode="reset"] .auth-tabs,
#page-login[data-mode="reset"] .forgot,
#page-login[data-mode="reset"] .auth-alt:not(.reset-only){display:none}
#page-login[data-mode="reset"] .reset-only{display:block}

/* ── brain-core sphere: dead-center, behind everything; wakes when the HUB opens ── */
.core{position:fixed;inset:0;z-index:1;pointer-events:none;opacity:0;transition:opacity .9s ease;overflow:hidden}
.core.on{opacity:.32}
.core .orb{position:relative;width:min(460px,46vw);height:min(460px,46vw);border-radius:50%;
  background:radial-gradient(circle at 50% 46%,rgba(230,207,154,.48),rgba(214,188,130,.15) 42%,transparent 70%)}
.core .orb::before,.core .orb::after{content:'';position:absolute;border-radius:50%;border:1px solid rgba(214,188,130,.16);inset:8%}
.core .orb::after{inset:26%;border-color:rgba(214,188,130,.1)}
.core.on .orb{animation:corepulse 5s ease-in-out infinite}
@keyframes corepulse{0%,100%{transform:scale(.97)}50%{transform:scale(1.03)}}
/* real clip later: <video class="orb-vid" autoplay muted loop playsinline> replaces .orb (black bg drops via screen) */
.orb-vid{position:absolute;left:0;bottom:0;transform:translate(-50%,50%);width:min(1860px,172vw);height:auto;mix-blend-mode:screen;pointer-events:none;filter:blur(1.4px);
  -webkit-mask:radial-gradient(circle at 50% 50%,#000 58%,transparent 92%);mask:radial-gradient(circle at 50% 50%,#000 58%,transparent 92%)}
@media (prefers-reduced-motion:reduce){.core.on .orb{animation:none}}

/* ── HUB ── */
#page-hub{max-width:1000px}
.hub-head{margin-bottom:2rem}
.spokes{display:grid;grid-template-columns:1fr 1fr;gap:1rem;max-width:760px}
.spoke{display:flex;align-items:center;gap:1rem;padding:1.1rem 1.2rem;border-radius:14px;text-decoration:none;cursor:pointer;
  background:linear-gradient(180deg,rgba(28,34,44,.95),rgba(19,23,31,.93));border:1px solid var(--line);box-shadow:0 10px 30px rgba(0,0,0,.35);transition:border-color .2s,transform .2s,background .2s}
.spoke:hover{border-color:var(--brass);transform:translateY(-2px);background:linear-gradient(180deg,rgba(40,46,58,.97),rgba(24,29,38,.95))}
.spoke-ic{width:40px;height:40px;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 1px 2px rgba(0,0,0,.5))}
.spoke-ic.mono{display:grid;place-items:center;border:1px solid var(--brass-deep);border-radius:10px;color:var(--brass);font-family:var(--display);font-size:1.15rem}
.spoke-txt{flex:1;min-width:0}
.spoke-txt b{display:block;font-family:var(--display);font-size:1.12rem;font-weight:600;color:var(--head);letter-spacing:-.01em}
.spoke-txt span{font-size:.84rem;color:var(--muted)}
.spoke-status{font-family:var(--mono);font-size:.54rem;letter-spacing:.14em;text-transform:uppercase;padding:.25rem .5rem;border-radius:5px;color:var(--brass-soft);border:1px solid var(--line);white-space:nowrap;align-self:flex-start}
.spoke-status.live{color:#8fdca0;border-color:rgba(143,220,160,.3)}
@media(max-width:760px){.spokes{grid-template-columns:1fr}}

/* ── OriginProof workstation ── */
#page-originproof{max-width:1160px}
.op-head{margin-bottom:1.3rem}
.op-head h1{margin-bottom:.5rem}
.op-status{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem 1.4rem;font-family:var(--mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:.4rem}
.op-status b{color:var(--brass-soft);font-weight:500}
.op-status a{color:var(--brass-soft);text-decoration:none;border-bottom:1px solid rgba(214,188,130,.3);cursor:pointer}
.op-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:1.1rem;align-items:start}
@media(max-width:900px){.op-grid{grid-template-columns:1fr}}
.panel{background:linear-gradient(180deg,rgba(28,34,44,.92),rgba(19,23,31,.9));border:1px solid var(--line);border-radius:16px;padding:1.3rem 1.35rem;box-shadow:0 14px 36px rgba(0,0,0,.35)}
.panel .pcap{font-family:var(--mono);font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:var(--brass);margin-bottom:1rem;display:flex;justify-content:space-between;align-items:center}
.pcap .live{display:flex;align-items:center;gap:.45rem;color:#8fdca0}
.pcap .live .d{width:6px;height:6px;border-radius:50%;background:#8fdca0;box-shadow:0 0 7px #8fdca0}
/* seal press */
.dropzone{border:1.5px dashed rgba(214,188,130,.35);border-radius:12px;padding:2rem 1.2rem;text-align:center;transition:border-color .2s,background .2s;cursor:pointer}
.dropzone:hover{border-color:var(--brass);background:rgba(214,188,130,.05)}
.dropzone svg{width:32px;height:32px;stroke:var(--brass);fill:none;stroke-width:1.4;margin-bottom:.6rem}
.dropzone .big{font-family:var(--display);font-size:1.12rem;color:var(--head);margin-bottom:.25rem}
.dropzone .sub{font-size:.8rem;color:var(--muted)}
.seal-cta{margin-top:.95rem;width:100%;text-align:center}
.pipe{margin-top:1.2rem}
.pstage{display:flex;align-items:center;gap:.7rem;padding:.48rem 0;border-bottom:1px solid rgba(255,255,255,.04)}
.pstage:last-child{border-bottom:none}
.pstage .dot{width:8px;height:8px;border-radius:50%;background:#3b424d;flex-shrink:0;transition:.3s}
.pstage.done .dot{background:#8fdca0;box-shadow:0 0 8px rgba(143,220,160,.6)}
.pstage.active .dot{background:var(--brass);box-shadow:0 0 8px rgba(214,188,130,.7);animation:pblink 1s infinite}
@keyframes pblink{50%{opacity:.35}}
.pstage .k{font-family:var(--mono);font-size:.74rem;color:var(--body);flex:1}
.pstage .std{font-family:var(--mono);font-size:.56rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.pstage.done .std,.pstage.active .std{color:var(--brass-soft)}
/* side: receipt + recent */
.op-side{display:flex;flex-direction:column;gap:1.1rem}
.rc-file{font-family:var(--mono);font-size:.8rem;color:var(--head);padding:.55rem .7rem;background:rgba(0,0,0,.28);border:1px solid var(--line);border-radius:8px;margin-bottom:.7rem;display:flex;align-items:center;gap:.55rem}
.rc-file svg{width:15px;height:15px;stroke:var(--brass);fill:none;stroke-width:1.6;flex-shrink:0}
.rc-line{font-family:var(--mono);font-size:.66rem;color:var(--muted);line-height:1.95;word-break:break-all}
.rc-line b{color:var(--brass-soft);font-weight:500}
.rc-anchor{margin-top:.7rem;padding-top:.7rem;border-top:1px solid var(--line);display:flex;align-items:center;gap:.5rem;font-family:var(--mono);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--brass-soft)}
.rc-anchor svg{width:14px;height:14px;stroke:#8fdca0;fill:none;stroke-width:2}
.rc-actions{margin-top:.9rem;display:flex;gap:.6rem}
.rc-actions .cta{font-size:.8rem;padding:.6rem 1rem}
.receipt-empty{font-size:.82rem;color:var(--muted);line-height:1.6;padding:.5rem 0}
.rrow{display:flex;align-items:center;gap:.7rem;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.04)}
.rrow:last-child{border-bottom:none}
.rrow .rnm{flex:1;color:var(--body);font-family:var(--mono);font-size:.72rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rrow .rtm{color:var(--muted);font-family:var(--mono);font-size:.58rem;white-space:nowrap}
.rrow .rok{color:#8fdca0;font-family:var(--mono);font-size:.56rem;letter-spacing:.1em;text-transform:uppercase}

.pcap-link{color:var(--brass-soft);text-decoration:none;border-bottom:1px solid rgba(214,188,130,.3);cursor:pointer;font-size:.56rem;letter-spacing:.12em}

/* ── OriginProof · My Seals (sealed library / file system) ── */
#page-seals{max-width:1160px}
.seals-head{margin-bottom:1.1rem}
.seals-head h1{margin-bottom:.4rem}
.seals-sub{font-family:var(--mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.seals-sub b{color:var(--brass-soft);font-weight:500}
.seals-toolbar{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;margin-bottom:.9rem}
.seals-search{flex:1;min-width:220px;display:flex;align-items:center;gap:.6rem;background:rgba(0,0,0,.26);border:1px solid var(--line);border-radius:10px;padding:.58rem .85rem}
.seals-search svg{width:15px;height:15px;stroke:var(--muted);fill:none;stroke-width:1.7;flex-shrink:0}
.seals-search input{flex:1;background:transparent;border:none;outline:none;color:var(--head);font-family:var(--sans);font-size:.9rem}
.seals-search input::placeholder{color:#6b7280}
.fchip{font-family:var(--mono);font-size:.58rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);background:transparent;border:1px solid var(--line);padding:.5rem .75rem;border-radius:8px;cursor:pointer;transition:.2s}
.fchip:hover{color:var(--brass-soft)}
.fchip.on{background:linear-gradient(180deg,rgba(214,188,130,.16),rgba(214,188,130,.08));color:var(--brass-soft);border-color:rgba(214,188,130,.3)}
.seals-list{border:1px solid var(--line);border-radius:14px;background:linear-gradient(180deg,rgba(28,34,44,.92),rgba(19,23,31,.9));overflow:hidden}
.lhead,.seal-row{display:grid;grid-template-columns:38px minmax(0,1fr) 152px 104px 96px;align-items:center;gap:1rem;padding:.72rem 1.1rem}
.lhead{font-family:var(--mono);font-size:.55rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line)}
.seal-row{border-bottom:1px solid rgba(255,255,255,.04);transition:background .15s}
.seal-row:last-child{border-bottom:none}
.seal-row:hover{background:rgba(214,188,130,.05)}
.sr-ic{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:rgba(214,188,130,.08);border:1px solid var(--line)}
.sr-ic svg{width:15px;height:15px;stroke:var(--brass);fill:none;stroke-width:1.6}
.sr-name{min-width:0}
.sr-name b{display:block;font-family:var(--mono);font-size:.76rem;color:var(--head);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}
.sr-name span{font-family:var(--mono);font-size:.58rem;color:var(--muted)}
.sr-date{font-family:var(--mono);font-size:.66rem;color:var(--muted)}
.sr-status{font-family:var(--mono);font-size:.55rem;letter-spacing:.1em;text-transform:uppercase;color:#8fdca0;display:flex;align-items:center;gap:.4rem}
.sr-status .d{width:5px;height:5px;border-radius:50%;background:#8fdca0;box-shadow:0 0 6px #8fdca0}
.sr-actions{display:flex;gap:.35rem;justify-content:flex-end}
.sr-actions button{width:28px;height:28px;border-radius:7px;display:grid;place-items:center;background:transparent;border:1px solid transparent;cursor:pointer;transition:.15s}
.sr-actions button:hover{border-color:var(--line);background:rgba(214,188,130,.1)}
.sr-actions svg{width:14px;height:14px;stroke:var(--brass-soft);fill:none;stroke-width:1.7}
.seals-empty{display:none;padding:2rem 1.1rem;text-align:center;font-family:var(--mono);font-size:.72rem;color:var(--muted)}
@media(max-width:760px){.lhead,.seal-row{grid-template-columns:32px minmax(0,1fr) 88px;gap:.7rem}.lhead .h-date,.seal-row .sr-date,.sr-actions{display:none}}

/* ── VerdictSeal workstation ── */
#page-verdictseal{max-width:1160px}
.op-status .beta{color:var(--brass-soft);border:1px solid rgba(214,188,130,.3);padding:.14rem .5rem;border-radius:5px}
.vfield{margin-bottom:.8rem}
.vfield>label{display:block;font-family:var(--mono);font-size:.58rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:.35rem}
.vfield input,.vfield textarea{width:100%;background:rgba(0,0,0,.26);border:1px solid var(--line);border-radius:10px;padding:.7rem .85rem;color:var(--head);font-family:var(--sans);font-size:.92rem;outline:none}
.vfield textarea{min-height:92px;line-height:1.5;resize:vertical}
.vfield input::placeholder,.vfield textarea::placeholder{color:#6b7280}
.vfield input:focus,.vfield textarea:focus{border-color:var(--brass);box-shadow:0 0 0 3px rgba(214,188,130,.14)}
.vrow2{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}
@media(max-width:600px){.vrow2{grid-template-columns:1fr}}
.rc-verdict{font-family:var(--sans);font-style:italic;font-size:.92rem;color:var(--head);line-height:1.5;padding:.7rem .85rem;background:rgba(0,0,0,.22);border:1px solid var(--line);border-radius:8px;margin-bottom:.75rem}
/* restacked seal panel: full-width verdict + options, horizontal pipeline */
.vseal-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:1.4rem;align-items:start}
@media(max-width:820px){.vseal-grid{grid-template-columns:1fr}}
.vseal-grid textarea{min-height:150px}
.vopts{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}
@media(max-width:520px){.vopts{grid-template-columns:1fr}}
.vfield select{width:100%;background:rgba(0,0,0,.26);border:1px solid var(--line);border-radius:10px;padding:.7rem .85rem;color:var(--head);font-family:var(--sans);font-size:.9rem;outline:none;-webkit-appearance:none;appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23d6bc82' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .8rem center}
.vfield select:focus{border-color:var(--brass);box-shadow:0 0 0 3px rgba(214,188,130,.14)}
.vseal-foot{display:flex;align-items:center;gap:1rem;margin-top:1.2rem;flex-wrap:wrap}
.vseal-foot .cta{flex-shrink:0;min-width:170px}
.hpipe{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;flex:1;min-width:260px}
.hstage{display:flex;align-items:center;gap:.45rem;padding:.42rem .7rem;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.02)}
.hstage .dot{width:7px;height:7px;border-radius:50%;background:#3b424d;transition:.3s}
.hstage.done .dot{background:#8fdca0;box-shadow:0 0 7px rgba(143,220,160,.6)}
.hstage.active .dot{background:var(--brass);box-shadow:0 0 7px rgba(214,188,130,.7);animation:pblink 1s infinite}
.hstage .k{font-family:var(--mono);font-size:.64rem;color:var(--body)}
.hstage .std{font-family:var(--mono);font-size:.54rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.hstage.done .std,.hstage.active .std{color:var(--brass-soft)}
/* verdictseal v2: predictions + ELN, records, verify, disavowals */
.vtype{font-family:var(--mono);font-size:.55rem;letter-spacing:.1em;text-transform:uppercase;color:var(--brass-soft);border:1px solid var(--line);padding:.22rem .5rem;border-radius:5px;justify-self:start}
.vlog-name b{white-space:normal;line-height:1.35}
.vlog-by{font-family:var(--mono);font-size:.64rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vpred-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;align-items:start}
@media(max-width:820px){.vpred-grid{grid-template-columns:1fr}}
.vfield.req>label::after{content:' *';color:var(--brass-soft)}
.vfield .hint{font-family:var(--mono);font-size:.52rem;letter-spacing:.04em;color:#6b7280;margin-top:.3rem;text-transform:none}
.signas{background:rgba(214,188,130,.05);border:1px solid var(--line);border-radius:10px;padding:.7rem .8rem;margin:.2rem 0 .8rem}
.signas .sa-nm{font-family:var(--sans);font-size:.92rem;color:var(--head);font-weight:600}
.signas .sa-note{font-family:var(--mono);font-size:.53rem;letter-spacing:.04em;color:var(--muted);margin-top:.28rem;line-height:1.4}
.vcheck{display:flex;gap:.6rem;align-items:flex-start;font-size:.82rem;color:var(--body);line-height:1.45;margin:.2rem 0 .4rem;cursor:pointer}
.vcheck input{margin-top:.15rem;accent-color:var(--brass);width:15px;height:15px;flex-shrink:0}
.vs-cards{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}
@media(max-width:520px){.vs-cards{grid-template-columns:1fr}}
.vs-card{border:1px solid var(--line);border-radius:12px;padding:.95rem;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.01))}
.vs-card b{display:block;font-family:var(--display);font-size:1.05rem;color:var(--head);font-weight:600;margin-bottom:.25rem}
.vs-card p{font-size:.82rem;color:var(--muted);line-height:1.45;margin-bottom:.7rem}
.vs-card .cta{font-size:.78rem;padding:.5rem .9rem}
.pill-st.st-anchored{color:#8fdca0;border-color:rgba(143,220,160,.4)}
.pill-st.st-pending{color:var(--brass-soft);border-color:rgba(214,188,130,.4)}
.pill-st.st-new{color:var(--muted)}
.pill-st.st-disavowed{color:#e2a0a0;border-color:rgba(226,160,160,.4)}
.disavow-note{font-size:.84rem;color:var(--muted);line-height:1.55;margin-bottom:1rem;max-width:64ch}
.verify-result{border:1px solid rgba(143,220,160,.4);border-radius:12px;padding:1rem;background:rgba(143,220,160,.05);margin-top:1rem}
.verify-result .vr-h{font-family:var(--display);font-size:1.1rem;color:#a9e6b8;font-weight:600;margin-bottom:.55rem}
.vr-line{display:flex;justify-content:space-between;gap:1rem;font-family:var(--mono);font-size:.7rem;color:var(--body);padding:.32rem 0;border-bottom:1px solid rgba(255,255,255,.05)}
.vr-line:last-child{border:none}
.vr-line b{color:#8fdca0}
#page-verdictseal .lhead,#page-verdictseal .seal-row{grid-template-columns:minmax(0,1fr) 104px 128px 88px 108px}
@media(max-width:760px){#page-verdictseal .lhead,#page-verdictseal .seal-row{grid-template-columns:minmax(0,1fr) 100px}#page-verdictseal .h-type,#page-verdictseal .vtype,#page-verdictseal .h-by,#page-verdictseal .vlog-by,#page-verdictseal .sr-date,#page-verdictseal .h-date{display:none}}

/* ── HUB internal (employees-only) section ── */
.hub-internal{margin-top:1.5rem;max-width:760px}
.hub-internal-cap{font-family:var(--mono);font-size:.56rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:.7rem;display:flex;align-items:center;gap:.7rem}
.hub-internal-cap::after{content:'';flex:1;height:1px;background:var(--line)}

/* ── NKA Suite · employee portal ── */
#page-suite{max-width:1160px}
.suite-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:1.1rem;align-items:start}
@media(max-width:860px){.suite-grid{grid-template-columns:1fr}}
.task{display:flex;align-items:flex-start;gap:.8rem;padding:.72rem 0;border-bottom:1px solid rgba(255,255,255,.04)}
.task:last-child{border-bottom:none}
.task .tk-st{width:9px;height:9px;border-radius:50%;margin-top:.4rem;flex-shrink:0}
.task .tk-st.todo{background:#3b424d}
.task .tk-st.prog{background:var(--brass);box-shadow:0 0 7px rgba(214,188,130,.6)}
.task .tk-st.done{background:#8fdca0;box-shadow:0 0 7px rgba(143,220,160,.5)}
.task .tk-body{flex:1;min-width:0}
.task .tk-title{font-size:.92rem;color:var(--head);font-weight:500}
.task.is-done .tk-title{color:var(--muted);text-decoration:line-through}
.task .tk-meta{font-family:var(--mono);font-size:.57rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:.25rem;display:flex;gap:.85rem;flex-wrap:wrap}
.task .tk-meta a{color:var(--brass-soft);text-decoration:none;border-bottom:1px solid rgba(214,188,130,.3);cursor:pointer}
.smod-grid{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}
@media(max-width:520px){.smod-grid{grid-template-columns:1fr}}
.smod{display:flex;align-items:center;gap:.7rem;padding:.8rem .85rem;border-radius:12px;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.012));border:1px solid var(--line);cursor:pointer;transition:border-color .2s,transform .2s;text-decoration:none}
.smod:hover{border-color:var(--brass);transform:translateY(-2px)}
.smod .sm-ic{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:rgba(214,188,130,.08);border:1px solid var(--line);flex-shrink:0}
.smod .sm-ic svg{width:16px;height:16px;stroke:var(--brass);fill:none;stroke-width:1.6}
.smod .sm-tx{min-width:0}
.smod b{display:block;font-family:var(--display);font-size:.98rem;color:var(--head);font-weight:600;letter-spacing:-.01em}
.smod span{font-family:var(--mono);font-size:.55rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}

/* ── NKA Suite (capability-driven spine + gated actions) ── */
.suite-head{position:relative}
.tier-chip{font-family:var(--mono);font-size:.58rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);background:var(--brass-soft);padding:.16rem .5rem;border-radius:5px;font-weight:700}
.viewas{display:flex;align-items:center;gap:.4rem;margin-top:.9rem;flex-wrap:wrap}
.viewas .va-cap{font-family:var(--mono);font-size:.55rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-right:.2rem}
.va-btn{font-family:var(--mono);font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);background:rgba(0,0,0,.24);border:1px solid var(--line);padding:.4rem .7rem;border-radius:7px;cursor:pointer;transition:.18s}
.va-btn:hover{color:var(--brass-soft);border-color:var(--brass)}
.va-btn.on{color:var(--ink);background:var(--brass);border-color:var(--brass);font-weight:700}
.suite2{display:grid;grid-template-columns:214px 1fr;gap:1.2rem;align-items:start;margin-top:1.3rem}
@media(max-width:820px){.suite2{grid-template-columns:1fr}}
.spine{background:linear-gradient(180deg,rgba(28,34,44,.9),rgba(19,23,31,.88));border:1px solid var(--line);border-radius:14px;padding:.85rem}
.cmdk{width:100%;display:flex;align-items:center;gap:.5rem;background:rgba(0,0,0,.28);border:1px solid var(--line);border-radius:9px;padding:.55rem .65rem;color:var(--muted);font-family:var(--mono);font-size:.66rem;letter-spacing:.06em;cursor:pointer;margin-bottom:.75rem}
.cmdk svg{width:14px;height:14px;stroke:var(--muted);fill:none;stroke-width:1.8}
.cmdk kbd{margin-left:auto;font-family:var(--mono);font-size:.6rem;background:rgba(214,188,130,.12);color:var(--brass-soft);padding:.1rem .35rem;border-radius:4px}
.spine-cap{font-family:var(--mono);font-size:.53rem;letter-spacing:.18em;text-transform:uppercase;color:var(--brass);margin:.3rem 0 .45rem .2rem}
.sp-item{width:100%;display:flex;align-items:center;gap:.6rem;padding:.52rem .6rem;border-radius:8px;font-family:var(--mono);font-size:.72rem;letter-spacing:.03em;color:var(--body);cursor:pointer;background:transparent;border:none;text-align:left;transition:background .15s}
.sp-item:hover{background:rgba(214,188,130,.06)}
.sp-item.on{background:rgba(214,188,130,.1);color:var(--brass-soft)}
.sp-item .sp-badge{margin-left:auto;font-size:.58rem;color:var(--brass-soft);background:rgba(214,188,130,.12);padding:.05rem .32rem;border-radius:20px}
.sp-gate{font-family:var(--mono);font-size:.5rem;letter-spacing:.14em;text-transform:uppercase;color:#5a6472;margin:.6rem 0 .3rem .2rem}
.su-panel{margin-bottom:1.1rem}
.su-panel:last-child{margin-bottom:0}
.su-h{font-family:var(--display);font-size:1.15rem;color:var(--head);font-weight:600;letter-spacing:-.01em;margin-bottom:.15rem}
.su-sub{font-family:var(--mono);font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:.9rem}
.tk-st.over{background:#e2a0a0;box-shadow:0 0 7px rgba(226,160,160,.5)}
.howto{margin-top:.5rem;border:1px solid var(--line);border-radius:8px;background:rgba(214,188,130,.04);overflow:hidden}
.howto summary{list-style:none;cursor:pointer;font-family:var(--mono);font-size:.58rem;letter-spacing:.12em;text-transform:uppercase;color:var(--brass-soft);padding:.45rem .6rem}
.howto summary::-webkit-details-marker{display:none}
.howto[open] summary{border-bottom:1px solid var(--line)}
.howto .ht-body{padding:.6rem .7rem;font-size:.84rem;color:var(--body);line-height:1.5}
.kpi-row{display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem}
@media(max-width:640px){.kpi-row{grid-template-columns:1fr 1fr}}
.kpi{background:rgba(0,0,0,.2);border:1px solid var(--line);border-radius:11px;padding:.75rem .8rem}
.kpi .kn{font-family:var(--display);font-size:1.4rem;color:var(--brass-soft);font-weight:700}
.kpi .kl{font-family:var(--mono);font-size:.54rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-top:.15rem}
.su-row{display:flex;align-items:center;gap:.75rem;padding:.62rem 0;border-bottom:1px solid rgba(255,255,255,.04)}
.su-row:last-child{border-bottom:none}
.su-row .rmain{flex:1;min-width:0}
.su-row .rt{font-size:.9rem;color:var(--head)}
.su-row .rm{font-family:var(--mono);font-size:.56rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:.2rem;display:flex;gap:.7rem;flex-wrap:wrap}
.ratify{font-family:var(--sans);font-weight:700;font-size:.72rem;color:var(--ink);background:var(--brass);border:none;padding:.4rem .8rem;border-radius:7px;cursor:pointer;flex-shrink:0}
.pill-st{font-family:var(--mono);font-size:.54rem;letter-spacing:.1em;text-transform:uppercase;padding:.14rem .45rem;border-radius:20px;border:1px solid var(--line);color:var(--muted);flex-shrink:0}
.pill-st.open{color:var(--brass-soft);border-color:rgba(214,188,130,.4)}

/* ── OriginProof app sub-nav + views (function-faithful to the real Dashboard/Seal/Check) ── */
.op-subnav{display:flex;align-items:center;gap:.25rem;margin:.1rem 0 1.3rem;border-bottom:1px solid var(--line)}
.op-tab{font-family:var(--mono);font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);background:transparent;border:none;padding:.65rem .9rem;cursor:pointer;position:relative;transition:color .2s}
.op-tab:hover{color:var(--brass-soft)}
.op-tab.on{color:var(--head)}
.op-tab.on::after{content:'';position:absolute;left:.9rem;right:.9rem;bottom:-1px;height:2px;background:var(--brass);box-shadow:0 0 8px rgba(214,188,130,.6)}
.op-tab.cta-tab{margin-left:auto;color:var(--ink);background:var(--brass);border-radius:8px;font-weight:700;box-shadow:0 6px 18px rgba(214,188,130,.22);margin-bottom:.4rem}
.op-tab.cta-tab::after{display:none}
.op-view{display:none}
.op-view.on{display:block;animation:fadein .3s ease}
.op-usage{font-family:var(--mono);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:.55rem;flex-wrap:wrap;margin-top:.4rem}
.op-usage .plan{color:var(--ink);background:var(--brass-soft);padding:.16rem .5rem;border-radius:5px;font-weight:700;letter-spacing:.12em}
.op-usage b{color:var(--brass-soft)}
/* dashboard: folders + all-seals table */
.dash-grid{display:grid;grid-template-columns:198px 1fr;gap:1.1rem;align-items:start}
@media(max-width:820px){.dash-grid{grid-template-columns:1fr}}
.folders{background:linear-gradient(180deg,rgba(28,34,44,.9),rgba(19,23,31,.88));border:1px solid var(--line);border-radius:14px;padding:.9rem}
.folders .fcap{font-family:var(--mono);font-size:.55rem;letter-spacing:.16em;text-transform:uppercase;color:var(--brass);margin-bottom:.6rem}
.folder{display:flex;align-items:center;gap:.55rem;padding:.5rem .55rem;border-radius:8px;font-family:var(--mono);font-size:.72rem;color:var(--body);cursor:pointer;transition:background .15s}
.folder:hover{background:rgba(214,188,130,.06)}
.folder.on{background:rgba(214,188,130,.1);color:var(--brass-soft)}
.folder svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.6;opacity:.85;flex-shrink:0}
.folder .cnt{margin-left:auto;color:var(--muted);font-size:.6rem}
.folder-new{margin-top:.5rem;font-size:.56rem;color:var(--brass-soft);cursor:pointer;letter-spacing:.12em;text-transform:uppercase;padding:.45rem .55rem}
.dash-search{display:flex;align-items:center;gap:.6rem;background:rgba(0,0,0,.26);border:1px solid var(--line);border-radius:10px;padding:.55rem .85rem;margin-bottom:.85rem}
.dash-search svg{width:15px;height:15px;stroke:var(--muted);fill:none;stroke-width:1.7;flex-shrink:0}
.dash-search input{flex:1;background:transparent;border:none;outline:none;color:var(--head);font-family:var(--sans);font-size:.9rem}
.dash-search input::placeholder{color:#6b7280}
.seals2{border:1px solid var(--line);border-radius:14px;background:linear-gradient(180deg,rgba(28,34,44,.92),rgba(19,23,31,.9));overflow:hidden}
.s2head,.s2row{display:grid;grid-template-columns:minmax(0,1fr) 150px 128px 84px 96px;align-items:center;gap:1rem;padding:.7rem 1.1rem}
.s2-actions{display:flex;align-items:center;justify-content:flex-end;gap:.5rem}
.s2-kebab{background:none;border:none;color:var(--muted);cursor:pointer;font-size:1.05rem;line-height:1;padding:0 .15rem;opacity:0;transition:.15s}
.s2row:hover .s2-kebab{opacity:1}
.s2-kebab:hover{color:var(--brass-soft)}
.folder{position:relative}
.f-tools{position:absolute;right:.45rem;top:50%;transform:translateY(-50%);display:none;gap:.1rem}
.folder:hover .f-tools{display:flex}
.folder:hover .cnt{visibility:hidden}
.f-tools button{background:none;border:none;color:var(--muted);cursor:pointer;font-size:.85rem;line-height:1;padding:0 .2rem}
.f-tools button:hover{color:var(--brass-soft)}
.s2head{font-family:var(--mono);font-size:.55rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line)}
.s2row{border-bottom:1px solid rgba(255,255,255,.04)}
.s2row:last-child{border-bottom:none}
.s2row:hover{background:rgba(214,188,130,.05)}
.s2-name{font-family:var(--mono);font-size:.76rem;color:var(--head);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.s2-folder,.s2-date{font-family:var(--mono);font-size:.64rem;color:var(--muted)}
.s2-btc{font-family:var(--mono);font-size:.6rem;letter-spacing:.06em;text-transform:uppercase}
.s2-btc.ok{color:#8fdca0}
.s2-btc.q{color:var(--brass-soft)}
.s2-view{font-family:var(--mono);font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;color:var(--brass-soft);text-decoration:none;border-bottom:1px solid rgba(214,188,130,.3);cursor:pointer;justify-self:end}
.dash-foot{display:flex;justify-content:space-between;align-items:center;margin-top:.8rem;font-family:var(--mono);font-size:.6rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.dash-foot .pg{display:flex;gap:.3rem}
.dash-foot .pg button{background:transparent;border:1px solid var(--line);color:var(--brass-soft);border-radius:6px;padding:.35rem .6rem;cursor:pointer;font-family:var(--mono);font-size:.58rem}
/* seal widget */
.seal-tabs{display:flex;gap:.3rem;padding:.28rem;background:rgba(0,0,0,.28);border:1px solid var(--line);border-radius:11px;margin-bottom:1rem;max-width:300px}
.seal-tab{flex:1;font-family:var(--mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);background:transparent;border:none;padding:.55rem;border-radius:8px;cursor:pointer}
.seal-tab.on{background:linear-gradient(180deg,rgba(214,188,130,.16),rgba(214,188,130,.08));color:var(--brass-soft);box-shadow:inset 0 0 0 1px rgba(214,188,130,.25)}
.seal-paste{width:100%;min-height:150px;background:rgba(0,0,0,.26);border:1px solid var(--line);border-radius:12px;padding:.9rem;color:var(--head);font-family:var(--sans);font-size:.92rem;outline:none;resize:vertical;display:none}
#page-originproof[data-sealmode="paste"] .dropzone{display:none}
#page-originproof[data-sealmode="paste"] .seal-paste{display:block}
.owner-field{margin-top:.9rem}
.owner-field label{display:block;font-family:var(--mono);font-size:.58rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:.35rem}
.owner-field input{width:100%;background:rgba(0,0,0,.26);border:1px solid var(--line);border-radius:10px;padding:.7rem .85rem;color:var(--head);font-family:var(--sans);font-size:.92rem;outline:none}
.owner-field input:focus{border-color:var(--brass);box-shadow:0 0 0 3px rgba(214,188,130,.14)}
.embed-addon{margin-top:1rem;padding:.85rem 1rem;border:1px dashed var(--line);border-radius:12px;display:flex;align-items:center;gap:.8rem}
.embed-addon .ea-tx{flex:1}
.embed-addon b{font-family:var(--display);font-size:.98rem;color:var(--head)}
.embed-addon .ea-tx span{font-size:.78rem;color:var(--muted);display:block;margin-top:.15rem}
.pro-pill{font-family:var(--mono);font-size:.52rem;letter-spacing:.12em;text-transform:uppercase;color:var(--brass-soft);border:1px solid rgba(214,188,130,.35);padding:.16rem .45rem;border-radius:5px;flex-shrink:0}
.check-note{font-size:.82rem;color:var(--muted);margin-top:.85rem;max-width:62ch;line-height:1.55}

/* bottom-right page nav — echoes the top anchor's glass, quieter, flat (no corner wrap) */
nav.pagenav{position:fixed;right:16px;bottom:16px;z-index:6;display:flex;align-items:center;gap:.1rem;padding:.28rem;border-radius:12px;
  background:linear-gradient(180deg,rgba(30,36,46,.82),rgba(19,23,31,.78));
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 10px 26px rgba(0,0,0,.42)}
.pagenav button{position:relative;font-family:var(--mono);font-size:.6rem;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);
  background:transparent;border:none;padding:.52rem .8rem;border-radius:8px;cursor:pointer;transition:color .2s;white-space:nowrap}
.pagenav button:hover{color:var(--brass-soft)}
.pagenav button.on{color:var(--brass-soft)}
.pagenav button.on::after{content:'';position:absolute;left:.8rem;right:.8rem;bottom:.32rem;height:1.5px;background:var(--brass);border-radius:2px;box-shadow:0 0 6px rgba(214,188,130,.5)}

/* ─── CORNER ANCHOR (reused, unchanged) ─── */
.anchor{position:fixed;top:0;right:0;z-index:200;width:var(--W);height:var(--H);pointer-events:none}
.frame{position:absolute;inset:0;pointer-events:auto;
  clip-path:polygon(0 0, var(--W) 0, var(--W) var(--H),
            calc(var(--vx) + var(--c)) var(--H), var(--vx) calc(var(--H) - var(--c)),
            var(--vx) var(--top), var(--c) var(--top), 0 calc(var(--top) - var(--c)));
  background:radial-gradient(160px circle at var(--lx,300px) var(--ly,-40px),
            rgba(255,250,235,.95), rgba(214,188,130,.62) 34%, rgba(185,152,90,.4) 72%);
  filter:drop-shadow(0 22px 40px rgba(0,0,0,.5))}
.inner{position:absolute;inset:0;
  clip-path:polygon(1.4px 1.4px, calc(var(--W) - 1.4px) 1.4px, calc(var(--W) - 1.4px) calc(var(--H) - 1.4px),
            calc(var(--vx) + var(--c) - 1px) calc(var(--H) - 1.4px), calc(var(--vx) + 1.4px) calc(var(--H) - var(--c) + .6px),
            calc(var(--vx) + 1.4px) calc(var(--top) + 1.4px), calc(var(--c) + 1px) calc(var(--top) + 1.4px), 1.4px calc(var(--top) - var(--c) + .6px));
  background:linear-gradient(180deg,rgba(30,36,46,.94),rgba(19,23,31,.9));
  -webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}
.topbar{position:absolute;top:0;left:0;height:var(--top);display:inline-flex;align-items:center;gap:var(--G);padding:0 var(--G);pointer-events:none}
.topbar>*,.controls>*{pointer-events:auto}
.brand-logo{height:42px;width:auto;display:block;mix-blend-mode:screen;
  filter:brightness(1.14) contrast(1.08) drop-shadow(0 2px 6px rgba(0,0,0,.45));
  -webkit-mask:radial-gradient(135% 120% at 50% 50%,#000 56%,transparent 80%);
          mask:radial-gradient(135% 120% at 50% 50%,#000 56%,transparent 80%)}
.controls{display:contents}
.glass{position:relative;isolation:isolate}
.glass::before{content:'';position:absolute;inset:0;border-radius:inherit;padding:1px;
  background:linear-gradient(180deg,rgba(214,188,130,.5),rgba(214,188,130,.16));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.glass::after{content:'';position:absolute;inset:0;border-radius:inherit;padding:1.4px;
  background:radial-gradient(90px circle at var(--lx,-999px) var(--ly,-999px),rgba(255,250,235,.95),rgba(255,240,205,.35) 34%,transparent 62%);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;
  pointer-events:none;opacity:0;transition:opacity .35s ease;mix-blend-mode:screen}
.glass.lit::after{opacity:1}
.tile{background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.015));box-shadow:inset 0 1px 0 rgba(255,255,255,.06);overflow:hidden}
.status{display:flex;align-items:center;gap:.6rem;height:40px;padding:0 1.05rem 0 .95rem;border-radius:12px;cursor:pointer}
.status .who{font-family:var(--mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--brass-soft);white-space:nowrap}
.status .ava{width:20px;height:20px;border-radius:50%;border:1px solid var(--brass-deep);display:grid;place-items:center;color:var(--brass);flex-shrink:0}
.status .ava svg{width:12px;height:12px;stroke:currentColor;fill:none;stroke-width:1.7}
.hub{position:relative;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;cursor:pointer;flex-shrink:0}
.hub svg{width:20px;height:20px;stroke:var(--brass);fill:none;stroke-width:1.5}
.rail{position:absolute;top:calc(var(--top) + 16px);right:0;width:var(--arm);display:flex;flex-direction:column;align-items:center;gap:6px;z-index:4;pointer-events:none}
.navitem{position:relative;display:inline-flex;align-items:center;justify-content:center}
.navbtn{pointer-events:auto;width:40px;height:40px;border-radius:11px;display:grid;place-items:center;background:transparent;border:1px solid transparent;cursor:pointer;position:relative;transition:background .2s,border-color .2s}
.navbtn:hover{background:rgba(214,188,130,.09);border-color:var(--line)}
.navicon{width:32px;height:32px;object-fit:contain;display:block;filter:drop-shadow(0 1px 2px rgba(0,0,0,.5));opacity:.92;transition:opacity .2s,filter .2s}
.navbtn:hover .navicon{opacity:1;filter:drop-shadow(0 1px 3px rgba(0,0,0,.6)) brightness(1.08)}
.tag{position:absolute;right:calc(100% + 12px);top:50%;white-space:nowrap;pointer-events:none;transform:translateY(-50%) translateX(14px);opacity:0;
  font-family:var(--mono);font-size:.64rem;letter-spacing:.15em;text-transform:uppercase;color:var(--brass-soft);padding:.52rem .82rem;border-radius:9px;
  background:linear-gradient(180deg,rgba(40,47,60,.98),rgba(24,29,38,.98));border:1px solid rgba(214,188,130,.3);box-shadow:0 12px 30px rgba(0,0,0,.6);
  transition:opacity .26s ease,transform .3s cubic-bezier(.22,.9,.3,1)}
.tag::after{content:'';position:absolute;left:100%;top:50%;transform:translateY(-50%);border:5px solid transparent;border-left-color:rgba(40,47,60,.98)}
.navbtn:hover + .tag{opacity:1;transform:translateY(-50%) translateX(0)}
@media (prefers-reduced-motion:reduce){.glass::after,.page.active{transition:none;animation:none}}

/* marketing: products family + site footer (parity with live apex) */
.prodfam{margin-top:2.2rem}
.pf-cap{font-family:var(--mono);font-size:.56rem;letter-spacing:.2em;text-transform:uppercase;color:var(--brass);margin-bottom:.8rem}
.pf-grid{display:grid;grid-template-columns:1fr 1fr;gap:.9rem}
@media(max-width:620px){.pf-grid{grid-template-columns:1fr}}
.pf-card{display:block;padding:1.1rem;border:1px solid var(--line);border-radius:14px;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.01));text-decoration:none;transition:border-color .2s,transform .2s}
.pf-card:hover{border-color:var(--brass);transform:translateY(-2px)}
.pf-badge{display:inline-block;font-family:var(--mono);font-size:.5rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);padding:.14rem .45rem;border-radius:20px;margin-bottom:.6rem}
.pf-badge.live{color:#8fdca0;border-color:rgba(143,220,160,.4)}
.pf-card b{display:block;font-family:var(--display);font-size:1.3rem;color:var(--head);font-weight:600;letter-spacing:-.01em;margin-bottom:.3rem}
.pf-card p{font-size:.86rem;color:var(--muted);line-height:1.5;margin-bottom:.7rem}
.pf-go{font-family:var(--mono);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--brass-soft)}
.site-foot{margin-top:2.4rem;padding-top:1.6rem;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem}
@media(max-width:620px){.site-foot{grid-template-columns:1fr 1fr}}
.site-foot .sf-h{font-family:var(--mono);font-size:.55rem;letter-spacing:.18em;text-transform:uppercase;color:var(--brass);margin-bottom:.7rem}
.site-foot a{display:block;font-size:.84rem;color:var(--body);text-decoration:none;padding:.2rem 0;cursor:pointer}
.site-foot a:hover{color:var(--brass-soft)}
.foot-legal{margin-top:1.4rem;font-family:var(--mono);font-size:.56rem;letter-spacing:.08em;color:var(--muted)}

/* identity menu — appended to <body> (the anchor is clip-path'd, so it cannot live inside) */
.cu-pop{position:fixed;z-index:9999;min-width:236px;display:none;overflow:hidden;
  background:linear-gradient(180deg,rgba(28,34,44,.98),rgba(19,23,31,.98));border:1px solid var(--line,rgba(214,188,130,.16));border-radius:12px;box-shadow:0 20px 56px rgba(0,0,0,.55)}
.cu-pop.open{display:block}
.cu-pop a{display:block;padding:.68rem .95rem;font-size:.85rem;color:#f4f1ea;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.05)}
.cu-pop a:hover{background:rgba(214,188,130,.12);color:#e6cf9a}
.cu-pop a:last-child{border-bottom:none}
.cu-pop .cu-head{padding:.72rem .95rem;border-bottom:1px solid var(--line,rgba(214,188,130,.16))}
.cu-pop .cu-head b{display:block;color:#f4f1ea;font-size:.85rem}
.cu-pop .cu-head span{display:block;color:#9aa1ac;font-size:.72rem;font-family:var(--mono,monospace)}
.cu-pop .cu-signout{color:#e07a6b}

/* Edge dissolve for normally-scrolling APP surfaces (OriginProof / Eterra / Suite).
   Those use native page scroll rather than the fixed masked .viewport, so the
   viewport's mask can't apply — a mask there would fade the document ends, not
   the window edges. These fixed gradients reproduce the same dissolve.
   Colours match the .field gradient (ink2 at top, ink at bottom) and fade to a
   colour-matched alpha-0 (not `transparent`) to avoid a grey haze in Safari.
   Solid for the first 16px so the dissolve starts at the corner-bracket frame. */
.edge-fade{position:fixed;left:0;right:0;height:72px;z-index:150;pointer-events:none}
.edge-fade.top{top:0;background:linear-gradient(to bottom,var(--ink2) 0,var(--ink2) 16px,rgba(27,32,39,0) 100%)}
.edge-fade.bottom{bottom:0;background:linear-gradient(to top,var(--ink) 0,var(--ink) 16px,rgba(20,24,32,0) 100%)}
/* keep the corner brackets legible above the dissolve */
.edge-fade ~ .brackets,.brackets{z-index:160}
