@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500&family=IBM+Plex+Sans+Condensed:wght@600;700&family=IBM+Plex+Sans:wght@400;500;600&display=swap";:root{color-scheme:light;--paper: #f3f6f5;--surface: #ffffff;--sunk: #eaf0ee;--ink: #142230;--muted: #56656f;--line: #d8e0e2;--brand: #007a42;--brand-ink: #ffffff;--brand-soft: #e3f6ec;--brand-dot: #00bf63;--uk: #27519a;--uk-soft: #e4ebf8;--ng: #17774a;--ng-soft: #e0f2e7;--danger: #b42318;--danger-soft: #fdecea;--warn: #8a5a10;--warn-soft: #fbf0dc;--shadow: 0 1px 2px rgba(20, 34, 48, .06), 0 4px 16px rgba(20, 34, 48, .05)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--paper: #0e161c;--surface: #152029;--sunk: #111b22;--ink: #e4ebee;--muted: #97a7b1;--line: #26343f;--brand: #00bf63;--brand-ink: #03140b;--brand-soft: #0f3324;--brand-dot: #00bf63;--uk: #8fb0ee;--uk-soft: #1a2a45;--ng: #6fd39f;--ng-soft: #163a28;--danger: #ff8a7f;--danger-soft: #3d1a17;--warn: #f0b566;--warn-soft: #3a2a14;--shadow: none}}:root[data-theme=dark]{color-scheme:dark;--paper: #0e161c;--surface: #152029;--sunk: #111b22;--ink: #e4ebee;--muted: #97a7b1;--line: #26343f;--brand: #00bf63;--brand-ink: #03140b;--brand-soft: #0f3324;--brand-dot: #00bf63;--uk: #8fb0ee;--uk-soft: #1a2a45;--ng: #6fd39f;--ng-soft: #163a28;--danger: #ff8a7f;--danger-soft: #3d1a17;--warn: #f0b566;--warn-soft: #3a2a14;--shadow: none}*{box-sizing:border-box}html,body{margin:0}body{background:var(--paper);color:var(--ink);font:15px/1.55 IBM Plex Sans,system-ui,-apple-system,Segoe UI,sans-serif;min-height:100vh}h1,h2,h3{font-family:IBM Plex Sans Condensed,Arial Narrow,sans-serif;line-height:1.15;text-wrap:balance;margin:0}h1{font-size:28px}h2{font-size:21px}h3{font-size:16px}p{margin:0}a{color:var(--brand)}code,.mono{font-family:IBM Plex Mono,ui-monospace,Menlo,monospace;font-size:.9em}.muted{color:var(--muted)}.small{font-size:13px}[hidden]{display:none!important}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 20px;background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit}.brand .lupi-logo{height:28px;color:var(--ink)}.top-actions{display:flex;align-items:center;gap:12px}.brand .area{font-family:IBM Plex Sans Condensed,sans-serif;font-weight:600;color:var(--muted);font-size:15px;padding-left:12px;border-left:1px solid var(--line)}@media(max-width:480px){.brand .area{display:none}}.who{display:flex;align-items:center;gap:12px;font-size:14px}.page{max-width:1080px;margin:0 auto;padding:28px 20px 64px;display:grid;gap:24px}.narrow{max-width:760px}.split{display:grid;grid-template-columns:210px minmax(0,1fr);gap:28px;max-width:1180px;margin:0 auto;padding:24px 20px 64px}@media(max-width:820px){.split{grid-template-columns:minmax(0,1fr)}}.sidenav{display:flex;flex-direction:column;gap:2px;position:sticky;top:72px;align-self:start}@media(max-width:820px){.sidenav{position:static;flex-direction:row;flex-wrap:wrap}}.sidenav button{text-align:left;background:none;border:0;color:var(--muted);padding:8px 12px;border-radius:8px;font:inherit;cursor:pointer}.sidenav button:hover{color:var(--ink);background:var(--sunk)}.sidenav button[aria-current=page]{color:var(--ink);background:var(--brand-soft);font-weight:600;box-shadow:inset 3px 0 0 var(--brand-dot)}.stack{display:grid;gap:16px}.row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.row.between{justify-content:space-between}.grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:18px 20px;box-shadow:var(--shadow)}.card.flat{box-shadow:none}.auth{max-width:420px;margin:56px auto}.auth .card{padding:26px;display:grid;gap:16px}.notice{border-radius:10px;padding:12px 14px;background:var(--brand-soft);font-size:14px}.notice.warn{background:var(--warn-soft);color:var(--ink)}.notice.danger{background:var(--danger-soft)}label{display:grid;gap:5px;font-size:13.5px;color:var(--muted);font-weight:500}input,select,textarea{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:9px 11px;width:100%}textarea{font-family:IBM Plex Mono,monospace;font-size:13px;min-height:90px}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.btn{font:inherit;font-weight:600;border-radius:8px;padding:9px 16px;cursor:pointer;border:1px solid transparent;background:var(--brand);color:var(--brand-ink);display:inline-flex;align-items:center;gap:6px;justify-content:center}.btn.secondary{background:var(--surface);color:var(--ink);border-color:var(--line)}.btn.danger{background:var(--danger);color:#fff}.btn.ghost{background:none;color:var(--muted);border:0;padding:6px 8px}.btn.small{padding:5px 10px;font-size:13px}.btn[disabled]{opacity:.55;cursor:progress}.segmented{display:inline-flex;border:1px solid var(--line);border-radius:9px;padding:3px;background:var(--sunk)}.segmented button{border:0;background:none;font:inherit;padding:6px 14px;border-radius:7px;cursor:pointer;color:var(--muted)}.segmented button[aria-pressed=true]{background:var(--surface);color:var(--ink);font-weight:600;box-shadow:var(--shadow)}.pill{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;padding:2px 9px;border-radius:999px;background:var(--sunk);color:var(--muted);white-space:nowrap}.pill.ok{background:var(--brand-soft);color:var(--brand)}.pill.bad{background:var(--danger-soft);color:var(--danger)}.pill.warn{background:var(--warn-soft);color:var(--warn)}.pill.uk{background:var(--uk-soft);color:var(--uk)}.pill.ng{background:var(--ng-soft);color:var(--ng)}.amount{font-variant-numeric:tabular-nums;font-size:24px;font-weight:600;letter-spacing:-.01em}.tablewrap{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:var(--surface)}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;padding:10px 14px;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);background:var(--sunk);font-weight:600}tr:last-child td{border-bottom:0}td.num{font-variant-numeric:tabular-nums;text-align:right}ul.grants{margin:6px 0 0;padding-left:18px;color:var(--muted);font-size:14px}.kv{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:6px 14px;font-size:14px}.kv dt{color:var(--muted)}.kv dd{margin:0;overflow-wrap:anywhere}.secret{display:grid;gap:6px}.secret pre{margin:0;background:var(--sunk);border:1px solid var(--line);border-radius:8px;padding:10px 12px;font:12.5px/1.45 IBM Plex Mono,monospace;white-space:pre-wrap;word-break:break-all;max-height:180px;overflow:auto}pre.code{margin:0;background:var(--sunk);border:1px solid var(--line);border-radius:10px;padding:12px 14px;font:13px/1.55 IBM Plex Mono,monospace;overflow-x:auto}.empty{text-align:center;padding:28px;color:var(--muted);border:1px dashed var(--line);border-radius:12px}.phone{width:280px;max-width:100%;border-radius:28px;background:#1b2530;padding:18px 14px 22px;display:grid;gap:10px;box-shadow:var(--shadow)}.phone .screen{background:#cfe3c7;color:#102015;border-radius:10px;min-height:170px;padding:12px;font:14px/1.4 IBM Plex Mono,monospace;white-space:pre-wrap}.phone input{background:#eef3ee;color:#102015;border:0;font-family:IBM Plex Mono,monospace}.phone .keys{display:grid;grid-template-columns:1fr 1fr;gap:8px}#toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%);background:var(--ink);color:var(--paper);padding:10px 16px;border-radius:10px;font-size:14px;max-width:calc(100vw - 32px);z-index:20}#toast.error{background:var(--danger);color:#fff}@media(prefers-reduced-motion:no-preference){#toast{transition:opacity .2s}}.grow{flex:1;min-width:180px}.align-end{align-self:end}.align-start{align-items:flex-start}svg.chart{width:100%;height:auto;display:block}svg.chart .bar{fill:var(--brand)}svg.chart .axis{fill:var(--muted);font-size:11px;font-family:IBM Plex Sans,sans-serif}.stack.tight{gap:6px}.linkish{background:none;border:0;padding:0;font:inherit;color:var(--brand);cursor:pointer;text-decoration:underline;text-underline-offset:2px}.linkish:disabled{color:var(--muted);cursor:default;text-decoration:none}.input-with-action{position:relative;display:flex}.input-with-action input{padding-right:64px}.input-with-action .btn{position:absolute;right:4px;top:50%;transform:translateY(-50%)}.strength{height:4px;border-radius:4px;background:var(--sunk);overflow:hidden}.strength-bar{display:block;height:100%;width:0;background:var(--danger)}.strength-bar.s1{width:25%;background:var(--danger)}.strength-bar.s2{width:50%;background:var(--warn)}.strength-bar.s3{width:75%;background:var(--brand-dot)}.strength-bar.s4{width:100%;background:var(--brand-dot)}@media(prefers-reduced-motion:no-preference){.strength-bar{transition:width .2s,background .2s}}.code-input{font:600 22px/1.2 IBM Plex Mono,ui-monospace,monospace;letter-spacing:.3em;text-align:center;padding:10px}.stepper{list-style:none;margin:0;padding:0;display:flex;gap:6px;font-size:12.5px;color:var(--muted);flex-wrap:wrap}.stepper li{display:flex;align-items:center;gap:6px}.stepper li+li:before{content:"";width:18px;height:1px;background:var(--line)}.stepper .n{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line);font-size:11px;font-weight:600}.stepper li.current{color:var(--ink);font-weight:600}.stepper li.current .n{border-color:var(--brand);color:var(--brand)}.stepper li.done .n{background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}.howto{margin:0;padding-left:20px;display:grid;gap:6px;font-size:14px}.qr-wrap{display:grid;grid-template-columns:176px minmax(0,1fr);gap:16px;align-items:center}@media(max-width:440px){.qr-wrap{grid-template-columns:minmax(0,1fr);justify-items:center}}.qr{display:block;width:176px;height:176px;border-radius:10px;background:#fff;padding:6px;border:1px solid var(--line)}.setup-key{font-size:14px;background:var(--sunk);border:1px solid var(--line);border-radius:8px;padding:8px 10px;word-break:break-all}.recovery-codes{list-style:none;margin:0;padding:12px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 18px;background:var(--sunk);border:1px solid var(--line);border-radius:10px;font-size:14.5px}label.check{display:flex;align-items:center;gap:8px;color:var(--ink);font-size:14px}label.check input{width:auto}.totp-box{border:1px solid var(--line);border-radius:10px;padding:12px 14px;background:var(--sunk)}.totp-code{font-size:26px;font-weight:600;letter-spacing:.12em;color:var(--ink)}.totp-track{height:4px;border-radius:4px;background:var(--line);overflow:hidden}.totp-bar{display:block;height:100%;width:100%;background:var(--brand-dot);transform-origin:left}.totp-bar.ending{background:var(--warn)}.totp-bar[data-left="0"]{transform:scaleX(0)}.totp-bar[data-left="1"]{transform:scaleX(.033)}.totp-bar[data-left="2"]{transform:scaleX(.067)}.totp-bar[data-left="3"]{transform:scaleX(.1)}.totp-bar[data-left="4"]{transform:scaleX(.133)}.totp-bar[data-left="5"]{transform:scaleX(.167)}.totp-bar[data-left="6"]{transform:scaleX(.2)}.totp-bar[data-left="7"]{transform:scaleX(.233)}.totp-bar[data-left="8"]{transform:scaleX(.267)}.totp-bar[data-left="9"]{transform:scaleX(.3)}.totp-bar[data-left="10"]{transform:scaleX(.333)}.totp-bar[data-left="11"]{transform:scaleX(.367)}.totp-bar[data-left="12"]{transform:scaleX(.4)}.totp-bar[data-left="13"]{transform:scaleX(.433)}.totp-bar[data-left="14"]{transform:scaleX(.467)}.totp-bar[data-left="15"]{transform:scaleX(.5)}.totp-bar[data-left="16"]{transform:scaleX(.533)}.totp-bar[data-left="17"]{transform:scaleX(.567)}.totp-bar[data-left="18"]{transform:scaleX(.6)}.totp-bar[data-left="19"]{transform:scaleX(.633)}.totp-bar[data-left="20"]{transform:scaleX(.667)}.totp-bar[data-left="21"]{transform:scaleX(.7)}.totp-bar[data-left="22"]{transform:scaleX(.733)}.totp-bar[data-left="23"]{transform:scaleX(.767)}.totp-bar[data-left="24"]{transform:scaleX(.8)}.totp-bar[data-left="25"]{transform:scaleX(.833)}.totp-bar[data-left="26"]{transform:scaleX(.867)}.totp-bar[data-left="27"]{transform:scaleX(.9)}.totp-bar[data-left="28"]{transform:scaleX(.933)}.totp-bar[data-left="29"]{transform:scaleX(.967)}.totp-bar[data-left="30"]{transform:scaleX(1)}@media(prefers-reduced-motion:no-preference){.totp-bar{transition:transform 1s linear,background .3s}}.logo-wrap{display:inline-flex}.sidenav a{text-align:left;color:var(--muted);padding:8px 12px;border-radius:8px;text-decoration:none}.sidenav a:hover{color:var(--ink);background:var(--sunk)}.sidenav a[aria-current=page]{color:var(--ink);background:var(--brand-soft);font-weight:600;box-shadow:inset 3px 0 0 var(--brand-dot)}.env-pill{margin-left:4px}.invoice{padding:28px}.invoice-totals{justify-self:end;min-width:260px;font-size:15px}.invoice-totals dd{text-align:right}@media print{.topbar,.sidenav,.no-print,#toast{display:none!important}.split{display:block;padding:0}body{background:#fff;color:#000}.invoice{border:0;box-shadow:none;padding:0}}.price-input{width:120px;font-family:IBM Plex Mono,monospace}fieldset{border:1px solid var(--line);margin:0}legend{font-weight:600;padding:0 6px}:root{--sidebar: #ffffff;--sidebar-line: var(--line);--hover: #eef3f1;--ring: rgba(0, 122, 66, .28);--code-bg: #0d1620;--code-bar: #121e2a;--code-ink: #d7e2ea;--code-muted: #7d8f9c;--radius: 12px;--shadow-lg: 0 12px 40px rgba(20, 34, 48, .16), 0 2px 6px rgba(20, 34, 48, .08)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--sidebar: #111b22;--hover: #1a2732;--ring: rgba(0, 191, 99, .32);--code-bg: #0a1117;--code-bar: #0f1820;--shadow-lg: 0 16px 48px rgba(0, 0, 0, .5)}}:root[data-theme=dark]{--sidebar: #111b22;--hover: #1a2732;--ring: rgba(0, 191, 99, .32);--code-bg: #0a1117;--code-bar: #0f1820;--shadow-lg: 0 16px 48px rgba(0, 0, 0, .5)}.icon{width:18px;height:18px;flex:none}.shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;background:var(--sidebar);border-right:1px solid var(--sidebar-line);z-index:30}.sidebar-head{display:flex;align-items:center;justify-content:space-between;padding:18px 18px 10px}.sidebar-head .lupi-logo{height:26px;color:var(--ink)}.product-switch{margin:4px 12px 8px;padding:9px 12px;border:1px solid var(--line);border-radius:10px;display:flex;align-items:center;justify-content:space-between;gap:8px;background:var(--paper)}.product-name{font-weight:600;font-size:14px}.env-badge{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:2px 8px;border-radius:999px;display:inline-flex;align-items:center;gap:5px}.env-badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.env-badge.sandbox{background:var(--warn-soft);color:var(--warn)}.env-badge.live{background:var(--brand-soft);color:var(--brand)}.sidebar-nav{flex:1;overflow-y:auto;padding:6px 10px 12px;display:grid;align-content:start;gap:14px}.nav-group{display:grid;gap:1px}.nav-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);padding:6px 10px 4px}.sidebar-nav a{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:8px;color:var(--muted);text-decoration:none;font-size:14px;font-weight:500;position:relative}.sidebar-nav a:hover{color:var(--ink);background:var(--hover)}.sidebar-nav a.active{color:var(--ink);background:var(--brand-soft);font-weight:600}.sidebar-nav a.active .icon{color:var(--brand)}.sidebar-nav a.active:before{content:"";position:absolute;left:-10px;top:7px;bottom:7px;width:3px;border-radius:0 3px 3px 0;background:var(--brand-dot)}.sidebar-nav a .trail{width:14px;height:14px;margin-left:auto;opacity:.6}.user-menu{position:relative;padding:10px;border-top:1px solid var(--sidebar-line)}.user-chip{width:100%;display:flex;align-items:center;gap:10px;padding:8px;border-radius:10px;border:0;background:none;color:inherit;font:inherit;cursor:pointer;text-align:left}.user-chip:hover,.user-chip[aria-expanded=true]{background:var(--hover)}.avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;flex:none;background:linear-gradient(135deg,#00bf63,#007a42);color:#fff;font-weight:700;font-size:13px;letter-spacing:.02em}.user-text{display:grid;min-width:0;flex:1}.user-name{font-weight:600;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-detail{font-size:12.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;gap:6px;align-items:center}.role-tag{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:1px 6px;border-radius:5px;background:var(--sunk);color:var(--ink);border:1px solid var(--line)}.user-caret{transform:rotate(-90deg);color:var(--muted);width:16px;height:16px}.menu-pop{position:absolute;left:10px;right:10px;bottom:calc(100% - 4px);background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow-lg);padding:5px;display:grid;gap:1px}.menu-pop a,.menu-pop button{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:7px;border:0;background:none;font:inherit;font-size:14px;color:var(--ink);text-decoration:none;cursor:pointer;text-align:left}.menu-pop a:hover,.menu-pop button:hover{background:var(--hover)}.main{min-width:0;display:flex;flex-direction:column}.main-top{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:12px;height:60px;padding:0 28px;background:color-mix(in srgb,var(--paper) 82%,transparent);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--line)}.crumbs{display:flex;align-items:center;gap:6px;font-size:14px;min-width:0;flex:1}.crumbs a{color:var(--muted);text-decoration:none}.crumbs a:hover{color:var(--ink)}.crumbs .icon{width:14px;height:14px;color:var(--muted)}.crumbs [aria-current]{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.main-actions{display:flex;align-items:center;gap:10px}.search-btn{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 8px 0 12px;min-width:240px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--muted);font:inherit;font-size:14px;cursor:pointer}.search-btn:hover{border-color:color-mix(in srgb,var(--brand) 40%,var(--line));color:var(--ink)}.search-btn kbd{margin-left:auto}kbd{font:600 11px/1 IBM Plex Mono,monospace;padding:3px 6px;border-radius:5px;color:var(--muted);background:var(--sunk);border:1px solid var(--line);border-bottom-width:2px}.icon-btn{display:grid;place-items:center;width:36px;height:36px;border-radius:9px;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer}.icon-btn:hover{background:var(--hover)}.only-mobile{display:none}.content{flex:1;padding:32px 28px 72px}.content-inner{max-width:1120px;margin:0 auto;display:grid;gap:20px}.content-inner>h1:first-child,.content-inner>.row.between:first-child h1{font-size:26px;letter-spacing:-.01em}.content-inner>h1:first-child{padding-bottom:4px}.content h2{font-size:18px;letter-spacing:-.005em}.content .row.between>h1{margin:0}.drawer-backdrop{display:none}@media(max-width:960px){.shell{grid-template-columns:minmax(0,1fr)}.sidebar{position:fixed;left:0;top:0;bottom:0;width:min(300px,86vw);transform:translate(-102%);box-shadow:var(--shadow-lg)}.drawer-open .sidebar{transform:none}.drawer-open .drawer-backdrop{display:block;position:fixed;inset:0;z-index:25;border:0;background:#080e1473}.only-mobile{display:grid}.main-top{padding:0 16px}.content{padding:24px 16px 64px}.search-btn{min-width:0;padding:0 10px}}@media(max-width:600px){.hide-sm{display:none!important}}@media(prefers-reduced-motion:no-preference){.sidebar{transition:transform .22s ease}}.palette-layer{position:fixed;inset:0;z-index:50;background:#080e1473;display:grid;justify-items:center;align-items:start;padding:12vh 16px 16px}.palette{width:min(600px,100%);background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-lg);overflow:hidden}.palette-input{display:flex;align-items:center;gap:10px;padding:4px 14px;border-bottom:1px solid var(--line)}.palette-input .icon{color:var(--muted)}.palette-input input{border:0;padding:14px 0;background:none;font-size:16px}.palette-input input:focus-visible{outline:none}.palette-list{list-style:none;margin:0;padding:6px;max-height:360px;overflow-y:auto}.palette-list li{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:8px;cursor:pointer;font-size:14.5px}.palette-list li[aria-selected=true]{background:var(--brand-soft)}.palette-list li[aria-selected=true] .icon{color:var(--brand)}.palette-list .icon{color:var(--muted)}.palette-empty{color:var(--muted);justify-content:center;cursor:default!important}.palette-foot{display:flex;gap:16px;padding:9px 14px;border-top:1px solid var(--line);background:var(--sunk)}.palette-foot kbd{margin-right:3px}.grow-1{flex:1}.page-header{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px;padding-bottom:4px}.page-header-text{display:grid;gap:6px;max-width:720px}.page-header h1{font-size:28px;letter-spacing:-.015em}.page-eyebrow{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--brand)}.lede{color:var(--muted);font-size:15.5px}.page-header-actions{display:flex;gap:10px;flex-wrap:wrap}.kpis{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stat{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;display:grid;gap:6px;box-shadow:var(--shadow);position:relative;overflow:hidden}.stat:after{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:transparent}.stat.ok:after{background:var(--brand-dot)}.stat.warn:after{background:var(--warn)}.stat.bad:after{background:var(--danger)}.stat-top{display:flex;align-items:center;justify-content:space-between}.stat-label{font-size:13px;color:var(--muted);font-weight:500}.stat-icon{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:var(--sunk);color:var(--muted)}.stat.ok .stat-icon{background:var(--brand-soft);color:var(--brand)}.stat.warn .stat-icon{background:var(--warn-soft);color:var(--warn)}.stat.bad .stat-icon{background:var(--danger-soft);color:var(--danger)}.stat-value{font-size:26px;font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1.15}.stat-note{font-size:12.5px;color:var(--muted)}.checklist{display:grid;gap:14px;padding:20px 22px}.progress-ring{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;flex:none;background:var(--brand-soft);color:var(--brand);font-weight:700;font-size:14px;border:3px solid var(--brand-dot)}.progress{height:6px;border-radius:6px;background:var(--sunk);overflow:hidden}.progress-bar{display:block;height:100%;background:linear-gradient(90deg,#00bf63,#007a42);border-radius:6px;width:0}.w0{width:0}.w1{width:10%}.w2{width:20%}.w3{width:30%}.w4{width:40%}.w5{width:50%}.w6{width:60%}.w7{width:70%}.w8{width:80%}.w9{width:90%}.w10{width:100%}@media(prefers-reduced-motion:no-preference){.progress-bar{transition:width .6s ease}}.tasks{list-style:none;margin:0;padding:0;display:grid}.tasks li{display:flex;align-items:center;gap:14px;padding:12px 4px;border-top:1px solid var(--line)}.task-mark{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;flex:none;border:1.5px solid var(--line);font-size:12.5px;font-weight:700;color:var(--muted)}.task-mark .icon{width:16px;height:16px}.tasks li.done .task-mark{background:var(--brand-dot);border-color:var(--brand-dot);color:#fff}.tasks li.done strong{color:var(--muted);text-decoration:line-through;text-decoration-color:var(--line)}.tasks li.next .task-mark{border-color:var(--brand);color:var(--brand);box-shadow:0 0 0 4px var(--ring)}.task-text{display:grid;gap:2px;flex:1;min-width:0}.guide{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:20px;align-items:start;padding-top:8px}@media(max-width:1100px){.guide{grid-template-columns:minmax(0,1fr)}}.guide-step{display:flex;gap:14px;align-items:flex-start}.guide-n{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;flex:none;background:var(--brand-soft);color:var(--brand);font-weight:700;font-family:IBM Plex Mono,monospace}.tags{gap:6px;margin-top:6px}code.tag{font-size:12px;padding:2px 8px;border-radius:6px;background:var(--sunk);border:1px solid var(--line)}.codeblock{border-radius:var(--radius);overflow:hidden;background:var(--code-bg);border:1px solid #1d2b37;box-shadow:var(--shadow);min-width:0}.codeblock-bar{display:flex;align-items:center;gap:12px;padding:0 10px 0 14px;height:42px;background:var(--code-bar);border-bottom:1px solid #1d2b37}.codeblock .dots{display:inline-flex;gap:6px}.codeblock .dots i{width:10px;height:10px;border-radius:50%;background:#2a3a47}.codeblock .dots i:first-child{background:#00bf63}.codeblock-title{color:var(--code-muted);font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.codeblock-tabs{display:flex;gap:2px;margin-left:auto}.codeblock-tabs button{border:0;background:none;color:var(--code-muted);font:500 12.5px/1 IBM Plex Sans,sans-serif;padding:7px 10px;border-radius:6px;cursor:pointer}.codeblock-tabs button:hover{color:var(--code-ink)}.codeblock-tabs button[aria-selected=true]{color:#fff;background:#1e2d3a}.codeblock-copy{border:1px solid #2a3a47;background:none;color:var(--code-ink);font:600 12px/1 IBM Plex Sans,sans-serif;padding:6px 10px;border-radius:6px;cursor:pointer}.codeblock-copy:hover{background:#1e2d3a}.codeblock pre{margin:0;padding:16px 18px;color:var(--code-ink);font:13px/1.65 IBM Plex Mono,ui-monospace,monospace;overflow-x:auto}.codeblock code{font-size:inherit}.svc-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.svc{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.svc-name{flex:1;font-weight:500;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.svc-dot{width:8px;height:8px;border-radius:50%;background:var(--danger);flex:none}.svc.up .svc-dot{background:var(--brand-dot);box-shadow:0 0 0 4px var(--ring)}.svc.down{border-color:color-mix(in srgb,var(--danger) 40%,var(--line))}.meter{display:block;width:120px;height:6px;border-radius:6px;background:var(--sunk);overflow:hidden}.meter-bar{display:block;height:100%;background:var(--brand-dot);border-radius:6px}.shell .card,.auth-screen .card{border-radius:var(--radius)}.shell .tablewrap{border-radius:var(--radius);box-shadow:var(--shadow)}.shell tbody tr:hover td{background:color-mix(in srgb,var(--brand-soft) 35%,transparent)}.shell th{background:var(--surface);border-bottom-color:var(--line)}.shell td{padding-top:12px;padding-bottom:12px}.shell .btn,.auth-screen .btn{border-radius:9px;transition:background .15s,border-color .15s,box-shadow .15s}.shell .btn:not(.secondary):not(.ghost):not(.danger),.auth-screen .btn:not(.secondary):not(.ghost):not(.danger){box-shadow:0 1px #ffffff26 inset,0 1px 2px #003c1e40}.shell .btn:not(.secondary):not(.ghost):not(.danger):hover,.auth-screen .btn:not(.secondary):not(.ghost):not(.danger):hover{background:color-mix(in srgb,var(--brand) 88%,#000)}.shell .btn.secondary:hover,.auth-screen .btn.secondary:hover{background:var(--hover)}.shell .btn .icon,.auth-screen .btn .icon{width:16px;height:16px}.btn.block{width:100%}.shell input,.shell select,.shell textarea,.auth-screen input,.auth-screen select{transition:border-color .15s,box-shadow .15s}.shell input:focus-visible,.shell select:focus-visible,.shell textarea:focus-visible,.auth-screen input:focus-visible,.auth-screen select:focus-visible{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--ring)}.shell .pill.ok:before,.shell .pill.bad:before,.shell .pill.warn:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.shell .notice{border:1px solid color-mix(in srgb,var(--brand) 20%,transparent)}.shell .notice.warn{border-color:color-mix(in srgb,var(--warn) 25%,transparent)}.shell .notice.danger{border-color:color-mix(in srgb,var(--danger) 25%,transparent)}.shell .empty{background:var(--surface);padding:36px}.t-center{text-align:center}.auth-screen{min-height:100vh;display:flex;flex-direction:column;background:radial-gradient(900px 480px at 85% -10%,color-mix(in srgb,var(--brand-dot) 14%,transparent),transparent 70%),radial-gradient(700px 420px at -10% 110%,color-mix(in srgb,var(--uk) 10%,transparent),transparent 70%),var(--paper)}.auth-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 28px}.auth-header .lupi-logo{height:28px;color:var(--ink)}.auth-screen .auth{width:min(440px,calc(100% - 32px));margin:40px auto 64px}.auth-screen .auth .card{padding:30px;box-shadow:var(--shadow-lg);border-color:color-mix(in srgb,var(--line) 70%,transparent)}.signup{flex:1;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:56px;align-items:center;max-width:1180px;width:100%;margin:0 auto;padding:24px 28px 64px}@media(max-width:920px){.signup{grid-template-columns:minmax(0,1fr);gap:32px;padding:16px 16px 48px}}.signup-pitch{display:grid;gap:18px}.signup-pitch .page-eyebrow{display:inline-block}.signup-pitch h1{font-size:clamp(30px,4vw,44px);letter-spacing:-.02em;line-height:1.08}.signup-pitch .lede{font-size:17px;max-width:560px}.ticks{list-style:none;margin:0;padding:0;display:grid;gap:12px}.ticks li{display:flex;gap:12px;align-items:flex-start;font-size:15px}.ticks .icon{width:22px;height:22px;padding:3px;border-radius:50%;background:var(--brand-soft);color:var(--brand);stroke-width:2.5;margin-top:1px}.signup-code{margin:4px 0 0;padding:16px 18px;border-radius:var(--radius);background:var(--code-bg);color:var(--code-ink);font:13px/1.6 IBM Plex Mono,monospace;overflow-x:auto;border:1px solid #1d2b37;max-width:560px}.signup-form .card{padding:30px;display:grid;gap:14px;box-shadow:var(--shadow-lg);max-width:460px;margin-left:auto}@media(max-width:920px){.signup-form .card{margin:0 auto;width:100%}}.signup-form h2{font-size:22px}a.btn{text-decoration:none}.shell .palette-input input,.shell .palette-input input:focus-visible{border:0;box-shadow:none;outline:none;padding-left:0}.bank{min-height:100vh;display:flex;flex-direction:column;background:var(--paper)}.bank-top{position:sticky;top:0;z-index:20;background:linear-gradient(120deg,#0b3d2e,#0f5c43);color:#fff;box-shadow:0 1px #00000026}.bank-top-in{max-width:1120px;margin:0 auto;padding:0 20px;height:64px;display:flex;align-items:center;gap:24px}.bank-brand{display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none;flex:none}.bank-mono{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;font-weight:800;font-size:14px;background:#ffffff24;border:1px solid rgba(255,255,255,.22)}.bank-brand-text{display:grid;line-height:1.2}.bank-brand-text strong{font-size:15px}.bank-brand-text span{font-size:12px;opacity:.75}.bank-tabs{display:flex;gap:4px;height:100%;flex:1}.bank-tabs a{display:flex;align-items:center;gap:8px;padding:0 14px;color:#ffffffc7;text-decoration:none;font-weight:500;font-size:14.5px;position:relative}.bank-tabs a:hover{color:#fff}.bank-tabs a.active{color:#fff;font-weight:600}.bank-tabs a.active:after{content:"";position:absolute;left:10px;right:10px;bottom:0;height:3px;border-radius:3px 3px 0 0;background:#00bf63}.bank-top-actions{display:flex;align-items:center;gap:10px;margin-left:auto}.bank-top .lupi-theme{border-color:#ffffff40}.bank-top .lupi-theme button{color:#ffffffbf}.bank-top .lupi-theme button[aria-pressed=true]{background:#ffffff29;color:#fff}.bank-top .user-menu{padding:0;border:0;position:relative}.bank-top .user-chip{padding:4px 6px;color:#fff}.bank-top .user-chip:hover,.bank-top .user-chip[aria-expanded=true]{background:#ffffff1f}.bank-top .user-detail{color:#ffffffb3}.bank-top .user-caret{color:#ffffffb3;transform:rotate(90deg)}.bank-top .avatar{background:#fff;color:#0b3d2e}.user-menu.down .menu-pop{top:calc(100% + 8px);bottom:auto;left:auto;right:0;min-width:200px;color:var(--ink)}.bank-main{flex:1;padding:32px 20px 56px}.bank-inner{max-width:1120px;margin:0 auto;display:grid;gap:22px}.bank-foot{max-width:1120px;width:100%;margin:0 auto;padding:18px 20px 28px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;border-top:1px solid var(--line)}.bank-powered{display:inline-flex;align-items:center;gap:6px}.bank-powered .lupi-logo{height:14px;color:var(--ink)}@media(max-width:860px){.bank-top-in{flex-wrap:wrap;height:auto;padding:10px 16px 0;gap:10px 14px}.bank-tabs{order:3;flex-basis:100%;height:46px;overflow-x:auto;margin:0 -6px}.bank-tabs a{padding:0 10px;white-space:nowrap}.bank-top .user-text,.bank-top .user-caret{display:none}.bank-main{padding:24px 16px 48px}}.balance-hero{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:20px;padding:26px 28px;border-radius:18px;color:#fff;background:radial-gradient(500px 240px at 100% 0%,rgba(0,191,99,.45),transparent 70%),linear-gradient(135deg,#0b3d2e,#12324a);box-shadow:0 14px 36px #0b3d2e40}.balance-label{font-size:13px;text-transform:uppercase;letter-spacing:.08em;opacity:.75;font-weight:600}.balance-total{display:flex;flex-wrap:wrap;gap:4px 22px;font:600 38px/1.15 IBM Plex Sans,sans-serif;letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin:6px 0 4px}.balance-note{font-size:13.5px;opacity:.75}.balance-apps{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;padding:10px 14px;border-radius:12px;background:#ffffff1a;border:1px solid rgba(255,255,255,.18);font-size:14px}.balance-apps:hover{background:#ffffff29}.balance-apps span:last-child{display:inline-flex;align-items:center;gap:4px}.balance-apps .icon{width:15px;height:15px}.balance-apps-n{font:700 22px/1 IBM Plex Sans,sans-serif}.acct-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.acct-card{aspect-ratio:1.75;border-radius:16px;padding:18px 20px;color:#fff;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;box-shadow:0 10px 26px #1422302e}.acct-card:after{content:"";position:absolute;width:220px;height:220px;right:-70px;top:-90px;border-radius:50%;background:#ffffff14}.acct-card.tone0{background:linear-gradient(135deg,#0f5c43,#0b3d2e)}.acct-card.tone1{background:linear-gradient(135deg,#27519a,#16325f)}.acct-card.tone2{background:linear-gradient(135deg,#3c4757,#1d2531)}.acct-card-top{display:flex;justify-content:space-between;align-items:center;gap:10px}.acct-name{font-weight:600;font-size:15px}.acct-chip{width:34px;height:26px;border-radius:6px;background:linear-gradient(135deg,#f3d48a,#c9a24a);opacity:.9}.acct-balance{font:600 28px/1.1 IBM Plex Sans,sans-serif;letter-spacing:-.02em;font-variant-numeric:tabular-nums;position:relative;z-index:1}.acct-card-foot{display:flex;justify-content:space-between;font-size:13.5px;opacity:.85;letter-spacing:.06em}.app-card{display:grid;gap:16px}.app-card-head{display:flex;align-items:center;gap:14px}.app-card-title{flex:1;min-width:0}.app-avatar{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;flex:none;font-weight:700;background:linear-gradient(135deg,#1f3347,#142230);color:#fff}.app-card-body{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;padding:14px 16px;border-radius:12px;background:var(--sunk);border:1px solid var(--line)}.strong{font-weight:600}.checklist-plain{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:6px;font-size:14px}.checklist-plain li{display:flex;gap:8px;align-items:flex-start}.checklist-plain .icon{width:16px;height:16px;color:var(--brand);margin-top:3px}.bank .card{border-radius:var(--radius)}.bank .btn{border-radius:9px}.bank a.btn{text-decoration:none}.bank .btn.secondary:hover{background:var(--hover)}.bank input:focus-visible,.bank select:focus-visible{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--ring)}.bank .tablewrap{border-radius:var(--radius)}.bank .pill.ok:before,.bank .pill.bad:before,.bank .pill.warn:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.bank .empty{background:var(--surface);padding:36px}.bank-auth-foot{display:flex;align-items:center;justify-content:center;gap:6px;margin:-40px auto 40px;padding:0 16px;text-align:center}.bank-auth-foot .icon{width:15px;height:15px}.lupi-logo{display:block;height:28px;width:auto;overflow:visible}.lupi-logo .lg-scan{opacity:0}.lupi-logo--anim .lg-stroke{stroke-dasharray:1;stroke-dashoffset:1;animation:lg-draw .9s cubic-bezier(.65,0,.35,1) forwards,lg-fade .5s ease-out forwards}.lupi-logo--anim .lg-fill{opacity:0;animation:lg-show .45s ease-out forwards}.lupi-logo--anim .lg-d1{animation-delay:0s,.95s}.lupi-logo--anim .lg-fill.lg-d1{animation-delay:.6s}.lupi-logo--anim .lg-d2{animation-delay:.12s,1.07s}.lupi-logo--anim .lg-fill.lg-d2{animation-delay:.72s}.lupi-logo--anim .lg-d3{animation-delay:.24s,1.19s}.lupi-logo--anim .lg-fill.lg-d3{animation-delay:.84s}.lupi-logo--anim .lg-d4{animation-delay:.36s,1.31s}.lupi-logo--anim .lg-fill.lg-d4{animation-delay:.96s}.lupi-logo--anim .lg-core,.lupi-logo--anim .lg-ping{transform-box:fill-box;transform-origin:center}.lupi-logo--anim .lg-core{transform:scale(0);animation:lg-land .55s cubic-bezier(.34,1.56,.64,1) 1.1s forwards}.lupi-logo--anim .lg-ping{opacity:0;animation:lg-ping 1.6s cubic-bezier(0,0,.2,1) 1.5s infinite}.lupi-logo--anim .lg-scan{animation:lg-scan 2.4s cubic-bezier(.45,0,.2,1) 1.4s infinite}.lupi-logo--intro .lg-ping{animation-iteration-count:2}.lupi-logo--intro .lg-scan{animation-iteration-count:1}@keyframes lg-draw{to{stroke-dashoffset:0}}@keyframes lg-fade{to{opacity:0}}@keyframes lg-show{to{opacity:1}}@keyframes lg-land{to{transform:scale(1)}}@keyframes lg-ping{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(2.8)}}@keyframes lg-scan{0%{opacity:1;transform:translate(0)}85%{opacity:1}to{opacity:0;transform:translate(780px)}}.lupi-loader{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;text-align:center;color:var(--ink,#142230);opacity:0;animation:lg-show .3s ease-out .12s forwards}.lupi-loader--page{min-height:62vh;padding:40px 16px}.lupi-loader--card{min-height:240px;padding:24px 0;gap:14px}.ll-stage{position:relative;display:grid;place-items:center;padding:26px 36px}.ll-stage:before{content:"";position:absolute;inset:0;background-image:radial-gradient(color-mix(in srgb,var(--muted,#5b6675) 45%,transparent) 1px,transparent 1.3px);background-size:12px 12px;-webkit-mask-image:radial-gradient(ellipse at center,#000 10%,transparent 70%);mask-image:radial-gradient(ellipse at center,#000 10%,transparent 70%);opacity:.55;animation:ll-grid 3s ease-in-out infinite alternate}.ll-stage .lupi-logo{position:relative;height:64px}.lupi-loader--card .ll-stage{padding:18px 28px}.lupi-loader--card .ll-stage .lupi-logo{height:46px}.ll-track{position:relative;width:168px;height:2px;border-radius:2px;overflow:hidden;background:var(--line,#dde2e8)}.ll-track span{position:absolute;inset:0 auto 0 0;width:38%;border-radius:2px;background:linear-gradient(90deg,transparent,#00BF63);box-shadow:0 0 8px #00bf63;animation:ll-track 1.25s cubic-bezier(.65,0,.35,1) infinite}.ll-status{margin:0;display:flex;align-items:center;gap:8px;font:500 12.5px/1.4 IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--muted,#5b6675);letter-spacing:.02em;min-height:18px}.ll-prompt{color:#00bf63;font-weight:600}.ll-caret{display:inline-block;width:7px;height:14px;background:#00bf63;animation:ll-blink 1s steps(1) infinite}.ll-meta{margin:0;font:500 10.5px/1 IBM Plex Mono,ui-monospace,Menlo,monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--muted,#5b6675);opacity:.7}.lupi-loader--card .ll-meta{display:none}@keyframes ll-track{0%{transform:translate(-100%)}to{transform:translate(270%)}}@keyframes ll-blink{50%{opacity:0}}@keyframes ll-grid{to{opacity:.9}}.lupi-pulse{position:relative;display:inline-block;width:10px;height:10px;flex:none}.lupi-pulse:before,.lupi-pulse:after{content:"";position:absolute;inset:0;border-radius:50%;background:#00bf63}.lupi-pulse:after{animation:lg-ping 1.4s cubic-bezier(0,0,.2,1) infinite}.lupi-theme{display:inline-flex;gap:2px;padding:2px;border:1px solid var(--line,#dde2e8);border-radius:999px;background:transparent}.lupi-theme button{display:grid;place-items:center;width:30px;height:26px;padding:0;border:0;border-radius:999px;background:transparent;color:var(--muted,#5b6675);cursor:pointer}.lupi-theme button:hover{color:var(--ink,#142230)}.lupi-theme button[aria-pressed=true]{background:color-mix(in srgb,#00BF63 16%,transparent);color:var(--ink,#142230)}.lupi-theme button:focus-visible{outline:2px solid #00BF63;outline-offset:1px}.lupi-theme svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}@media(prefers-reduced-motion:reduce){.lupi-logo--anim .lg-stroke,.lupi-logo--anim .lg-scan,.lupi-logo--anim .lg-ping{display:none}.lupi-logo--anim .lg-fill{opacity:1;animation:none}.lupi-logo--anim .lg-core{transform:none;animation:none}.lupi-loader{opacity:1;animation:none}.ll-stage:before,.ll-caret{animation:none}.ll-track span{animation:ll-still 1.6s ease-in-out infinite alternate;transform:translate(80%)}.lupi-pulse:after{animation:none}@keyframes ll-still{0%{opacity:.35}to{opacity:1}}}
