@import url("https://fonts.googleapis.com/css2?family=Geist:wght@300;400;500;600&family=Geist+Mono:wght@400;500&display=swap");*,:after,:before{box-sizing:border-box}body,html{height:100%;margin:0;padding:0}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;letter-spacing:-.005em}h1,h2,h3,h4,h5,h6{margin:0;font-weight:500}p{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;border:none;background:none;padding:0}svg{display:block}:focus-visible{outline:3px solid rgba(255,106,31,.5);outline-offset:2px;border-radius:4px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-2);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}@keyframes ryvm-spin{to{transform:rotate(1turn)}}@keyframes ryvm-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes ryvm-slide-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.toast-container{position:fixed;bottom:24px;right:24px;z-index:1000;display:flex;flex-direction:column;gap:8px;pointer-events:none}.toast-container>*{pointer-events:auto;animation:ryvm-slide-up .2s ease}:root{--bg:#07090f;--bg-2:#0b0f1a;--surface:#10162a;--surface-2:#141b30;--surface-3:#1a2238;--card:#0f1424;--border:#1d2742;--border-2:#263254;--border-strong:#324075;--hairline:hsla(0,0%,100%,.06);--text:#e7edf8;--text-2:#a4b0cc;--text-3:#6e7c9b;--text-4:#4f5a78;--mono-color:#8aa0c4;--btn-text-primary:#0a0a0a;--orange:#ff6a1f;--orange-2:#ff854a;--orange-deep:#d4530f;--orange-soft:rgba(255,106,31,.12);--orange-glow:rgba(255,106,31,.35);--blue:#4a86ff;--blue-2:#6ea0ff;--blue-soft:rgba(74,134,255,.12);--cyan:#4fd1d9;--cyan-soft:rgba(79,209,217,.12);--green:#2dd47e;--green-soft:rgba(45,212,126,.14);--amber:#f0b429;--red:#ff5b5b;--grid-line:hsla(0,0%,100%,.035);--grid-line-strong:hsla(0,0%,100%,.07);--font-sans:"Geist",-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;--font-mono:"Geist Mono","JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;--r-1:4px;--r-2:6px;--r-3:10px;--r-4:14px;--r-pill:999px}[data-theme=light]{--bg:#f7f6f2;--bg-2:#fff;--surface:#fff;--surface-2:#f3f1ec;--surface-3:#ebe8e1;--card:#fff;--border:rgba(15,20,36,.1);--border-2:rgba(15,20,36,.16);--border-strong:rgba(15,20,36,.32);--hairline:rgba(15,20,36,.06);--text:#0a1024;--text-2:#44506a;--text-3:#6c7896;--text-4:#8c97b3;--mono-color:#44506a;--orange-soft:rgba(255,106,31,.1);--orange-glow:rgba(255,106,31,.25);--blue-soft:rgba(74,134,255,.1);--cyan-soft:rgba(79,209,217,.14);--green-soft:rgba(45,212,126,.14);--grid-line:rgba(10,16,36,.05);--grid-line-strong:rgba(10,16,36,.1)}.ryvm,.ryvm *{box-sizing:border-box}.ryvm{position:relative;width:100%;height:100%;font-family:var(--font-sans);color:var(--text);background:var(--bg);font-feature-settings:"ss01","cv11","calt","rlig";letter-spacing:-.005em;overflow:hidden;font-size:14px}.ryvm h1,.ryvm h2,.ryvm h3,.ryvm h4,.ryvm h5,.ryvm p{margin:0;font-weight:500}.ryvm button{font:inherit;color:inherit;background:none;border:none;cursor:pointer;padding:0}.ryvm svg{display:block}.mono{font-family:var(--font-mono);font-feature-settings:"ss06","ss07";letter-spacing:0}.upper{text-transform:uppercase;letter-spacing:.08em;font-family:var(--font-mono);font-size:11px;color:var(--text-3)}.ryvm .card{background:var(--card);border:1px solid var(--border);border-radius:var(--r-3)}.ryvm .btn{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:var(--r-2);border:1px solid transparent;font-size:13px;font-weight:500;letter-spacing:-.005em;height:36px;white-space:nowrap}.ryvm .btn--primary{background:var(--orange);color:#0a0a0a;box-shadow:0 1px 0 hsla(0,0%,100%,.18) inset,0 6px 20px -8px var(--orange-glow)}.ryvm .btn--primary:hover{background:var(--orange-2)}.ryvm .btn--ghost{background:transparent;color:var(--text);border-color:var(--border-2)}.ryvm .btn--ghost:hover{background:var(--hairline)}.ryvm .btn--solid{background:var(--surface-2);color:var(--text);border-color:var(--border)}.ryvm .btn--solid:hover{background:var(--surface-3)}.ryvm .btn--sm{height:28px;padding:4px 10px;font-size:12px;border-radius:5px}.ryvm .btn--lg{height:44px;padding:12px 18px;font-size:14px}.ryvm .badge{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;height:22px;border-radius:var(--r-1);border:1px solid var(--border);background:var(--surface-2);font-family:var(--font-mono);font-size:11px;letter-spacing:.02em;color:var(--text-2);white-space:nowrap}.ryvm .badge--green{color:var(--green);border-color:rgba(45,212,126,.28);background:var(--green-soft)}.ryvm .badge--orange{color:var(--orange);border-color:rgba(255,106,31,.32);background:var(--orange-soft)}.ryvm .badge--blue{color:var(--blue);border-color:rgba(74,134,255,.32);background:var(--blue-soft)}.ryvm .badge--cyan{color:var(--cyan);border-color:rgba(79,209,217,.32);background:var(--cyan-soft)}.ryvm .dot{width:6px;height:6px;border-radius:50%;display:inline-block;background:var(--text-3);flex:0 0 auto}.ryvm .dot--green{background:var(--green);box-shadow:0 0 0 3px rgba(45,212,126,.18)}.ryvm .dot--orange{background:var(--orange);box-shadow:0 0 0 3px rgba(255,106,31,.2)}.ryvm .dot--amber{background:var(--amber);box-shadow:0 0 0 3px rgba(240,180,41,.18)}.ryvm .dot--blue{background:var(--blue);box-shadow:0 0 0 3px rgba(74,134,255,.18)}.ryvm .gridbg{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(to right,var(--grid-line) 1px,transparent 1px),linear-gradient(to bottom,var(--grid-line) 1px,transparent 1px);background-size:40px 40px;-webkit-mask-image:radial-gradient(ellipse 80% 70% at 50% 30%,#000 30%,transparent 100%);mask-image:radial-gradient(ellipse 80% 70% at 50% 30%,#000 30%,transparent 100%)}@keyframes ryvm-blink{0%,60%{opacity:1}80%{opacity:.3}to{opacity:1}}.ryvm .blink{animation:ryvm-blink 2.4s ease-in-out infinite}@keyframes ryvm-pulse{0%{transform:scale(1);opacity:.7}to{transform:scale(2.6);opacity:0}}@keyframes ryvm-dash{to{stroke-dashoffset:-40}}.ryvm .flow{stroke-dasharray:4 6;animation:ryvm-dash 1.6s linear infinite}@keyframes ryvm-spark{0%{transform:translateX(0)}to{transform:translateX(-40px)}}@keyframes ryvm-shimmer{0%{background-position:-200px 0}to{background-position:200px 0}}.ryvm .topbar{display:flex;align-items:center;height:56px;padding:0 24px;border-bottom:1px solid var(--border);background:var(--bg);gap:24px;flex:0 0 auto}.ryvm .topbar__brand{display:flex;align-items:center;gap:8px;font-weight:500;font-size:15px;letter-spacing:-.02em}.ryvm .topbar__nav{display:flex;gap:4px;font-size:13px;color:var(--text-2)}.ryvm .topbar__nav a{padding:6px 10px;border-radius:6px;cursor:pointer}.ryvm .topbar__nav a.is-active{color:var(--text);background:var(--hairline)}.ryvm .topbar__nav a:hover{color:var(--text)}.ryvm .topbar__right{margin-left:auto;display:flex;align-items:center;gap:10px}.ryvm .statuschip{display:inline-flex;align-items:center;gap:8px;padding:4px 10px;border:1px solid var(--border);border-radius:var(--r-pill);font-family:var(--font-mono);font-size:11px;color:var(--text-2);background:var(--surface)}.ryvm .sidebar{width:240px;flex:0 0 auto;border-right:1px solid var(--border);padding:16px 12px;display:flex;flex-direction:column;gap:4px;background:var(--bg)}.ryvm .sidebar__group{margin-top:14px;padding:0 8px 6px;font-family:var(--font-mono);text-transform:uppercase;font-size:10px;letter-spacing:.12em;color:var(--text-4)}.ryvm .sidebar__item{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:6px;color:var(--text-2);font-size:13px;cursor:pointer}.ryvm .sidebar__item:hover{background:var(--hairline);color:var(--text)}.ryvm .sidebar__item.is-active{background:var(--surface-2);color:var(--text);box-shadow:inset 2px 0 0 var(--orange)}.ryvm .sidebar__item .count{margin-left:auto;font-family:var(--font-mono);font-size:11px;color:var(--text-4)}.ryvm .col,.ryvm .row{display:flex}.ryvm .col{flex-direction:column}.ryvm .meta-row{display:flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:11px;color:var(--text-3)}.ryvm .spark{width:100%;height:100%}.ryvm .spark path.line{fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.ryvm .spark path.fill{stroke:none;opacity:.18}.ryvm .bar{height:6px;border-radius:3px;background:var(--surface-2);overflow:hidden;position:relative}.ryvm .bar>i{display:block;height:100%;background:var(--orange);border-radius:3px}.ryvm .bar--blue>i{background:var(--blue)}.ryvm .bar--cyan>i{background:var(--cyan)}.ryvm .bar--green>i{background:var(--green)}.ryvm table{width:100%;border-collapse:collapse;font-size:13px}.ryvm th{text-align:left;font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--text-4);font-weight:500;padding:10px 12px;border-bottom:1px solid var(--border)}.ryvm td{padding:12px;border-bottom:1px solid var(--hairline);vertical-align:middle;color:var(--text-2)}.ryvm tr:hover td{background:var(--hairline)}.ryvm .input{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:7px 10px;font:inherit;font-size:13px;color:var(--text);height:32px;outline:none}.ryvm .input:focus{border-color:var(--border-strong)}.ryvm .check{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--text-2);cursor:pointer;padding:4px 0}.ryvm .check input{display:none}.ryvm .check .box{width:14px;height:14px;border:1px solid var(--border-2);border-radius:3px;background:var(--surface);display:inline-flex;align-items:center;justify-content:center}.ryvm .check input:checked+.box{background:var(--orange);border-color:var(--orange)}.ryvm .check input:checked+.box:after{content:"";width:8px;height:4px;border-left:1.5px solid #0a0a0a;border-bottom:1.5px solid #0a0a0a;transform:rotate(-45deg) translate(1px,-1px)}