[data-portal]{cursor:auto;--accent:var(--rgb-accent);--accent-ink:#0a0a0a;--accent-soft:var(--rgb-accent-soft);--ok:#39ff8b;--ok-soft:rgba(57,255,139,0.13);--warn:#f6b352;--warn-soft:rgba(246,179,82,0.14);--bad:#f4604d;--bad-soft:rgba(244,96,77,0.14);animation:vylo-rgb 9s linear infinite}html[data-theme=light] [data-portal]{--accent:var(--rgb-accent);--accent-ink:#f4f2ea;--accent-soft:var(--rgb-accent-soft);--ok:#1f9d5b;--ok-soft:rgba(31,157,91,0.12);--warn:#b9791b;--warn-soft:rgba(185,121,27,0.12);--bad:#c93f2c;--bad-soft:rgba(201,63,44,0.12)}.portal{position:relative;min-height:100vh;z-index:1}.portal-glow{position:fixed;top:-20%;left:50%;transform:translateX(-50%);width:min(900px,90vw);height:520px;z-index:0;pointer-events:none;background:radial-gradient(ellipse at center,var(--accent-soft),transparent 70%)}@keyframes portal-fade{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes portal-pulse{0%{transform:scale(1);opacity:.55}to{transform:scale(2.6);opacity:0}}.portal-in{animation:portal-fade .5s ease both}@media (prefers-reduced-motion:reduce){.portal-in,.stage-active-ring{animation:none}}.pbar{position:-webkit-sticky;position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px clamp(20px,5vw,56px);border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.pbar-brand{display:flex;align-items:baseline;gap:8px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.pbar-brand b{font-family:var(--font-serif);font-size:22px;font-weight:500;letter-spacing:.02em;line-height:1}.pbar-brand .tag{font-family:var(--font-mono);font-size:9px;letter-spacing:.24em;text-transform:uppercase;color:var(--fg-dim);transform:translateY(-1px)}.pbar-nav{display:flex;gap:clamp(10px,2vw,30px);align-items:center}.pbar-nav a{position:relative;display:inline-flex;gap:7px;align-items:baseline;padding:6px 0;color:var(--fg-dim);transition:color .3s}.pbar-nav a .idx{font-family:var(--font-mono);font-size:10px;color:var(--fg-faint)}.pbar-nav a .txt{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase}.pbar-nav a:hover,.pbar-nav a[aria-current=page]{color:var(--fg)}.pbar-nav a[aria-current=page]:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--accent)}.pbar-right{display:flex;align-items:center;gap:12px}.pbar-theme{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg-dim);padding:7px 11px;border:1px solid var(--line);border-radius:999px;background:none;cursor:pointer;transition:border-color .3s,color .3s}.pbar-theme:hover{color:var(--fg);border-color:var(--accent)}.pbar-theme .dot{width:9px;height:9px;border-radius:50%;border:1px solid;background:linear-gradient(90deg,currentColor 50%,transparent 0)}.pbar-acct{position:relative}.pbar-acct-btn{display:inline-flex;align-items:center;gap:9px;padding:5px 8px 5px 5px;border:1px solid var(--line);border-radius:999px;background:none;color:var(--fg);cursor:pointer;transition:border-color .3s;font-size:11px;letter-spacing:.06em}.pbar-acct-btn:hover{border-color:var(--accent)}.pbar-avatar{width:26px;height:26px;border-radius:50%;background:var(--accent);color:var(--accent-ink);display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-weight:700;font-size:12px;box-shadow:0 0 14px var(--accent-soft)}.pbar-acct-btn .caret{font-size:9px;color:var(--fg-faint)}.pbar-menu{position:absolute;top:calc(100% + 10px);right:0;min-width:200px;z-index:60;background:var(--bg-2);border:1px solid var(--line);border-radius:12px;padding:8px;box-shadow:0 18px 50px rgba(0,0,0,.5);animation:portal-fade .2s ease both}.pbar-menu .who{padding:8px 10px 10px;border-bottom:1px solid var(--line-soft);margin-bottom:6px}.pbar-menu .who .nm{font-size:12px}.pbar-menu .who .em{font-size:10px;color:var(--fg-dim);margin-top:3px}.pbar-menu a{display:block;padding:9px 10px;border-radius:8px;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-dim);transition:background .2s,color .2s}.pbar-menu a:hover{background:var(--bg-3);color:var(--fg)}.pbar-menu a.danger:hover{background:var(--bad-soft);color:var(--bad)}.pbar-burger{display:none;font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--fg);background:none;border:1px solid var(--line);border-radius:999px;padding:8px 12px;cursor:pointer}.portal-main{position:relative;z-index:2;width:100%;max-width:1180px;margin:0 auto;padding:clamp(36px,6vw,72px) clamp(20px,5vw,56px) 120px}.p-eyebrow{display:flex;align-items:baseline;gap:14px;margin-bottom:8px}.p-eyebrow .num{font-family:var(--font-mono);font-size:12px;color:var(--accent);letter-spacing:.1em}.p-eyebrow .lbl{font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--fg-faint)}.p-title{font-family:var(--font-serif);font-weight:300;font-size:clamp(34px,5.5vw,60px);line-height:1;letter-spacing:-.02em;margin:0}.p-title em{font-style:italic;color:var(--accent)}.p-lead{font-size:13px;line-height:1.7;color:var(--fg-dim);max-width:54ch;margin:12px 0 0}.p-lead,.p-micro{font-family:var(--font-mono)}.p-micro{font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--fg-faint)}.hero-bill{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:var(--bg-2);padding:clamp(26px,4vw,42px);margin-bottom:22px}.hero-bill .halo{position:absolute;top:-40%;right:-10%;width:360px;height:360px;pointer-events:none}.hero-bill.due .halo{background:radial-gradient(circle,var(--accent-soft),transparent 70%)}.hero-bill.paid .halo{background:radial-gradient(circle,var(--ok-soft),transparent 70%)}.hero-bill-row{position:relative;display:flex;flex-wrap:wrap;gap:26px 40px;align-items:flex-end;justify-content:space-between}.hero-amount{font-family:var(--font-serif);font-weight:400;font-size:clamp(44px,8vw,88px);line-height:.9;letter-spacing:-.02em}.hero-amount .cents{font-size:.42em;color:var(--fg-dim)}.hero-note{display:inline-flex;align-items:center;gap:8px;margin-top:16px;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em}.hero-note .glow-dot{width:7px;height:7px;border-radius:50%}.btn-fill{position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;padding:16px 30px;border:1px solid var(--fg);border-radius:999px;color:var(--fg);background-image:linear-gradient(to bottom,transparent 50%,var(--accent) 50%);background-size:100% 200%;background-position:0 0;cursor:pointer;transition:background-position .45s cubic-bezier(.2,.8,.2,1),color .35s,border-color .35s}.btn-fill:hover{background-position:0 100%;color:var(--accent-ink);border-color:var(--accent)}.btn-ghost{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;padding:13px 22px;border:1px solid var(--line);border-radius:999px;color:var(--fg-dim);background:none;cursor:pointer;transition:border-color .3s,color .3s}.btn-ghost:hover{border-color:var(--accent);color:var(--fg)}.badge{display:inline-flex;align-items:center;gap:7px;padding:5px 10px;border-radius:999px;font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.badge .b-dot{width:6px;height:6px;border-radius:50%;background:currentColor}.badge.ok{background:var(--ok-soft);color:var(--ok)}.badge.warn{background:var(--warn-soft);color:var(--warn)}.badge.bad{background:var(--bad-soft);color:var(--bad)}.badge.accent{background:var(--accent-soft);color:var(--accent)}.badge.muted{background:var(--bg-3);color:var(--fg-faint)}.state-toggle{display:flex;align-items:center;gap:10px;margin-bottom:clamp(38px,6vw,54px);letter-spacing:.14em;color:var(--fg-faint)}.seg,.state-toggle{font-family:var(--font-mono);font-size:10px;text-transform:uppercase}.seg{letter-spacing:.1em;padding:6px 12px;border:1px solid var(--line);border-radius:999px;background:none;color:var(--fg-dim);cursor:pointer;transition:all .25s}.seg[aria-pressed=true]{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.tracker{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);grid-gap:12px;gap:12px}.tracker li{position:relative;padding-top:22px}.tracker li .line{position:absolute;top:5px;left:0;right:0;height:1px;background:var(--line)}.tracker li.done .line{background:var(--ok)}.tracker li.active .line{background:linear-gradient(to right,var(--accent),var(--line))}.tracker li.end .line{right:auto;width:11px}.tracker li .node{position:absolute;top:0;left:0;width:11px;height:11px;border-radius:50%;background:var(--bg-3);border:1px solid var(--line)}.tracker li.done .node{background:var(--ok);border-color:var(--ok);box-shadow:0 0 10px var(--ok-soft)}.tracker li.active .node{background:var(--accent);border-color:var(--accent)}.tracker li .ring{position:absolute;top:0;left:0;width:11px;height:11px;border-radius:50%;border:1px solid var(--accent);animation:portal-pulse 1.8s ease-out infinite}.tracker li .nm{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.tracker li.pending .nm{color:var(--fg-dim)}.tracker li.active .nm{color:var(--accent)}.tracker li .st{font-family:var(--font-mono);font-size:10px;margin-top:5px}.tracker li.done .st{color:var(--ok)}.tracker li.active .st{color:var(--accent)}.tracker li.pending .st{color:var(--fg-faint)}.quicknav{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:14px;gap:14px}.qcard{text-align:left;display:flex;flex-direction:column;gap:12px;border:1px solid var(--line);border-radius:14px;background:var(--bg-2);padding:24px;cursor:pointer;color:var(--fg);transition:border-color .35s,transform .35s,background .35s}.qcard:hover{border-color:var(--accent);transform:translateY(-3px);background:var(--bg-3)}.qcard .num{font-family:var(--font-mono);font-size:10px;color:var(--accent);letter-spacing:.1em}.qcard .nm{font-family:var(--font-serif);font-size:26px;font-weight:400}.qcard .dsc{font-family:var(--font-mono);font-size:12px;color:var(--fg-dim);line-height:1.5}.qcard .dsc .go,.qcard .dsc a{color:var(--accent)}.charge-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:16px;gap:16px;margin:18px 0 clamp(40px,7vw,64px)}.charge{border:1px solid var(--line);border-radius:16px;background:var(--bg-2);padding:26px;display:flex;flex-direction:column;gap:20px}.charge-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.charge-kind{font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--fg-faint);margin-bottom:8px}.charge-title{font-size:20px}.charge-amount,.charge-title{font-family:var(--font-serif)}.charge-amount{font-size:40px;line-height:1}.charge-amount .sub{font-size:.4em;color:var(--fg-dim)}.pay-field{border:1px dashed var(--line);border-radius:12px;padding:18px;display:flex;flex-direction:column;gap:14px;background:var(--bg)}.pay-field .lbl{font-size:10px;letter-spacing:.16em;text-transform:uppercase}.pay-field .lbl,.pay-line{font-family:var(--font-mono);color:var(--fg-faint)}.pay-line{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:8px 0;font-size:13px}.pay-line:focus,.pay-line:focus-within{border-color:var(--accent);outline:none}.pay-cols{display:flex;gap:14px}.pay-cols>div{flex:1 1;border-bottom:1px solid var(--line);padding:8px 0;font-size:13px}.pay-cols>div,.pay-hint{font-family:var(--font-mono);color:var(--fg-faint)}.pay-hint{font-size:10px;letter-spacing:.04em}.sq-card-el{min-height:40px}.retainer-facts{border:1px solid var(--line-soft);border-radius:12px;padding:18px;display:flex;flex-direction:column;gap:12px;background:var(--bg)}.retainer-facts .r{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:12px}.retainer-facts .r .k{color:var(--fg-dim)}.retainer-facts .r .v.ok{color:var(--ok)}.history{border:1px solid var(--line);border-radius:16px;background:var(--bg-2);overflow:hidden}.history .row{display:grid;grid-template-columns:130px 1fr 120px 120px 90px;grid-gap:16px;gap:16px;padding:16px 22px;align-items:center;border-bottom:1px solid var(--line-soft);font-family:var(--font-mono);font-size:13px}.history .row.head{padding:14px 22px;border-bottom:1px solid var(--line);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg-faint)}.history .row:last-child{border-bottom:none}.history .amt{text-align:right;font-family:var(--font-serif);font-size:15px}.history .amt.head{font-family:var(--font-mono);font-size:10px}.history .rc{text-align:right}.history .rc a{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);border-bottom:1px solid transparent;transition:border-color .25s}.history .rc a:hover{border-color:var(--accent)}.url-row{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 clamp(40px,7vw,60px)}.url-btn{display:inline-flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:12px;padding:16px 20px;transition:border-color .35s,transform .35s}.url-btn:hover{border-color:var(--accent);transform:translateY(-2px)}.url-btn .u-dot{width:8px;height:8px;border-radius:50%;background:var(--fg-faint);flex:0 0 auto}.url-btn.live .u-dot{background:var(--accent);box-shadow:0 0 8px var(--accent)}.url-btn .u-stack{display:flex;flex-direction:column;gap:3px}.url-btn .u-k{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--fg-faint)}.url-btn.live .u-k{color:var(--accent)}.url-btn .u-v{font-family:var(--font-mono);font-size:13px}.url-btn .u-v .muted{color:var(--fg-faint);font-size:11px}.url-btn.live .u-v .arr{color:var(--accent);font-size:11px}.timeline{list-style:none;margin:0 0 clamp(40px,7vw,60px);padding:0}.timeline li{position:relative;display:grid;grid-template-columns:24px 1fr;grid-gap:20px;gap:20px;padding-bottom:30px}.timeline .rail{display:flex;flex-direction:column;align-items:center}.timeline .rail .node{width:14px;height:14px;border-radius:50%;background:var(--bg-3);border:1px solid var(--line);flex:0 0 auto;z-index:1}.timeline li.done .rail .node{background:var(--ok);border-color:var(--ok);box-shadow:0 0 10px var(--ok-soft)}.timeline li.active .rail .node{background:var(--accent);border-color:var(--accent);box-shadow:0 0 12px var(--accent)}.timeline .rail .stem{flex:1 1;width:1px;background:var(--line);margin-top:6px}.timeline li:last-child .rail .stem{display:none}.timeline .t-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:12px}.timeline .t-name{font-family:var(--font-serif);font-size:22px}.timeline li.pending .t-name{color:var(--fg-dim)}.timeline li.active .t-name{color:var(--accent)}.timeline .t-date{font-family:var(--font-mono);font-size:11px;color:var(--fg-faint);margin-left:auto}.timeline .t-note{font-family:var(--font-mono);font-size:12.5px;line-height:1.6;color:var(--fg-dim);margin:8px 0 0;max-width:56ch}.notes{border:1px solid var(--line);border-radius:16px;background:var(--bg-2);padding:26px}.notes .n-row{display:grid;grid-template-columns:80px 1fr;grid-gap:16px;gap:16px}.notes .n-date{font-family:var(--font-mono);font-size:11px;color:var(--fg-faint)}.notes .n-body{font-family:var(--font-mono);font-size:13px;line-height:1.7;color:var(--fg-dim);margin:0}.notes .n-div{height:1px;background:var(--line-soft);margin:16px 0}.files-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:16px;justify-content:space-between;margin-bottom:clamp(30px,5vw,46px)}.file-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:14px;gap:14px}.file-card{border:1px solid var(--line);border-radius:14px;background:var(--bg-2);padding:22px;display:flex;flex-direction:column;gap:16px;transition:border-color .35s,transform .35s}.file-card:hover{border-color:var(--accent);transform:translateY(-3px)}.file-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.file-ext{padding:6px 9px;border-radius:8px;background:var(--accent-soft);color:var(--accent);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.file-ext,.file-size{font-family:var(--font-mono);font-size:11px}.file-size{color:var(--fg-faint)}.file-name{font-size:13.5px;line-height:1.4;word-break:break-word;flex:1 1}.file-dl,.file-name{font-family:var(--font-mono)}.file-dl{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;padding:12px;border:1px solid var(--line);border-radius:10px;color:var(--fg-dim);transition:border-color .3s,color .3s,background .3s}.file-dl:hover{border-color:var(--accent);color:var(--fg);background:var(--accent-soft)}.files-empty{border:1px dashed var(--line);border-radius:16px;padding:clamp(48px,9vw,90px) 24px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:14px}.files-empty .mk{font-family:var(--font-serif);font-size:56px;line-height:1;color:var(--fg-faint)}.files-empty .h{font-family:var(--font-serif);font-size:26px}.files-empty p{font-family:var(--font-mono);font-size:12.5px;color:var(--fg-dim);line-height:1.7;max-width:38ch;margin:0}.admin-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px clamp(20px,5vw,56px);border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:-webkit-sticky;position:sticky;top:0;z-index:50}.admin-bar .badge-admin{font-family:var(--font-mono);font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);border:1px solid var(--accent);border-radius:999px;padding:3px 8px}.admin-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:14px;gap:14px;margin-bottom:clamp(34px,5vw,48px)}.metric{border:1px solid var(--line);border-radius:14px;background:var(--bg-2);padding:22px}.metric .k{font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--fg-faint);margin-bottom:12px}.metric .v{font-family:var(--font-serif);font-size:clamp(28px,4vw,40px);line-height:1}.metric .v .sub{font-size:.4em;color:var(--fg-dim)}.metric .foot{font-family:var(--font-mono);font-size:11px;color:var(--fg-dim);margin-top:8px}.clients{border:1px solid var(--line);border-radius:16px;background:var(--bg-2);overflow:hidden}.clients .crow{display:grid;grid-template-columns:1.3fr 1.1fr 96px 90px 100px 140px 24px;grid-gap:14px;gap:14px;align-items:center;padding:16px 22px;border-bottom:1px solid var(--line-soft);font-family:var(--font-mono);font-size:13px;transition:background .25s}.clients .crow.clickable{cursor:pointer}.clients .crow:hover{background:var(--bg-3)}.clients .ctrunc{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clients .crow:last-child{border-bottom:none}.clients .crow.head{padding:14px 22px;border-bottom:1px solid var(--line);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg-faint)}.clients .cname{display:flex;align-items:center;gap:11px}.clients .cavatar{width:28px;height:28px;flex:0 0 auto;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px}.clients .cbal{text-align:right;font-family:var(--font-serif);font-size:15px}.clients .cbal.due{color:var(--warn)}.clients .cbal.paid,.clients .cret.on{color:var(--ok)}.clients .carr,.clients .cret.off{color:var(--fg-faint)}.clients .carr{text-align:right}@media (max-width:760px){.clients .crow{grid-template-columns:1fr auto;row-gap:8px}.clients .crow.head{display:none}.clients .cbal{text-align:left}.clients .carr{display:none}}.swatches{display:flex;gap:6px}.swatch{width:18px;height:18px;flex:0 0 auto;border-radius:50%;border:2px solid transparent;outline:1px solid var(--line-soft);cursor:pointer;padding:0;transition:transform .15s}.swatch:hover{transform:scale(1.18)}.swatch.lg{width:30px;height:30px}.attention{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:14px;gap:14px;margin-bottom:clamp(34px,5vw,48px)}.attn{border:1px solid var(--line);border-radius:14px;background:var(--bg-2);padding:20px;display:flex;gap:14px;align-items:flex-start}.attn .adot{width:8px;height:8px;flex:0 0 auto;margin-top:5px;border-radius:50%}.attn .adot.warn{background:var(--warn);box-shadow:0 0 8px var(--warn)}.attn .adot.accent{background:var(--accent);box-shadow:0 0 8px var(--accent)}.attn .at{font-size:13px;margin-bottom:5px}.attn .ad,.attn .at{font-family:var(--font-mono)}.attn .ad{font-size:12px;color:var(--fg-dim);line-height:1.5}.admin-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:16px;gap:16px}.panel{border:1px solid var(--line);border-radius:16px;background:var(--bg-2);padding:24px}.activity .ev{display:grid;grid-template-columns:26px 1fr auto;grid-gap:12px;gap:12px;align-items:center;padding:10px 0;border-top:1px solid var(--line-soft)}.activity .ev .avatar{width:26px;height:26px;border-radius:50%;color:#0a0a0a;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-weight:700;font-size:11px}.activity .ev .txt{font-family:var(--font-mono);font-size:12.5px;line-height:1.4}.activity .ev .txt b{font-weight:400}.activity .ev .txt .dim{color:var(--fg-dim)}.activity .ev .time{font-family:var(--font-mono);font-size:10px;color:var(--fg-faint);white-space:nowrap}.qa{flex-direction:column}.qa,.qa-btn{display:flex}.qa-btn{text-align:left;align-items:center;justify-content:space-between;gap:12px;font-family:var(--font-mono);font-size:12px;padding:14px 16px;border:1px solid var(--line);border-radius:11px;color:var(--fg);background:none;cursor:pointer;transition:border-color .3s,background .3s;margin-bottom:10px}.qa-btn:hover{border-color:var(--accent);background:var(--accent-soft)}.prov-panel{margin-top:16px}.prov-form{gap:20px}.prov-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:20px;gap:20px}.field-err{font-family:var(--font-mono);font-size:10.5px;color:var(--bad);margin-top:2px}.prov-result{margin-top:22px;padding-top:20px;border-top:1px solid var(--line-soft);display:flex;flex-direction:column;gap:10px}.prov-step{display:flex;align-items:baseline;gap:10px;font-family:var(--font-mono);font-size:12.5px}.prov-mark{width:16px;flex:0 0 auto;text-align:center;font-size:13px}.prov-mark.ok{color:var(--ok)}.prov-mark.bad{color:var(--bad)}.prov-step-label{min-width:56px;letter-spacing:.08em;text-transform:uppercase;font-size:10.5px;color:var(--fg-dim)}.prov-step-detail{color:var(--fg-faint)}.prov-note{font-family:var(--font-mono);font-size:11.5px;color:var(--fg-dim)}.prov-copy{margin-top:6px;padding:16px;border:1px dashed var(--line);border-radius:12px;background:var(--bg);flex-direction:column}.prov-copy,.prov-copy-row{display:flex;gap:10px}.prov-copy-row input{flex:1 1;min-width:0;font-family:var(--font-mono);font-size:12px;color:var(--fg);background:var(--bg-2);border:1px solid var(--line);border-radius:8px;padding:10px 12px;outline:none}.prov-copy-row .btn-ghost{flex:0 0 auto}@media (max-width:560px){.prov-row{grid-template-columns:1fr}}.scrim{position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.55);border:none;padding:0;cursor:pointer;animation:scrim-in .25s ease both}@keyframes scrim-in{0%{opacity:0}to{opacity:1}}@keyframes drawer-in{0%{transform:translateX(100%)}to{transform:none}}.drawer{position:fixed;top:0;right:0;height:100%;width:min(440px,92vw);z-index:101;background:var(--bg-2);border-left:1px solid var(--line);box-shadow:-30px 0 60px rgba(0,0,0,.5);overflow-y:auto;animation:drawer-in .3s cubic-bezier(.2,.8,.2,1) both}.drawer-pad{padding:clamp(22px,4vw,32px)}.drawer-head{justify-content:space-between;margin-bottom:26px}.drawer-head,.drawer-id{display:flex;align-items:center}.drawer-id{gap:14px;margin-bottom:6px}.drawer-avatar{width:48px;height:48px;flex:0 0 auto;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-weight:700;font-size:19px}.drawer-name{font-family:var(--font-serif);font-size:26px;line-height:1}.drawer-proj{font-family:var(--font-mono);font-size:12px;color:var(--fg-dim);margin-top:5px}.accent-picker{margin:26px 0;padding:18px;border:1px solid var(--line-soft);border-radius:12px;background:var(--bg)}.accent-picker .hint{font-family:var(--font-mono);font-size:11px;color:var(--fg-faint);margin-top:12px;line-height:1.5}.record{display:flex;flex-direction:column;border:1px solid var(--line-soft);border-radius:12px;overflow:hidden;margin-bottom:22px}.record .r{display:flex;justify-content:space-between;gap:14px;padding:13px 16px;border-bottom:1px solid var(--line-soft);font-family:var(--font-mono);font-size:12.5px}.record .r:last-child{border-bottom:none}.record .r .k{color:var(--fg-dim)}.record .r .v{text-align:right;overflow-wrap:anywhere}.drawer-actions{flex-direction:column}.drawer-actions,.drawer-actions .row2{display:flex;gap:10px}.drawer-actions .row2 .btn-ghost{flex:1 1;justify-content:center}.login-page{display:flex;flex-direction:column;overflow:hidden}.login-bar{z-index:3;justify-content:space-between;padding:20px clamp(20px,5vw,48px)}.login-bar,.login-main{position:relative;display:flex;align-items:center}.login-main{z-index:2;flex:1 1;min-height:calc(100vh - 76px);flex-direction:column;justify-content:center;padding:40px clamp(20px,5vw,48px) 80px}.login-card{width:100%;max-width:432px;animation:portal-fade .7s cubic-bezier(.16,1,.3,1) both}.login-eyebrow{display:flex;align-items:center;gap:12px;margin-bottom:22px;font-family:var(--font-mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--fg-faint)}.login-eyebrow .rule{flex:1 1;height:1px;background:var(--line)}.login-title{font-family:var(--font-serif);font-weight:300;font-size:clamp(40px,8vw,56px);line-height:1;letter-spacing:-.02em;margin:0 0 14px}.login-title em{font-style:italic;color:var(--accent)}.login-sub{font-family:var(--font-mono);font-size:13px;line-height:1.7;color:var(--fg-dim);margin:0 0 34px}.login-form{gap:24px}.login-form,.login-form .field{display:flex;flex-direction:column}.login-form .field{gap:9px}.login-form .field-row{display:flex;justify-content:space-between;align-items:baseline}.login-form label{font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--fg-faint)}.login-form input{font-family:var(--font-mono);font-size:14px;color:var(--fg);background:transparent;border:none;border-bottom:1px solid var(--line);padding:10px 0;outline:none;width:100%;transition:border-color .3s}.login-form input:focus{border-color:var(--accent)}.login-form input::placeholder{color:var(--fg-faint)}.field-link{font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;color:var(--fg-dim);background:none;border:none;border-bottom:1px solid transparent;padding:0;cursor:pointer;transition:border-color .25s,color .25s}.field-link:hover{color:var(--fg);border-color:var(--accent)}.pw-wrap{position:relative;display:flex;align-items:center}.pw-wrap input{padding-right:54px}.pw-toggle{position:absolute;right:0;font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--fg-dim);background:none;border:none;cursor:pointer;padding:6px 2px;transition:color .25s}.pw-toggle:hover{color:var(--fg)}.login-submit{margin-top:4px;width:100%;justify-content:center;padding:17px 26px}.login-or{display:flex;align-items:center;gap:14px;margin:26px 0;font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--fg-faint)}.login-or .rule-soft{flex:1 1;height:1px;background:var(--line-soft)}.login-magic{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;padding:15px 22px;border:1px solid var(--line);border-radius:999px;color:var(--fg-dim);background:none;cursor:pointer;transition:border-color .3s,color .3s}.login-magic:hover{border-color:var(--accent);color:var(--fg)}.login-sent{margin-top:18px;display:flex;align-items:flex-start;gap:10px;padding:14px 16px;border:1px solid var(--accent);border-radius:12px;background:var(--accent-soft);animation:portal-fade .3s ease both}.login-sent span:first-child{color:var(--accent);font-size:13px;line-height:1.5}.login-sent span:last-child{font-family:var(--font-mono);font-size:12px;line-height:1.6;color:var(--fg)}.login-foot{margin-top:30px;font-family:var(--font-mono);font-size:11px;line-height:1.7;color:var(--fg-faint)}.login-foot a{color:var(--fg-dim);border-bottom:1px solid var(--line);padding-bottom:1px;transition:border-color .3s}.login-foot a:hover{border-color:var(--accent)}.login-legal{position:relative;z-index:2;margin-top:44px;display:flex;gap:26px;flex-wrap:wrap;justify-content:center;font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--fg-faint)}.login-legal a{transition:color .3s}.login-legal a:hover{color:var(--fg-dim)}[data-portal] [tabindex]:focus-visible,[data-portal] a:focus-visible,[data-portal] button:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}@media (max-width:760px){.pbar-nav{display:none}.pbar-burger{display:inline-flex}.tracker{grid-template-columns:1fr 1fr;gap:22px 12px}.history .row{grid-template-columns:1fr auto;row-gap:6px}.history .row .rc,.history .row.head{grid-column:1/-1}.history .row.head{display:none}.history .amt{text-align:left}}