:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#e8edf5;background:#0e141d;font-size:15px}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 80% -10%,#293644 0,transparent 38%),#0e141d}a{color:inherit;text-decoration:none}header{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:20px max(25px,calc((100vw - 1100px)/2));border-bottom:1px solid #2b3544;background:#101720}header nav{display:flex;align-items:center;gap:25px;flex-wrap:wrap}header nav a:not(.btn),.link{font:inherit;color:#bbc5d1;background:none;border:0;cursor:pointer}.logo{font-size:24px;font-weight:900;letter-spacing:2px}.logo span{color:#f49a36}main{max-width:1100px;padding:42px 24px;margin:auto;min-height:75vh}footer{border-top:1px solid #2b3544;padding:25px;text-align:center;color:#798698;font-size:13px}.hero{padding:80px 20px 100px 0;max-width:760px}.hero h1{font-size:clamp(44px,6vw,76px);line-height:1.04;margin:16px 0}.hero em{font-style:normal;color:#ffac4c}.hero p{color:#aab7c7;font-size:18px;line-height:1.65}.eyebrow{color:#f0a349!important;font-weight:700;font-size:12px!important;letter-spacing:2px}.btn{border:0;display:inline-block;background:#df892b;color:#101720;font-weight:750;padding:12px 19px;border-radius:7px;cursor:pointer}.btn:hover{background:#f9ac4e}.btn.small{padding:9px 13px}.actions{display:flex;gap:10px;margin:20px 0}.cols{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.cols.two{grid-template-columns:repeat(2,1fr)}.panel{background:#17212e;border:1px solid #303e4e;border-radius:12px;padding:24px;margin:18px 0}.panel h2,.panel h3{margin-top:0}.panel p,.muted{color:#a0adbd;line-height:1.6}.heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.heading h1{margin:4px 0}.pill{display:inline-block;background:#313c48;border:1px solid #485566;color:#eac99d;padding:5px 9px;border-radius:20px;text-transform:capitalize;font-size:12px}.stack{display:grid;gap:13px}label{display:grid;gap:7px;color:#cbd5df}input,select{width:100%;background:#0f1823;border:1px solid #455266;border-radius:7px;padding:12px;color:#e7ebf2;font:inherit}#forever_fields,#realm_fields{display:grid;gap:13px}#forever_fields[hidden],#realm_fields[hidden]{display:none}dl{display:grid;grid-template-columns:125px 1fr;gap:12px}dt{color:#93a3b7}dd{margin:0;overflow-wrap:anywhere}.tablewrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left}th,td{padding:13px 9px;border-bottom:1px solid #344151}th{color:#a6b7c8;font-size:12px}td{font-size:13px}.controls{display:flex;gap:6px}.controls button{background:#2e3b4b;border:1px solid #48596c;color:#dbe5ed;border-radius:4px;padding:5px 8px;cursor:pointer}.notice{background:#26364a;border:1px solid #4c6580;padding:12px 15px;border-radius:8px}.notice.error{border-color:#aa554d}.notice.success{border-color:#488e77}@media(max-width:760px){.cols,.cols.two{grid-template-columns:1fr}header{padding:20px;align-items:flex-start;flex-direction:column}.hero{padding:45px 0}.heading{align-items:flex-start;flex-direction:column}}

/* Rynvado header logo: responsive brand treatment */
header .logo{display:inline-flex;align-items:center;justify-content:flex-start;flex-shrink:0;line-height:1}
header .brand-logo{display:block;width:190px;max-width:100%;height:auto;max-height:66px;object-fit:contain;object-position:left center}
@media(max-width:760px){header .brand-logo{width:165px;max-height:58px}}

/* Rynvado homepage redesign – scoped to .landing */
.landing{width:100%;overflow-wrap:anywhere}
.landing-hero{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(300px,.88fr);gap:clamp(24px,4.5vw,62px);align-items:center;padding:clamp(22px,4vw,54px) 0 clamp(32px,5vw,62px);min-height:440px}
.landing-intro{min-width:0}
.landing-kicker{display:flex;align-items:center;gap:9px;color:#f5a446;font-size:11px;font-weight:800;letter-spacing:1.9px;margin:0 0 23px}
.landing-dot,.landing-status-dot,.landing-devdot{display:inline-block;background:#f29a31;border-radius:50%;width:7px;height:7px;flex:none;box-shadow:0 0 11px #d7772370}
.landing-kicker-sep{color:#667385}
.landing-hero h1{font-size:clamp(36px,4.2vw,58px);line-height:1.1;letter-spacing:-1.8px;margin:0 0 22px;color:#f5f7fa;font-weight:800}
.landing-hero h1 span{color:#ffa744}
.landing-lead{font-size:16px;line-height:1.75;color:#aebdcc;max-width:610px;margin:0}
.landing-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin:28px 0 20px}
.landing-primary{display:inline-flex;justify-content:center;align-items:center;gap:17px;padding:14px 19px;min-height:48px}
.landing-secondary{display:inline-flex;align-items:center;gap:10px;font-weight:650;color:#d2dce8;padding:12px 4px}
.landing-secondary:hover{color:#ffb45a}
.landing-caption{font-size:12px;color:#8494a6;line-height:1.7;margin:0}
.landing-preview{min-width:0;border:1px solid #394556;background:linear-gradient(155deg,#1b2632 0%,#141c26 58%,#121921 100%);border-radius:15px;padding:21px;box-shadow:0 20px 65px #00000036;position:relative}
.landing-preview:before{content:"";position:absolute;inset:0;border-radius:15px;background:radial-gradient(circle at 60% 20%,#a6671f17,transparent 55%);pointer-events:none}
.landing-preview-top,.landing-preview-bottom{position:relative;display:flex;justify-content:space-between;align-items:center;gap:9px;color:#91a1b2;font-size:10px;letter-spacing:1.1px;font-weight:750}
.landing-preview-label{border:1px solid #775530;color:#eeb36e;border-radius:20px;padding:5px 8px}
.landing-node{position:relative;border:1px solid #58616c;background:#263240;border-radius:10px;display:flex;align-items:center;gap:12px;padding:17px 14px;margin-top:27px}
.landing-avatar{width:39px;height:39px;border-radius:10px;background:#53351e;color:#ffb05c;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:900;border:1px solid #a76b34;flex:none}
.landing-node strong,.landing-small-node strong{display:block;color:#f1f4f8;font-size:13px}
.landing-node small,.landing-small-node small{display:block;color:#a6b3c1;font-size:11px;line-height:1.5;margin-top:4px}
.landing-orbit{margin-left:auto;color:#ffae4b;font-size:22px}
.landing-preview-links{display:flex;justify-content:space-around;height:23px;margin:0 12%}
.landing-preview-links span{display:block;height:100%;border-left:1px dashed #7a624b}
.landing-node-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.landing-small-node{min-width:0;position:relative;background:#1d2835;border:1px solid #3d4a5b;border-radius:9px;padding:12px 10px;min-height:111px}
.landing-node-symbol{display:block;color:#e99b43;font-size:21px;margin-bottom:7px}
.landing-preview-bottom{margin-top:21px;justify-content:flex-start;font-size:10px;letter-spacing:.1px;font-weight:500}
.landing-preview-bottom span:last-child{color:#657487}
.landing-status-dot{width:6px;height:6px}
.landing-steps{padding:17px 0 26px}
.landing-section-heading{display:flex;justify-content:space-between;align-items:end;gap:26px;margin-bottom:15px}
.landing-section-heading .landing-kicker{margin:0 0 10px}
.landing-section-heading h2{font-size:clamp(23px,3vw,32px);margin:0;letter-spacing:-.7px}
.landing-section-heading>p{max-width:330px;color:#95a5b6;font-size:13px;line-height:1.7;margin:0}
.landing-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.landing-card{border:1px solid #344355;border-radius:12px;background:#182330;padding:23px;display:flex;flex-direction:column;min-height:225px}
.landing-card-number{color:#f0a24a;font-size:11px;font-weight:850;letter-spacing:1.1px}
.landing-card h3{font-size:18px;line-height:1.3;margin:18px 0 8px;color:#f1f5f9}
.landing-card p{font-size:13px;line-height:1.7;color:#9dabbc;margin:0 0 20px}
.landing-card-footer{font-size:11px;color:#cbb18f;margin-top:auto}
.landing-devnote{display:flex;align-items:center;gap:10px;border-top:1px solid #293748;color:#8393a5;font-size:12px;line-height:1.6;padding:21px 0 5px}
@media(max-width:950px){.landing-hero{grid-template-columns:1fr;min-height:0}.landing-preview{max-width:620px}.landing-section-heading{align-items:start;flex-direction:column;gap:10px}}
@media(max-width:680px){.landing-hero{padding-top:18px}.landing-hero h1{letter-spacing:-1px}.landing-cards{grid-template-columns:1fr}.landing-card{min-height:0}.landing-section-heading{margin-top:7px}.landing-preview{padding:15px}.landing-small-node{padding:10px 7px}.landing-node strong,.landing-small-node strong{font-size:12px}.landing-node small,.landing-small-node small{font-size:10px}}

/* Twitch-only OAuth call-to-action. Rynvado's other actions remain orange. */
.twitch-connect-btn { display:inline-flex;align-items:center;justify-content:center;gap:10px; background:#9146ff;color:#fff!important;font-family:Inter,"Roobert","Helvetica Neue",Arial,sans-serif;font-weight:650;font-size:14px;text-decoration:none;border:1px solid #a76cff;border-radius:6px;padding:10px 16px;line-height:1.35;transition:background-color .2s ease,border-color .2s ease,transform .2s ease; }
.twitch-connect-btn:hover {background:#772ce8!important;color:#fff!important;border-color:#9f67f3;}
.twitch-connect-btn:focus-visible {outline:3px solid #d6baff;outline-offset:3px;}
.twitch-connect-btn .twitch-icon {display:block;width:20px;height:20px;flex-shrink:0;}
@media(max-width:480px){.twitch-connect-btn{padding:10px 13px;font-size:13px}}

/* Public homepage: the only Twitch login lives in the global header. */
.landing-explore{display:inline-flex;align-items:center;gap:12px;border:1px solid #665039;background:#241e19;color:#ffbe73;padding:13px 18px;border-radius:7px;min-height:46px;transition:background-color .2s,border-color .2s}
.landing-explore:hover{background:#352719;border-color:#bc8146;color:#ffe1b8}
.landing-explore:focus-visible{outline:3px solid #e4a355;outline-offset:3px}

/* Rynvado 0.2.8 — handcrafted landing composition. Existing application UI unchanged. */
.rv-page{--rv-amber:#ffab4d;--rv-border:#40352e;color:#edf0f6;overflow:hidden}
.rv-page *{box-sizing:border-box}.rv-page .rv-overline{font-size:10px;letter-spacing:2.6px;font-weight:800;color:#f6a653;line-height:1.8}
.rv-page h1,.rv-page h2,.rv-page h3{font-family:Inter,Segoe UI,Arial,sans-serif}.rv-page em{font-style:normal;color:var(--rv-amber)}
.rv-hero{min-height:610px;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);position:relative;align-items:center;padding:55px 0 66px;isolation:isolate}
.rv-hero-ambient{position:absolute;inset:-70px -180px 0;background:radial-gradient(ellipse at 80% 48%,rgba(181,79,15,.16),transparent 38%),radial-gradient(ellipse at 42% 78%,rgba(245,128,15,.045),transparent 52%);z-index:-1;pointer-events:none}
.rv-hero-copy{position:relative;z-index:2;padding:25px 0 25px 0}.rv-pulse{display:inline-block;vertical-align:middle;height:6px;width:6px;background:#ffa23c;border-radius:50%;margin-right:6px;box-shadow:0 0 17px #ff8f31}.rv-muted-slash{color:#8d7257;margin:0 8px}
.rv-hero h1{font-size:clamp(42px,4.35vw,65px);line-height:1.08;font-weight:850;letter-spacing:-3.2px;margin:32px 0 26px;max-width:690px}
.rv-hero-copy>p{font-size:16px;line-height:1.9;color:#b1bbc8;max-width:520px;margin:0}
.rv-text-link{display:inline-flex;align-items:center;gap:26px;border-bottom:1px solid #a66f3c;color:#ffd19a!important;font-weight:700;font-size:13px;padding:13px 0 12px;margin-top:26px;transition:color .2s,border-color .2s}.rv-text-link:hover{color:#fff!important;border-color:#fff}.rv-hero-index{display:block;margin-top:62px;color:#6b7584;font-size:10px;letter-spacing:2px}
.rv-hero-art{height:540px;min-width:0;width:100%;position:relative;display:flex;align-items:center;justify-content:center;margin-right:0;isolation:isolate}.rv-hero-art::before{content:"";position:absolute;width:min(112%,520px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(255,146,40,.23) 0%,rgba(232,91,21,.14) 32%,rgba(248,118,32,.055) 55%,transparent 75%);filter:blur(23px);pointer-events:none;z-index:0}
.rv-hero-sigil{width:min(86%,420px);height:auto;filter:drop-shadow(0 0 38px rgba(240,113,18,.16));position:relative;z-index:2}
.rv-hero-orbit{position:absolute;width:min(94%,425px);aspect-ratio:1;border:1px solid rgba(250,151,60,.18);border-radius:50%;box-shadow:0 0 0 26px rgba(245,138,56,.018),0 0 0 70px rgba(245,138,56,.008)}.rv-hero-orbit:before,.rv-hero-orbit:after{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(243,139,46,.25),transparent);transform:rotate(-27deg)}.rv-hero-orbit:after{transform:rotate(56deg)}
.rv-hero-note{position:absolute;color:#d5aa76;font-size:10px;font-weight:800;letter-spacing:2px;white-space:nowrap;z-index:3}.rv-hero-note span{color:#ffac4d}.rv-note-a{top:90px;left:0}.rv-note-b{right:0;bottom:112px}.rv-hero-caption{position:absolute;bottom:19px;right:0;color:#a58a6a;letter-spacing:2.1px;font-size:9px}
.rv-divider-wrap{height:120px;display:flex;justify-content:center;align-items:center;overflow:hidden}.rv-divider-wrap img{width:min(100%,920px);height:100%;object-fit:contain;filter:drop-shadow(0 0 9px #ff771322)}
.rv-journey{padding:74px 0 72px}.rv-section-intro{display:flex;gap:70px;justify-content:space-between;align-items:end}.rv-section-intro h2,.rv-worlds h2,.rv-trust h2{font-size:clamp(34px,4vw,54px);letter-spacing:-2px;line-height:1.16;margin:16px 0 0}.rv-section-intro>p{max-width:335px;line-height:1.8;font-size:14px;color:#9baab9;margin:0 0 8px}
.rv-journey-art{margin:8px auto -36px;position:relative;height:260px;overflow:hidden;display:flex;align-items:center;justify-content:center}.rv-journey-art img{max-width:940px;width:100%;height:auto;max-height:260px;object-fit:contain}
.rv-path{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:52px;padding:0;margin:0;position:relative}.rv-path li{padding:20px 0;border-top:1px solid #4a3a30;position:relative}.rv-path li:before{content:"";position:absolute;top:-4px;left:0;height:7px;width:7px;background:#ff9b38;transform:rotate(45deg);box-shadow:0 0 15px #ff892e75}.rv-path-no{color:#c58a53;font-size:11px;letter-spacing:2px}.rv-path h3{font-size:25px;margin:9px 0 10px}.rv-path p{font-size:13px;color:#aab4c1;line-height:1.8;margin:0;max-width:240px}
.rv-worlds{margin:60px 0 65px;display:grid;grid-template-columns:.88fr 1.12fr;gap:80px;align-items:center}.rv-worlds-side>p{font-size:14px;line-height:1.9;max-width:350px;color:#a9b5c2}.rv-editions{border-top:1px solid #513c2b}.rv-edition{border-bottom:1px solid #46382f;min-height:116px;display:grid;grid-template-columns:1fr auto;align-content:center;position:relative;padding:20px 22px;transition:background .2s}.rv-edition:hover{background:rgba(255,152,50,.045)}.rv-edition-id{grid-column:1/-1;font-size:10px;letter-spacing:1.8px;color:#a17d5b;font-weight:700}.rv-edition strong{font-size:27px;margin-top:8px;font-weight:760}.rv-edition-arrow{font-size:22px;color:#c78a45;align-self:end}.rv-edition-main{background:linear-gradient(90deg,rgba(210,106,24,.12),transparent 62%);border-left:2px solid #e59a48}
.rv-divider-secondary{height:140px}.rv-divider-secondary img{width:min(100%,900px)}
.rv-trust{text-align:center;position:relative;padding:68px 25px 90px;isolation:isolate}.rv-trust-mark{width:150px;height:150px;object-fit:contain;display:block;margin:0 auto 16px;filter:drop-shadow(0 0 20px #ff8d2f24)}.rv-trust h2{margin:15px 0 19px}.rv-trust>p:not(.rv-trust-foot){max-width:610px;margin:0 auto;color:#aeb9c8;line-height:1.85;font-size:14px}.rv-trust-foot{color:#7c8998;font-size:10px;letter-spacing:1.5px;margin:40px 0 0}.rv-trust-foot span{color:#d18c42;margin:0 8px}
@media(max-width:900px){.rv-hero{grid-template-columns:1fr;gap:0;padding:30px 0 20px}.rv-hero-art{height:390px;margin:0}.rv-hero-sigil{width:min(90%,355px)}.rv-hero-orbit{height:330px;width:330px}.rv-hero-index{margin-top:28px}.rv-note-a{left:6%}.rv-note-b{right:6%}.rv-worlds{grid-template-columns:1fr;gap:25px}.rv-journey-art{height:190px}.rv-section-intro{gap:25px}}
@media(max-width:600px){.rv-hero h1{font-size:clamp(38px,10.5vw,56px);letter-spacing:-1.8px}.rv-hero-art{height:315px}.rv-hero-sigil{width:min(80%,290px)}.rv-hero-orbit{width:280px;height:280px}.rv-note-a{top:18px}.rv-note-b{bottom:30px}.rv-hero-caption{display:none}.rv-divider-wrap{height:75px}.rv-journey{padding:46px 0}.rv-section-intro{display:block}.rv-section-intro>p{margin-top:25px}.rv-journey-art{height:100px;margin:15px 0}.rv-path{grid-template-columns:1fr;gap:14px}.rv-path li{padding:17px 0}.rv-path h3{font-size:22px}.rv-path p{max-width:unset}.rv-worlds{margin:30px 0}.rv-edition{min-height:96px}.rv-trust{padding:30px 0 60px}.rv-trust-foot{line-height:2.2}}
@media(prefers-reduced-motion:reduce){.rv-page *{transition:none!important}}

/* Rynvado 0.2.10: desktop hero artwork must not clip against its grid cell. */
@media (min-width:901px) {
  .rv-page{overflow:visible}
  .rv-hero{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);column-gap:clamp(24px,3vw,52px);min-width:0}
  .rv-hero-copy{min-width:0}
  .rv-hero-art{width:100%;min-width:0;max-width:100%;height:clamp(380px,37vw,500px);margin:0;padding:45px 32px 55px;overflow:visible;box-sizing:border-box;isolation:auto}
  .rv-hero-sigil{display:block;width:min(100%,370px);max-height:90%;object-fit:contain;filter:drop-shadow(0 0 28px rgba(255,126,29,.26)) drop-shadow(0 0 70px rgba(255,115,24,.14))}
  .rv-hero-orbit{width:min(86%,390px);height:auto;aspect-ratio:1;box-shadow:0 0 0 24px rgba(245,138,56,.012)}
  .rv-hero-art::before{width:min(110%,490px);filter:blur(45px);background:radial-gradient(circle,rgba(255,149,47,.24) 0%,rgba(232,91,21,.12) 29%,rgba(248,118,32,.035) 53%,transparent 73%)}
  .rv-note-a{top:15%;left:1%}
  .rv-note-b{right:1%;bottom:17%}
  .rv-hero-caption{right:6%;bottom:5%;font-size:8px;letter-spacing:1.2px}
  .rv-hero-ambient{inset:-65px -6vw -35px;opacity:.75;background:radial-gradient(ellipse at 75% 52%,rgba(181,79,15,.10) 0%,rgba(181,79,15,.04) 28%,transparent 62%);z-index:-1}
}
@media (min-width:901px) and (max-width:1150px){.rv-note-a{left:0}.rv-note-b{right:0}.rv-hero-sigil{width:min(90%,330px)}.rv-hero-caption{font-size:7px}}

/* Rynvado 0.2.11: keep both decorative labels completely inside the hero art. */
@media (min-width:901px) {
  .rv-hero-art { padding-right: 26px; padding-left: 26px; }
  .rv-note-a {left: 6%; top: 13%;}
  .rv-note-b {right: 7%; bottom: 17%; max-width: 86%;}
  .rv-hero-caption {right: 7%; bottom: 4%; width: max-content; max-width:86%; white-space:normal; text-align:right; overflow-wrap:normal; line-height:1.5;}
}
@media (min-width:901px) and (max-width:1150px) {
  .rv-note-b {right:5%; bottom:15%;}
  .rv-hero-caption {right:5%; bottom:3%;}
}

/* Rynvado 0.2.12 – editorial sections / unified game editions */
.rv-journey{padding-top:60px;padding-bottom:82px}
.rv-path{margin-top:58px;gap:clamp(22px,4vw,68px);align-items:start}
.rv-path li{border:0;padding:0 4px 0;min-width:0}
.rv-path li::before{content:none;display:none}
.rv-step-sigil{display:block;width:48px;height:58px;object-fit:contain;margin:0 0 19px -5px;filter:drop-shadow(0 0 8px rgba(255,137,38,.28))}
.rv-path-no{display:block;margin-bottom:9px}
.rv-path h3{margin:0 0 12px}
.rv-worlds{margin-top:70px;margin-bottom:96px}
.rv-editions{border:0;display:grid;gap:0}
.rv-edition,.rv-edition-main{border:0;border-left:0;background:transparent;min-height:103px;padding:21px 4px 20px 24px;grid-template-columns:1fr 30px;position:relative}
.rv-edition::before{content:'';position:absolute;top:30px;bottom:30px;left:0;width:2px;background:linear-gradient(180deg,transparent,#cc7836,transparent);opacity:.55}
.rv-edition:hover{background:linear-gradient(90deg,rgba(255,143,34,.045),transparent)}
.rv-edition-id{color:#bd9470}
.rv-world-sigil{grid-column:2;grid-row:1 / span 2;width:24px;height:31px;object-fit:contain;align-self:center;justify-self:end;opacity:.85}
.rv-trust{padding:30px 25px 92px}
.rv-trust-kicker{display:flex;justify-content:center;align-items:center;gap:12px;margin-bottom:22px}
.rv-trust-mark{width:34px;height:42px;margin:0;filter:drop-shadow(0 0 9px rgba(255,136,34,.3))}
.rv-trust h2{margin-top:7px}
.rv-trust-foot{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;line-height:1.7}
.rv-trust-foot .rv-status-sigil{color:#dc8b3e;font-size:13px;margin:0}
@media(max-width:600px){.rv-path{margin-top:30px;gap:25px}.rv-path li{display:grid;grid-template-columns:44px 1fr;column-gap:13px;align-items:start}.rv-step-sigil{grid-row:1 / span 3;width:38px;height:50px;margin:0}.rv-path-no,.rv-path h3,.rv-path p{grid-column:2}.rv-path h3{margin:5px 0 5px}.rv-worlds{margin-bottom:50px}.rv-trust{padding:30px 0 60px}}

/* Rynvado 0.2.13: bilingual navigation and restrained ornamental rhythm */
.rv-lang-switch{display:inline-flex;gap:6px;align-items:center;padding-left:12px;margin-left:4px;border-left:1px solid #33404e;font-size:12px;letter-spacing:.05em}
.rv-lang-switch a{color:#aab5c5;text-decoration:none;padding:6px 4px;border-radius:3px}.rv-lang-switch a.active{color:#ffae53;font-weight:800}.rv-lang-switch a:hover{color:#fff}.rv-lang-switch span{color:#526070}
.rv-divider-major{height:clamp(100px,12vw,170px);margin:8px auto 0}.rv-divider-major img{width:min(100%,1150px);height:100%;object-fit:contain}
.rv-step-divider{width:min(100%,235px);height:42px;object-fit:contain;display:block;margin:0 0 12px;filter:drop-shadow(0 0 8px #fc851a20)}
.rv-worlds{gap:clamp(28px,5vw,75px)}.rv-edition,.rv-edition-main{display:grid;grid-template-columns:64px 1fr;grid-template-rows:auto auto;column-gap:22px;padding:16px 8px;min-height:102px;align-content:center;background:transparent!important}
.rv-edition:before{display:none}.rv-world-sigil{grid-column:1;grid-row:1/span 2;justify-self:center;align-self:center;width:56px;height:68px;opacity:.9}
.rv-edition-id{grid-column:2;grid-row:1}.rv-edition strong{grid-column:2;grid-row:2}
.rv-trust-foot{display:none}
@media(max-width:700px){.rv-lang-switch{padding-left:6px;margin-left:0}.rv-step-divider{height:34px;max-width:180px}.rv-edition,.rv-edition-main{grid-template-columns:45px 1fr;column-gap:12px}.rv-world-sigil{width:40px;height:55px}.rv-divider-major{height:95px}}

/* Rynvado 0.2.14: single divider family and editorial rhythm */
.rv-divider-wrap,.rv-divider-major{height:auto;min-height:0;margin:45px auto 58px;overflow:visible;padding:0 4px;width:100%}
.rv-divider-wrap img,.rv-divider-major img{display:block;width:100%;max-width:1050px;height:auto;max-height:none;object-fit:contain;filter:drop-shadow(0 0 9px rgba(255,115,21,.11))}
.rv-step-divider{width:min(100%,275px);height:auto;max-height:60px;object-fit:contain;object-position:left center;margin:0 0 21px;filter:drop-shadow(0 0 7px rgba(255,115,21,.1))}
.rv-hero-sigil{width:min(82%,350px);max-height:380px;object-fit:contain;filter:drop-shadow(0 0 27px rgba(255,126,29,.19))}
.rv-hero-orbit{opacity:.42}.rv-hero-art::before{opacity:.7}
.rv-hero-note,.rv-hero-caption{display:none!important}
.rv-world-sigil{width:66px;height:66px;object-fit:contain;filter:drop-shadow(0 0 7px rgba(255,115,21,.14))}
.rv-edition,.rv-edition-main{grid-template-columns:76px 1fr;column-gap:20px;min-height:118px}
.rv-trust-mark{width:30px;height:30px;object-fit:contain}
.rv-site-footer{padding:25px 24px;text-align:left;background:#0e141d}
.rv-footer-inner{max-width:1100px;margin:auto;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:15px}
.rv-footer-inner nav{display:flex;gap:26px}.rv-footer-inner a{color:#b4bfcd;text-decoration:none}.rv-footer-inner a:hover{color:#ffa849}
.rv-legal-page{max-width:760px;margin:30px auto 100px;line-height:1.85;color:#c0cad6}.rv-legal-page h1{font-size:clamp(34px,5vw,56px);color:#f3f6fa}.rv-legal-warning{border-left:3px solid #e99735;padding:16px 20px;background:#241e1a;color:#f3d3ac}
@media(max-width:700px){.rv-divider-wrap,.rv-divider-major{margin:20px auto 34px}.rv-step-divider{max-width:210px}.rv-hero-sigil{width:min(80%,280px)}.rv-edition,.rv-edition-main{grid-template-columns:54px 1fr;gap:12px}.rv-world-sigil{width:48px;height:48px}.rv-footer-inner{align-items:flex-start;flex-direction:column}}

/* v0.2.15: network-driven hero / editorial game symbols */
.rv-hero{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(18px,3vw,48px)}
.rv-network{width:100%;max-width:510px;aspect-ratio:520/480;position:relative;min-width:0;isolation:isolate;margin-inline:auto}
.rv-network-glow{position:absolute;inset:15%;border-radius:50%;background:radial-gradient(circle,rgba(242,110,19,.18),rgba(227,93,17,.03) 51%,transparent 72%);filter:blur(20px)}
.rv-network-lines{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.rv-network-lines path{stroke:#a86833;stroke-width:1.45;stroke-dasharray:4 7;fill:none;opacity:.8}
.rv-network-hub{position:absolute;left:50%;top:47.1%;transform:translate(-50%,-50%);width:34%;aspect-ratio:1;border-radius:50%;border:1px solid rgba(244,146,58,.65);background:radial-gradient(circle,#27303a,#141920 75%);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 0 0 11px rgba(255,128,35,.028),0 0 42px rgba(239,117,30,.23)}
.rv-network-hub img{width:68%;height:68%;object-fit:contain}.rv-network-hub span{color:#ffb968;letter-spacing:.17em;font-weight:750;font-size:clamp(9px,.82vw,11px);margin-top:-6px}
.rv-network-viewer{position:absolute;transform:translate(-50%,-50%);min-width:85px;padding:10px 8px;text-align:center;border:1px solid rgba(204,135,64,.58);border-radius:30px;background:#17212c;color:#d8e2ed;font-size:10px;font-weight:700;letter-spacing:.11em;box-shadow:0 0 21px rgba(234,113,24,.12)}
.rv-network-viewer::before{content:'';display:inline-block;width:5px;height:5px;background:#f49a36;border-radius:50%;vertical-align:middle;margin-right:7px;box-shadow:0 0 8px rgba(246,154,54,.7)}
.rv-viewer-1{left:19.2%;top:19.8%}.rv-viewer-2{left:80.8%;top:19.8%}.rv-viewer-3{left:12.5%;top:57.3%}.rv-viewer-4{left:87.5%;top:57.3%}.rv-viewer-5{left:29.8%;top:85%}.rv-viewer-6{left:70.2%;top:85%}
.rv-world-sigil{width:64px;height:64px;filter:drop-shadow(0 0 5px rgba(255,109,29,.10))}.rv-edition{min-height:120px}
.rv-network-bridge{margin:32px auto 10px;text-align:center;max-width:740px}.rv-network-bridge img{display:block;width:min(100%,650px);height:auto;max-height:210px;object-fit:contain;margin:auto}.rv-network-bridge p{font-size:12px;letter-spacing:.07em;color:#aa9e91;margin:4px 0 5px}
@media(max-width:900px){.rv-hero{grid-template-columns:1fr}.rv-network{max-width:490px;margin:8px auto 10px}}
@media(max-width:600px){.rv-network-viewer{min-width:60px;font-size:8px;padding:7px 3px;letter-spacing:0}.rv-network-hub span{font-size:8px;margin-top:-6px}.rv-network-lines path{stroke-width:1.3}.rv-network-bridge{margin:15px auto}.rv-network-bridge img{max-height:130px}.rv-world-sigil{width:47px;height:47px}}

/* v0.2.16 – uniform viewer nodes in hero network */
.rv-network-viewer {
  box-sizing: border-box;
  width: 112px;
  min-width: 0;
  height: 38px;
  padding: 0 8px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  white-space: nowrap;
  border-radius: 999px;
  font-size: 10px;
  line-height: 1;
  letter-spacing: .07em;
}
.rv-network-viewer::before { flex: 0 0 5px; margin-right: 7px; }
@media (max-width: 600px) {
  .rv-network-viewer { width: 90px; min-width: 0; height: 32px; padding: 0 5px; font-size: 8px; letter-spacing: .03em; }
  .rv-network-viewer::before { margin-right: 5px; }
}

/* v0.2.17 – desktop hero headline: keep each intentional line together.
   The h1 contains two explicit <br> elements; avoid extra wrapping. */
@media (min-width: 901px) {
  .rv-hero { grid-template-columns: minmax(0, 1.17fr) minmax(0, .83fr); gap: clamp(18px, 2.5vw, 35px); }
  .rv-hero h1 { font-size: clamp(42px, 3.05vw, 54px); line-height: 1.13; letter-spacing: -2px; }
}
@media (min-width: 901px) and (max-width: 1100px) {
  .rv-hero h1 { font-size: clamp(38px, 4.15vw, 46px); letter-spacing: -1.5px; }
}

/* 0.2.19: compact trust note integrated in Hero, not another marketing card */
.rv-oauth-note{display:flex;align-items:flex-start;gap:13px;margin-top:24px;max-width:555px;padding:14px 0 13px;border-top:1px solid rgba(238,148,60,.35);border-bottom:1px solid rgba(238,148,60,.14)}
.rv-oauth-shield{flex:0 0 25px;width:25px;height:25px;color:#f4a14b;margin-top:3px}
.rv-oauth-shield svg{width:100%;height:100%;display:block}
.rv-oauth-info{min-width:0}.rv-oauth-info strong{display:block;color:#f6e3ce;font-size:13px;font-weight:700;margin-bottom:6px}
.rv-oauth-info p{font-size:12px;line-height:1.65;color:#aeb9c8;margin:0}
.rv-oauth-note + .rv-text-link{margin-top:18px}
@media(max-width:600px){.rv-oauth-note{max-width:100%;margin-top:21px;padding:12px 0}.rv-oauth-info p{font-size:12px}}


/* 0.2.20 – worlds section: markers closer to content, stronger copy, less empty space */
.rv-worlds{align-items:start;gap:clamp(34px,5vw,92px)}
.rv-worlds-side>p{max-width:420px}
.rv-editions{display:grid;gap:0;align-content:start;padding-top:6px}
.rv-edition{display:grid!important;grid-template-columns:28px minmax(0,1fr);grid-template-rows:auto auto auto;column-gap:18px;row-gap:0;align-items:start;min-height:0;padding:18px 0 22px;background:transparent!important;border-bottom:1px solid rgba(235,144,54,.13)}
.rv-edition:first-child{padding-top:6px}
.rv-edition:last-child{border-bottom:0;padding-bottom:0}
.rv-edition::before{display:none!important}
.rv-world-sigil{grid-column:1;grid-row:1 / span 3;width:20px;height:28px;justify-self:start;align-self:start;margin-top:8px;opacity:.95;filter:drop-shadow(0 0 7px rgba(255,133,33,.18))}
.rv-edition-id{grid-column:2;grid-row:1;font-size:10px;letter-spacing:2px;color:#c69667;font-weight:800}
.rv-edition strong{grid-column:2;grid-row:2;display:block;margin-top:7px;font-size:clamp(26px,2.1vw,32px);line-height:1.15;font-weight:760}
.rv-edition p{grid-column:2;grid-row:3;margin:10px 0 0;max-width:420px;color:#9fb0c3;font-size:13.5px;line-height:1.78}
@media(max-width:900px){.rv-worlds{gap:30px}.rv-edition{padding:16px 0 18px}.rv-edition p{max-width:unset}}
@media(max-width:600px){.rv-edition{grid-template-columns:22px 1fr;column-gap:12px}.rv-world-sigil{width:16px;height:23px;margin-top:6px}.rv-edition strong{font-size:22px}.rv-edition p{font-size:13px;line-height:1.7}}


/* 0.2.22: final section — editorial trust statement rather than an empty logo panel */
.rv-trust-redesign{max-width:1020px;margin:0 auto;padding:18px 0 95px;text-align:center}
.rv-trust-redesign h2{margin:19px 0 21px;font-size:clamp(38px,4.6vw,62px);line-height:1.13;letter-spacing:-2px}
.rv-trust-redesign h2 em{font-style:normal;color:#ffa245}
.rv-trust-lead{max-width:690px;margin:0 auto;color:#b3c1d0;font-size:15px;line-height:1.85}
.rv-trust-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,3vw,48px);text-align:left;margin:66px 0 33px}
.rv-trust-principle{position:relative;min-width:0;padding:0 0 0 20px;border-left:1px solid rgba(239,148,60,.32)}
.rv-trust-no{display:block;color:#ffab5a;font-weight:800;font-size:11px;letter-spacing:.16em;margin-bottom:15px}
.rv-trust-principle h3{margin:0 0 11px;font-size:19px;color:#eef3fa;letter-spacing:-.35px}
.rv-trust-principle p{margin:0;color:#aab9c8;font-size:13px;line-height:1.78}
.rv-trust-fineprint{max-width:700px;margin:44px auto 0;color:#8999a9;font-size:11.5px;line-height:1.7}
@media(max-width:700px){.rv-trust-redesign{padding:16px 0 64px}.rv-trust-principles{grid-template-columns:1fr;gap:26px;margin:43px 0 0}.rv-trust-principle{padding-left:16px}.rv-trust-lead{font-size:14px}.rv-trust-fineprint{margin-top:30px}}

/* 0.3.0-beta.1 – streamer dashboard visual refresh. Homepage styles stay unchanged. */
.rv-dash{max-width:1100px;margin:0 auto;padding:28px 0 95px}
.rv-dash-top{display:flex;align-items:end;justify-content:space-between;gap:25px;margin:0 0 50px}
.rv-dash-eyebrow,.rv-dash-section-no{font-size:10px;font-weight:800;letter-spacing:.19em;color:#f39a3b}
.rv-dash-top h1{font-size:clamp(34px,4vw,53px);letter-spacing:-.045em;line-height:1.13;margin:16px 0 12px}.rv-dash-top h1 span{color:#ffac4c}.rv-dash-top p{color:#aebac8;line-height:1.7;margin:0;max-width:580px}
.rv-dash-state{border:1px solid #715136;color:#ead0ae;border-radius:40px;padding:10px 17px;white-space:nowrap;background:#241e1a;font-size:12px}.rv-dash-state-dot{width:7px;height:7px;border-radius:50%;display:inline-block;background:#f0a049;margin-right:8px}
.rv-dash-layout{display:grid;grid-template-columns:minmax(0,.83fr) minmax(0,1.17fr);gap:36px}
.rv-dash-identity,.rv-dash-add{min-width:0;border-top:1px solid #785031;padding:27px 0 18px}.rv-dash-section-head h2,.rv-dash-character-heading h2{font-size:clamp(25px,2.6vw,34px);margin:10px 0 12px;line-height:1.2}.rv-dash-section-head p,.rv-dash-intro{color:#a8b8c9;font-size:14px;line-height:1.75;max-width:580px;margin:0 0 22px}
.rv-dash-profile-symbol{margin:24px 0 14px;width:76px;height:76px;background:#9146ff;border:1px solid #b18aff;display:grid;place-items:center;color:#fff;font-size:38px;font-weight:900;border-radius:22px;box-shadow:0 0 32px #9146ff1a}
.rv-dash-identity-name{font-size:23px;font-weight:800;margin:0 0 4px}.rv-dash-channel{color:#e2a5ff;font-size:14px;overflow-wrap:anywhere}.rv-dash-channel:hover{text-decoration:underline}
.rv-dash-profile-data{display:grid;grid-template-columns:1fr;margin:30px 0 0;gap:0}.rv-dash-profile-data>div{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #2c3540;padding:15px 0}.rv-dash-profile-data dt,.rv-dash-fieldname{font-size:11px;letter-spacing:.08em;color:#91a2b5;text-transform:uppercase}.rv-dash-profile-data dd{margin:0;font-size:14px;overflow-wrap:anywhere}
.rv-dash-help{color:#8e9daf;font-size:12px;line-height:1.7;margin:15px 0 0}
.rv-dash-form{display:grid;gap:16px}.rv-dash-form label{font-size:13px;color:#dce5ee;font-weight:650}.rv-dash-form input,.rv-dash-form select{margin-top:2px}.rv-dash-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.rv-dash-fields[hidden]{display:none!important}.rv-dash-primary{justify-self:start;margin-top:4px}.rv-dash-primary span{margin-left:16px}
.rv-dash-characters{margin-top:58px}.rv-dash-character-heading{border-top:1px solid #785031;padding-top:28px;display:flex;justify-content:space-between;align-items:center}.rv-dash-character-heading h2{margin-bottom:16px}.rv-dash-count{font-size:25px;color:#ffac4c;font-weight:800}.rv-dash-intro{max-width:800px;margin-bottom:22px}
.rv-dash-character-list{border-top:1px solid #33404c}.rv-dash-character{display:grid;grid-template-columns:minmax(150px,1fr) minmax(125px,.8fr) minmax(235px,1.55fr) auto;gap:22px;border-bottom:1px solid #33404c;padding:27px 0;align-items:start}.rv-dash-client{color:#e69a51;font-size:10px;letter-spacing:.16em;font-weight:800}.rv-dash-char-main h3{font-size:22px;margin:8px 0 5px;overflow-wrap:anywhere}.rv-dash-char-main p{margin:0;color:#acb9c6;font-size:13px}.rv-dash-char-approval{display:flex;flex-direction:column;align-items:start;gap:7px}.rv-dash-verify-label{margin-top:10px}
.rv-dash-status{border:1px solid #495666;border-radius:16px;color:#e7c99f;background:#28313c;padding:5px 10px;display:inline-block;font-size:12px}.rv-status-approved,.rv-status-verified{color:#91e5bf;border-color:#356952;background:#152e27}.rv-status-rejected,.rv-status-suspended{color:#ef9c9c;border-color:#6b3f42;background:#342124}
.rv-dash-char-proof p{margin:9px 0 12px;font-size:13px;line-height:1.7;color:#c9d4e0}.rv-dash-code{color:#f4aa58;letter-spacing:.06em}.rv-dash-proof-form{display:grid;gap:10px}.rv-dash-proof-form input[type=file]{width:100%;font-size:12px;padding:8px}.rv-dash-upload{border:1px solid #8d5f30;background:#302317;color:#ffb46d;padding:10px 14px;border-radius:5px;cursor:pointer;font-weight:700;text-align:left}.rv-dash-upload:hover{background:#463020}
.rv-dash-char-actions{display:flex;align-items:start;justify-content:end}.rv-dash-remove{border:0;background:none;color:#abb8c7;cursor:pointer;font:inherit;font-size:12px;padding:4px}.rv-dash-remove:hover{color:#ffa24c}.rv-dash-empty{padding:36px 0;color:#aebac8}
@media(max-width:850px){.rv-dash-layout{grid-template-columns:1fr;gap:30px}.rv-dash-character{grid-template-columns:repeat(2,minmax(0,1fr))}.rv-dash-top{align-items:start;flex-direction:column;gap:15px}}
@media(max-width:540px){.rv-dash{padding-top:10px}.rv-dash-fields,.rv-dash-character{grid-template-columns:1fr}.rv-dash-char-actions{justify-content:start}.rv-dash-top{margin-bottom:26px}}

/* 0.3.0-beta.2 – Ruleset first; character first and last name in one row */
.rv-dash-ruleset{grid-template-columns:1fr}
.rv-dash-name-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.rv-dash-name-fields.rv-dash-name-single{grid-template-columns:1fr}
.rv-dash-name-fields [hidden]{display:none!important}
@media(max-width:540px){.rv-dash-name-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}


/* 0.3.0-beta.3: Rynvado ornament dividers and Twitch OAuth avatar */
.rv-dash-identity,.rv-dash-add{border-top:0!important;position:relative;padding-top:42px}
.rv-dash-characters{position:relative;padding-top:34px}
.rv-dash-character-heading{border-top:0!important;padding-top:18px}
.rv-dash-identity::before,.rv-dash-add::before,.rv-dash-characters::before{content:"";display:block;width:min(100%,360px);height:34px;background:url("ryn_assets/divider-medium.webp") left center/contain no-repeat;margin:0 0 18px;pointer-events:none;filter:drop-shadow(0 0 4px rgba(228,132,34,.12))}
.rv-dash-characters::before{width:min(100%,490px);height:45px;margin-bottom:0}
.rv-dash-profile-avatar{width:108px;height:108px;display:flex;align-items:center;justify-content:center;margin:20px 0 13px;overflow:hidden;border-radius:50%;border:1px solid rgba(240,154,58,.62);background:#202936;box-shadow:0 0 25px rgba(238,133,34,.12)}
.rv-dash-profile-avatar img{display:block;width:100%;height:100%;object-fit:cover}
.rv-dash-profile-avatar img[hidden]{display:none}
.rv-dash-avatar-fallback{font-size:48px;font-weight:800;color:#e79c4a}
.rv-dash-avatar-fallback[hidden]{display:none}
@media(max-width:700px){.rv-dash-identity::before,.rv-dash-add::before{width:min(100%,290px);height:30px}.rv-dash-characters::before{width:min(100%,330px);height:36px}.rv-dash-profile-avatar{width:88px;height:88px}}



/* 0.3.0-beta.5 – small dividers for column headings, medium for section boundary */
.rv-dash-layout { padding-top: 0; }
.rv-dash-layout::before { content: none !important; display: none !important; }
.rv-dash-identity, .rv-dash-add { position: relative; padding-top: 0 !important; }
.rv-dash-identity::before, .rv-dash-add::before {
  content: "" !important;
  display: block !important;
  position: static;
  transform: none;
  box-sizing: border-box;
  width: min(100%, 365px);
  height: 42px;
  margin: 0 0 15px;
  background: url("ryn_assets/divider-small.webp") left center / contain no-repeat;
  pointer-events: none;
  filter: drop-shadow(0 0 4px rgba(228,132,34,.10));
}
.rv-dash-characters { position: relative; margin-top: 36px; padding-top: 77px; }
.rv-dash-characters::before {
  content: "" !important;
  display: block !important;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: min(100%, 680px);
  height: 60px;
  margin: 0;
  background: url("ryn_assets/divider-medium.webp") center / contain no-repeat;
  pointer-events: none;
  filter: drop-shadow(0 0 4px rgba(228,132,34,.10));
}
.rv-dash-character-heading { padding-top: 0; border-top: 0 !important; }
@media (max-width: 850px) {
  .rv-dash-identity::before, .rv-dash-add::before { width: min(100%, 330px); }
  .rv-dash-characters { margin-top: 30px; padding-top: 65px; }
  .rv-dash-characters::before { height: 52px; width: min(100%, 550px); }
}
@media (max-width: 540px) {
  .rv-dash-identity::before, .rv-dash-add::before { width: min(100%, 285px); height: 34px; margin-bottom: 11px; }
  .rv-dash-characters::before { width: 100%; height: 43px; }
  .rv-dash-characters { padding-top: 55px; }
}


/* 0.3.0-beta.6 – identische Eingabefeldhöhen für Vorname/Nachname */
.rv-dash-name-fields > label {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 7px;
}
.rv-dash-name-fields > label > span {
  display: block;
}
.rv-dash-name-fields > label > input {
  box-sizing: border-box;
  width: 100%;
  height: 45px;
  min-height: 45px;
  margin-top: auto;
}
.rv-dash-name-fields > label[hidden] { display: none !important; }

/* 0.3.0-beta.7: no decorative bars above profile or registration.
   One Medium divider remains before character management. */
.rv-dash-identity::before,.rv-dash-add::before{content:none!important;display:none!important;background:none!important;}
.rv-dash-identity,.rv-dash-add{padding-top:0!important;}
.rv-dash-layout{padding-top:0!important;}
.rv-dash-characters{margin-top:22px;padding-top:73px;}
.rv-dash-characters::before{content:""!important;display:block!important;top:0;left:50%;transform:translateX(-50%);width:min(100%,680px);height:60px;background:url("ryn_assets/divider-medium.webp") center/contain no-repeat;}
@media(max-width:850px){.rv-dash-characters{margin-top:18px;padding-top:62px;}.rv-dash-characters::before{width:min(100%,550px);height:52px;}}
@media(max-width:540px){.rv-dash-characters{padding-top:53px;}.rv-dash-characters::before{width:100%;height:43px;}}


/* Rynvado 0.3.0-beta.8: unified semantic status colors.
   Status classes are presentational only; backend status values stay unchanged. */
.rv-dash-state,
.rv-dash-status{--status-text:#bac6d5;--status-border:rgba(147,165,187,.36);--status-bg:rgba(69,84,105,.19);--status-dot:#97a9bd;
  color:var(--status-text);border-color:var(--status-border);background:var(--status-bg)}
.rv-dash-state.rv-status-approved,.rv-dash-state.rv-status-verified,
.rv-dash-status.rv-status-approved,.rv-dash-status.rv-status-verified{
  --status-text:#86efac;--status-border:rgba(74,222,128,.42);--status-bg:rgba(22,101,52,.2);--status-dot:#4ade80}
.rv-dash-state.rv-status-pending,.rv-dash-status.rv-status-pending{
  --status-text:#f9c27b;--status-border:rgba(245,158,67,.4);--status-bg:rgba(145,83,24,.2);--status-dot:#f59e43}
.rv-dash-state.rv-status-submitted,.rv-dash-status.rv-status-submitted{
  --status-text:#93c5fd;--status-border:rgba(96,165,250,.42);--status-bg:rgba(30,64,115,.22);--status-dot:#60a5fa}
.rv-dash-state.rv-status-rejected,.rv-dash-state.rv-status-suspended,
.rv-dash-status.rv-status-rejected,.rv-dash-status.rv-status-suspended{
  --status-text:#fca5a5;--status-border:rgba(248,113,113,.44);--status-bg:rgba(127,29,29,.18);--status-dot:#f87171}
.rv-dash-state-dot{background:var(--status-dot);box-shadow:0 0 9px color-mix(in srgb,var(--status-dot) 32%,transparent)}
.rv-dash-state strong{color:inherit}

/* 0.3.0-beta.9 – compact on-demand verification code */
.rv-dash-char-proof{position:relative}
.rv-proof-code-details{position:relative;display:inline-block;vertical-align:middle;margin:6px 0 10px}
.rv-proof-code-toggle{width:28px;height:28px;border:1px solid rgba(235,153,68,.55);border-radius:50%;color:#ffa94e;background:rgba(238,143,39,.08);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;list-style:none;font:700 14px/1 Georgia,serif}
.rv-proof-code-toggle::-webkit-details-marker{display:none}
.rv-proof-code-toggle:hover,.rv-proof-code-toggle:focus-visible{background:rgba(238,143,39,.19);outline:2px solid transparent;box-shadow:0 0 0 2px rgba(238,143,39,.25)}
.rv-proof-code-popover{position:relative;z-index:2;margin:10px 0 2px;padding:12px 14px;border:1px solid rgba(235,153,68,.36);background:#17222f;border-radius:7px;max-width:100%;width:max-content;min-width:220px;box-shadow:0 10px 24px rgba(0,0,0,.22)}
.rv-proof-code-popover .rv-dash-fieldname{display:block;margin-bottom:6px}
.rv-proof-code-popover .rv-dash-code{user-select:text;overflow-wrap:anywhere}
.rv-visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* 0.3.0-beta.10: verification code displayed as non-reflowing modal */
.rv-proof-code-toggle{margin:6px 0 10px;vertical-align:middle;padding:0;flex-shrink:0}
.rv-proof-modal{width:min(92vw,480px);max-height:min(85vh,650px);overflow:auto;margin:auto;padding:27px;border:1px solid #80532b;border-radius:12px;background:#131d29;color:#e9eef4;box-shadow:0 24px 65px rgba(0,0,0,.55)}
.rv-proof-modal::backdrop{background:rgba(2,6,12,.78);backdrop-filter:blur(4px)}
.rv-proof-modal-head{display:flex;align-items:start;justify-content:space-between;gap:18px}
.rv-proof-modal-head h2{font-size:24px;line-height:1.25;margin:9px 0 12px}
.rv-proof-modal-x{border:1px solid #57616c;color:#dbe6f2;background:#223042;border-radius:6px;width:32px;height:32px;cursor:pointer;font-size:24px;line-height:1}
.rv-proof-modal-character{color:#ffb66e;font-weight:650;margin:0 0 14px}
.rv-proof-modal-value{font-size:21px;font-weight:760;letter-spacing:1px;text-align:center;background:#0d1520;border-color:#6e5038;user-select:all}
.rv-proof-modal-hint{color:#acb9c9;font-size:13px;line-height:1.65;margin:16px 0}
.rv-proof-modal-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.rv-proof-modal-copy{font:inherit}.rv-proof-modal-dismiss{padding:11px 15px;border:1px solid #506070;border-radius:7px;background:#223043;color:#dce4ef;cursor:pointer}

/* 0.3.0-beta.11 — compact character actions, custom uploader, confirmation modal */
.rv-dash-intro{max-width:780px;margin-bottom:16px}
.rv-dash-character{gap:clamp(12px,2vw,22px);padding:23px 0;grid-template-columns:minmax(145px,1.05fr) minmax(110px,.78fr) minmax(190px,1.45fr) 42px}
.rv-dash-proof-form{margin-top:12px;gap:9px}
.rv-dash-file-picker{position:relative;display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px dashed #536175;border-radius:9px;background:#141f2c;cursor:pointer;min-width:0}
.rv-dash-file-picker:hover,.rv-dash-file-picker:focus-within{border-color:#e29a48;background:#192636}
.rv-dash-file-icon{display:grid;place-items:center;flex:0 0 33px;height:33px;background:#30271f;border-radius:7px;color:#f8ab58;font-size:22px}
.rv-dash-file-copy{min-width:0;display:grid;gap:3px}
.rv-dash-file-copy strong{font-size:13px;color:#eff2f7}
.rv-dash-file-name{font-size:11px;color:#9bafc2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.rv-dash-file-input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}
.rv-dash-file-error{color:#ff9e99;font-size:12px;margin:0}
.rv-dash-file-error[hidden]{display:none}
.rv-dash-upload{text-align:center;display:flex;align-items:center;justify-content:center;gap:10px}
.rv-dash-char-actions{justify-content:end}
.rv-dash-remove{display:grid;place-items:center;width:36px;height:36px;padding:8px;border:1px solid #425065;border-radius:8px;background:#182230;color:#bbc6d2}
.rv-dash-remove svg{width:19px;height:19px}
.rv-dash-remove:hover,.rv-dash-remove:focus-visible{color:#ff9f9d;border-color:#ab4d56;background:#2e1e27}
.rv-delete-modal{max-width:min(92vw,470px)}
.rv-delete-copy{line-height:1.7;color:#bac6d2;margin:20px 0 26px}
.rv-delete-copy strong{color:#fff}
.rv-dash-delete-confirm{border:1px solid #c45357;border-radius:6px;background:#7d2932;color:#fff;padding:11px 16px;cursor:pointer;font-weight:700}
.rv-dash-delete-confirm:hover{background:#9c3640}
@media(max-width:850px){.rv-dash-character{grid-template-columns:repeat(2,minmax(0,1fr))}.rv-dash-char-actions{justify-content:start}}
@media(max-width:540px){.rv-dash-character{grid-template-columns:1fr}}

/* Rynvado 0.3.0-beta.12 – compact, keyboard-accessible character list */
.rv-dash-character-list{border-top:1px solid #33404c}
.rv-dash-character.rv-character-compact{display:block!important;padding:0!important;border-bottom:1px solid #33404c}
.rv-char-disclosure{display:block}
.rv-char-summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:46px minmax(150px,1fr) minmax(180px,auto) 24px;gap:16px;align-items:center;min-height:86px;padding:15px 4px}
.rv-char-summary::-webkit-details-marker{display:none}
.rv-char-summary:focus-visible{outline:2px solid #f8a348;outline-offset:3px;border-radius:5px}
.rv-char-avatar{width:44px;height:44px;border:1px solid #465464;border-radius:9px;background:#1b2938;display:grid;place-items:center;color:#e9a14f}
.rv-char-avatar svg{width:23px;height:23px}
.rv-char-identity{display:grid;gap:5px;min-width:0}
.rv-char-identity strong{color:#f3f5fa;font-size:17px;line-height:1.3;overflow-wrap:anywhere}
.rv-char-identity small{color:#9fadc0;font-size:12px}
.rv-char-summary-status{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end;align-items:center}
.rv-char-summary-status .rv-dash-status{white-space:nowrap;font-size:11px}
.rv-char-chevron{color:#94a6b9;display:flex;align-items:center;justify-content:center;transition:transform .2s}
.rv-char-chevron svg{width:20px;height:20px}
.rv-char-disclosure[open] .rv-char-chevron{transform:rotate(180deg)}
.rv-char-details{display:grid;grid-template-columns:minmax(160px,1fr) minmax(200px,1.3fr);gap:22px;padding:4px 24px 22px 62px;background:linear-gradient(100deg,rgba(36,51,67,.3),rgba(16,23,33,.12));border-radius:0 0 9px 9px}
.rv-char-detail-heading{color:#f1f5f9;font-weight:700;margin:10px 0 3px}
.rv-char-detail-meta{color:#9cacc0;font-size:12px;margin:0 0 14px}
.rv-char-retry-msg{font-size:12px;line-height:1.6;color:#ebad99;max-width:330px}
.rv-char-code-action{position:static!important;display:inline-flex;align-items:center;gap:8px;border:1px solid #936239;border-radius:7px;color:#ffb470;background:#251e19;padding:9px 12px;font-size:12px;cursor:pointer}
.rv-char-details-upload{grid-column:2;grid-row:1 / span 2;align-self:start;padding-top:7px}
.rv-char-verified-msg{font-size:12px;line-height:1.65;color:#89d3b1;grid-column:2;align-self:start;margin:12px 0}
.rv-char-details-actions{grid-column:1 / -1;display:flex;justify-content:flex-end;border-top:1px solid rgba(130,150,170,.15);padding-top:12px}
.rv-char-details-actions .rv-dash-remove{display:inline-flex;align-items:center;gap:9px;padding:9px 11px;border:1px solid #465467;border-radius:7px;background:#1b2836;color:#c0cbd8;font-size:12px;cursor:pointer}
.rv-char-details-actions .rv-dash-remove svg{width:17px;height:17px}
.rv-char-details-actions .rv-dash-remove:hover{color:#ffa9a9;border-color:#9d5d5d}
.rv-char-inline-alert{display:flex;gap:9px;align-items:center;font-size:12px;line-height:1.5;color:#e5a278;padding:0 0 13px 62px}
.rv-char-inline-alert>span{width:17px;height:17px;border:1px solid #ab7558;border-radius:50%;display:grid;place-items:center;flex:none;font-size:11px}
@media(max-width:780px){.rv-char-summary{grid-template-columns:40px minmax(100px,1fr) 20px;gap:11px}.rv-char-avatar{width:40px;height:40px}.rv-char-summary-status{grid-column:2;grid-row:2;justify-content:flex-start}.rv-char-chevron{grid-column:3;grid-row:1 / span 2}.rv-char-summary{padding:14px 2px}.rv-char-details{padding:7px 12px 20px 12px;grid-template-columns:1fr}.rv-char-details-upload,.rv-char-verified-msg,.rv-char-details-actions{grid-column:1;grid-row:auto}.rv-char-inline-alert{padding-left:51px}}


/* beta.13: icon-only detail actions; labels are accessible via aria-label/title */
.rv-char-details .rv-char-code-action,
.rv-char-details-actions .rv-dash-remove {
  box-sizing:border-box;
  display:inline-flex;
  flex:0 0 auto;
  align-items:center;
  justify-content:center;
  gap:0;
  width:38px;
  min-width:38px;
  height:38px;
  min-height:38px;
  padding:0;
  margin:0;
  border-radius:9px;
  line-height:1;
  font-size:0;
}
.rv-char-details .rv-char-code-action svg,
.rv-char-details-actions .rv-dash-remove svg {
  display:block;
  width:19px;
  height:19px;
  flex:0 0 19px;
}
.rv-char-details .rv-char-code-action:focus-visible,
.rv-char-details-actions .rv-dash-remove:focus-visible {
  outline:2px solid #f7a34c;
  outline-offset:3px;
}

/* beta.14: reserve exactly one row for ruleset (Forever) or realm (Retail/Classic).
   Keeping this slot and the name row stable prevents downstream layout jumps. */
.rv-dash-edition-slot{min-height:76px;display:block}
.rv-dash-edition-slot .rv-dash-fields{display:block;grid-template-columns:none}
.rv-dash-edition-slot .rv-dash-fields[hidden]{display:none!important}
.rv-dash-edition-slot .rv-dash-fields label{display:grid;gap:7px}
.rv-dash-edition-slot .rv-dash-fields input,.rv-dash-edition-slot .rv-dash-fields select{width:100%;height:45px;min-height:45px;box-sizing:border-box}
.rv-dash-name-fields{min-height:76px;align-items:end}
.rv-dash-name-fields label{min-width:0}
.rv-dash-name-fields input{height:45px;min-height:45px}
.rv-dash-name-fields.rv-dash-name-single{grid-template-columns:1fr}
@media(max-width:540px){.rv-dash-edition-slot{min-height:76px}.rv-dash-name-fields{min-height:76px}}

/* Rynvado 0.3.0-beta.15: dedicated administrator interface */
.rv-admin{max-width:1100px;margin:0 auto;padding:10px 0 70px}
.rv-admin-shortcuts{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:0 0 20px}
.rv-admin-shortcuts .btn{margin:0}

.rv-admin-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:8px 0 42px;background:transparent;border:0}
.rv-admin-kicker{font-size:11px;letter-spacing:.17em;color:#f6a247;font-weight:800}
.rv-admin-heading h1{font-size:clamp(36px,4.4vw,56px);line-height:1.1;margin:16px 0 10px}
.rv-admin-heading p,.rv-admin-export p{color:#b0bdcd;line-height:1.65;margin:0;max-width:560px}
.rv-admin-summary{display:grid;gap:8px;text-align:right;color:#a9b8c8;font-size:12px;white-space:nowrap}
.rv-admin-summary strong{font-size:13px;color:#f6b467}
.rv-admin-export{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,1.2fr);align-items:center;gap:22px;border-block:1px solid #344050;padding:26px 0}
.rv-admin-export h2,.rv-admin-section h2{font-size:26px;margin:9px 0}
.rv-admin-export-links{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:9px}
.rv-admin-export-links a{display:inline-flex;align-items:center;border:1px solid #8b592f;border-radius:6px;color:#ffb564;background:#2a211b;padding:11px 14px;font-size:13px;font-weight:700}
.rv-admin-export-links a:hover{background:#392618;border-color:#f4a046}
.rv-admin-section{margin-top:52px}
.rv-admin-section-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}
.rv-admin-section-head h2{margin:10px 0 0}.rv-admin-count{font-size:22px;color:#ffa348;font-weight:800}
.rv-admin-rows{border-top:1px solid #344050}
.rv-admin-row{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:22px;align-items:center;padding:21px 3px;border-bottom:1px solid #303c4b}
.rv-admin-person{display:flex;align-items:center;gap:14px;min-width:0}.rv-admin-person strong{font-size:18px}.rv-admin-person small,.rv-admin-secondary{display:block;font-size:12px;color:#aab9ca;line-height:1.6}
.rv-admin-monogram{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border:1px solid #7b542f;border-radius:50%;background:#211c19;color:#f6a348;font-weight:850}
.rv-admin-status{display:inline-flex;width:max-content;white-space:nowrap;padding:6px 10px;border-radius:99px;border:1px solid #536174;color:#bfccdb;background:#1b2734;font-size:12px}
.rv-status-approved,.rv-status-verified{color:#8af2b5;border-color:#277e5c;background:#11291f}
.rv-status-pending,.rv-status-submitted{color:#ffca81;border-color:#93602c;background:#302317}
.rv-status-rejected,.rv-status-suspended{color:#ffa2a2;border-color:#874046;background:#311a21}
.rv-status-not_submitted{color:#bcc9d7}
.rv-admin-actions{display:flex;flex-wrap:wrap;gap:7px;align-items:center}
.rv-admin-actions form{margin:0;display:inline-block}
.rv-admin-action{width:auto;background:#263243;border:1px solid #445468;color:#e6edf7;border-radius:5px;padding:9px 11px;font-size:12px;cursor:pointer}
.rv-admin-action:hover:not(:disabled){border-color:#f3a34b;color:#ffc280}
.rv-admin-action:disabled,.rv-admin-action.is-current{opacity:.43;cursor:default}
.rv-admin-character{padding:22px 3px;border-bottom:1px solid #303c4b}
.rv-admin-character-head{display:flex;align-items:center;justify-content:space-between;gap:20px}
.rv-admin-edition{color:#ffa54c;font-size:10px;letter-spacing:.16em;font-weight:800}
.rv-admin-char-name h3{margin:6px 0 3px;font-size:23px}
.rv-admin-statuses{display:flex;gap:25px;align-items:center}.rv-admin-statuses>div{display:grid;gap:8px}
.rv-admin-statuses small{color:#8fa7bc;font-size:10px;text-transform:uppercase;letter-spacing:.11em}
.rv-admin-review-details{margin-top:16px}.rv-admin-review-details summary{list-style:none;cursor:pointer;color:#e7ab69;font-weight:700;font-size:13px;width:max-content}
.rv-admin-review-details summary::-webkit-details-marker{display:none}.rv-admin-review-details summary span{display:inline-block;margin-left:8px;transition:transform .15s}
.rv-admin-review-details[open] summary span{transform:rotate(180deg)}
.rv-admin-review-grid{margin-top:19px;display:grid;grid-template-columns:1fr 1fr;gap:28px;border-top:1px solid #334050;padding-top:20px}
.rv-admin-review-part h4{font-size:15px;margin:0 0 11px}.rv-admin-review-part .rv-admin-actions{margin-top:15px}
.rv-admin-review-part code{color:#ffc78a;font-size:12px}.rv-admin-proof{display:inline-flex;color:#ffb769;font-size:13px;margin-top:7px}
.rv-admin-empty{color:#a6b5c5;margin:25px 0}
@media(max-width:800px){.rv-admin-row{grid-template-columns:1fr auto;gap:14px}.rv-admin-row .rv-admin-actions{grid-column:1/-1}.rv-admin-export{grid-template-columns:1fr}.rv-admin-export-links{justify-content:flex-start}}
@media(max-width:600px){.rv-admin-heading{display:block}.rv-admin-summary{text-align:left;margin-top:20px}.rv-admin-character-head{display:grid}.rv-admin-statuses{gap:15px}.rv-admin-review-grid{grid-template-columns:1fr}.rv-admin-export-links a{flex:1;justify-content:center}}


/* beta.16: actionable review counts; exports after reviews */
.rv-admin-heading {align-items:center;gap:40px;padding-bottom:30px}
.rv-admin-intro {min-width:0;flex:1}
.rv-admin-summary {display:grid;grid-template-columns:repeat(2,minmax(145px,1fr));gap:14px;text-align:left;white-space:normal;min-width:min(390px,44%)}
.rv-admin-summary-item {padding:15px 17px;background:linear-gradient(135deg,rgba(255,148,50,.07),rgba(255,148,50,.015));border-left:2px solid rgba(236,143,49,.6);display:flex;flex-direction:column;gap:8px;min-width:0}
.rv-admin-summary-item strong {font-size:clamp(26px,3vw,36px);line-height:1;color:#f0f4fb;font-variant-numeric:tabular-nums}
.rv-admin-summary-item span {font-size:12px;color:#b0bfce;line-height:1.4}
.rv-admin-total {font-size:12px;color:#91a5b9;white-space:nowrap}
.rv-admin-export {margin-top:62px;border-top:1px solid rgba(147,166,187,.25);border-bottom:0;padding:34px 0 0}
.rv-admin-section {margin-top:38px}
@media(max-width:800px){.rv-admin-heading{display:block}.rv-admin-summary{min-width:0;max-width:480px;margin-top:26px}}
@media(max-width:520px){.rv-admin-summary{grid-template-columns:1fr 1fr;gap:9px}.rv-admin-summary-item{padding:12px 10px}.rv-admin-summary-item strong{font-size:26px}.rv-admin-summary-item span{font-size:11px}}

/* beta.17: offene Streamer zuerst; bearbeitete Konten platzsparend */
.rv-admin-queue-head{display:flex;align-items:center;gap:10px;margin:6px 0 12px}
.rv-admin-queue-head strong{font-size:13px;font-weight:750;color:#e7edf6}
.rv-admin-queue-head .rv-admin-status{padding:3px 10px;font-weight:750}
.rv-admin-pending-rows{border-top:1px solid #37475b}
.rv-admin-empty-good{color:#8bdaaa;padding:8px 0}
.rv-admin-reviewed{margin-top:15px;border-top:1px solid #324052}
.rv-admin-reviewed>summary{display:flex;justify-content:space-between;align-items:center;list-style:none;cursor:pointer;padding:19px 2px;color:#c3d2e1;font-size:13px;font-weight:700}
.rv-admin-reviewed>summary::-webkit-details-marker{display:none}
.rv-admin-reviewed>summary small{font-size:12px;color:#95a9bc;font-weight:500}
.rv-admin-reviewed-chevron{transition:transform .2s;font-size:20px;color:#f0a351}
.rv-admin-reviewed[open] .rv-admin-reviewed-chevron{transform:rotate(180deg)}
.rv-admin-reviewed>summary:focus-visible{outline:2px solid #f0a351;outline-offset:3px}
.rv-admin-reviewed .rv-admin-row{padding:15px 3px}
.rv-admin-action-positive{border-color:#338968;color:#9bffcb;background:#142b25}
.rv-admin-action-positive:hover{border-color:#50c993!important;color:#c8ffe2!important}
.rv-admin-action-negative{border-color:#805157;color:#ffabb1;background:#281b22}
.rv-admin-action-negative:hover{border-color:#ca777d!important;color:#ffced1!important}
@media(max-width:760px){.rv-admin-streamers .rv-admin-row{grid-template-columns:1fr auto}.rv-admin-streamers .rv-admin-actions{grid-column:1/-1}}

/* 0.3.0-beta.18: review queue and separated verification/approval stages */
.rv-admin-character-compact{padding:16px 0}
.rv-admin-character-compact .rv-admin-character-head{gap:20px}
.rv-admin-characters .rv-admin-pending-rows{border-top:1px solid #37475b}
.rv-admin-review-grid{align-items:start}
.rv-admin-phase{display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(245,158,62,.38);border-radius:50%;width:25px;height:25px;margin-right:6px;color:#f4aa63;font-size:10px;font-weight:800}
.rv-admin-review-part h4{display:flex;align-items:center;gap:4px}
.rv-admin-review-part .rv-admin-actions{flex-wrap:wrap;gap:8px}
.rv-admin-characters .rv-admin-reviewed{margin-top:18px}
@media(max-width:800px){.rv-admin-character-compact .rv-admin-character-head{align-items:flex-start}.rv-admin-review-grid{grid-template-columns:1fr}}

/* beta.19: searchable Twitch-grouped character reviews */
.rv-admin-group-toolbar{display:flex;flex-wrap:wrap;gap:11px;align-items:center;margin:20px 0 22px}
.rv-admin-search-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#rv-admin-character-search{flex:1 1 250px;min-width:185px;width:auto;background:#121c28;border:1px solid #48586c;border-radius:7px;padding:12px 15px;color:#f3f6fb;font-size:13px;box-sizing:border-box}
#rv-admin-character-search:focus-visible{outline:2px solid #eea04b;outline-offset:2px}
.rv-admin-group-filter{display:flex;gap:5px;background:#151f2d;padding:4px;border:1px solid #354355;border-radius:7px}
.rv-admin-group-filter button{border:0;border-radius:5px;background:transparent;color:#b2c1d2;cursor:pointer;padding:9px 11px;font-size:12px}
.rv-admin-group-filter button[aria-pressed=true]{background:#384354;color:#fff}
.rv-admin-group-list{display:grid;gap:11px}
.rv-admin-streamer-group{background:#151e2a;border:1px solid #3a475a;border-radius:9px;overflow:hidden}
.rv-admin-streamer-group[open]{border-color:#715535}
.rv-admin-streamer-group>summary{display:flex;align-items:center;gap:13px;padding:15px;list-style:none;cursor:pointer;min-width:0}
.rv-admin-streamer-group>summary::-webkit-details-marker{display:none}
.rv-admin-streamer-group>summary:focus-visible{outline:2px solid #e69a46;outline-offset:-3px}
.rv-admin-group-avatar{width:42px;height:42px;border-radius:8px;flex:none;display:grid;place-items:center;font-weight:800;background:#2b3546;color:#f7bd79;border:1px solid #536174}
.rv-admin-group-person{display:grid;gap:3px;min-width:0;flex:1}
.rv-admin-group-person strong{color:#f5f6fa;overflow-wrap:anywhere}
.rv-admin-group-person small{color:#9aaabd;font-size:12px}
.rv-admin-group-arrow{font-size:23px;line-height:1;color:#e6a65c;transition:transform .2s;margin-left:5px}
.rv-admin-streamer-group[open] .rv-admin-group-arrow{transform:rotate(180deg)}
.rv-admin-group-members{padding:3px 18px 14px;border-top:1px solid #344153}
.rv-admin-group-members .rv-group-character:last-child{border-bottom:0}
.rv-admin-group-members .rv-group-character[hidden],.rv-admin-streamer-group[hidden]{display:none!important}
.rv-admin-group-members .rv-admin-char-name h3{font-size:18px}
@media(max-width:650px){.rv-admin-group-toolbar{align-items:stretch;flex-direction:column}.rv-admin-group-filter{width:100%}.rv-admin-group-filter button{flex:1}.rv-admin-group-members{padding:2px 12px 12px}.rv-admin-streamer-group>summary{padding:12px;gap:9px}.rv-admin-group-avatar{width:36px;height:36px}}

/* beta.21: identical fixed status columns for all character rows */
.rv-admin-group-members .rv-admin-character-head .rv-admin-statuses {
  display:grid;grid-template-columns:120px 145px;column-gap:20px;flex:0 0 auto;align-items:start;
}
.rv-admin-group-members .rv-admin-character-head .rv-admin-statuses>div {
  display:flex;flex-direction:column;align-items:flex-start;min-width:0;gap:8px;
}
.rv-admin-group-members .rv-admin-character-head .rv-admin-statuses .rv-admin-status {
  box-sizing:border-box;max-width:100%;
}
@media(max-width:650px) {
  .rv-admin-group-members .rv-admin-character-head .rv-admin-statuses {
    grid-template-columns:minmax(104px,120px) minmax(126px,145px);column-gap:12px;
  }
}
@media(max-width:480px) {
  .rv-admin-group-members .rv-admin-character-head {display:flex;flex-direction:column;align-items:stretch;gap:15px}
  .rv-admin-group-members .rv-admin-character-head .rv-admin-statuses {
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);width:100%;gap:12px;
  }
}

/* Rynvado beta.22 — desktop-app preview in streamer dashboard */
.rv-dash-desktop{margin:28px 0 8px;padding:25px 28px;border:1px solid rgba(219,142,56,.25);border-radius:16px;background:linear-gradient(115deg,rgba(55,37,28,.65),rgba(17,23,31,.95) 65%);box-shadow:0 10px 30px rgba(0,0,0,.10)}
.rv-dash-desktop-intro{display:flex;gap:18px;align-items:flex-start}
.rv-dash-desktop-icon{width:48px;height:48px;flex:0 0 48px;display:grid;place-items:center;border-radius:13px;border:1px solid rgba(231,156,73,.36);background:rgba(229,143,53,.10);color:#efab69}
.rv-dash-desktop-icon svg{width:26px;height:26px}
.rv-dash-desktop-copy{flex:1;min-width:0}
.rv-dash-desktop-copy h2{margin:5px 0 8px;font-size:clamp(21px,2.3vw,28px);line-height:1.2}
.rv-dash-desktop-copy p{margin:0;max-width:730px;color:#b9c4d1;font-size:14px;line-height:1.65}
.rv-dash-desktop-badge{flex-shrink:0;margin-top:4px;border:1px solid rgba(227,155,72,.42);border-radius:999px;padding:7px 12px;color:#f3b474;background:rgba(227,155,72,.09);font-size:11px;letter-spacing:.02em;font-weight:700}
.rv-dash-desktop-bottom{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-top:23px;padding-top:19px;border-top:1px solid rgba(182,155,125,.18)}
.rv-dash-desktop-points{display:flex;flex-wrap:wrap;gap:10px 18px;color:#cbd5e1;font-size:12px}
.rv-dash-desktop-points span{display:inline-flex;gap:7px;align-items:center}
.rv-dash-desktop-points svg{width:14px;height:14px;stroke:#e9a15a;flex-shrink:0}
.rv-dash-desktop-download{display:flex;flex-direction:column;align-items:flex-end;gap:8px;max-width:255px}
.rv-dash-desktop-disabled{border:1px solid #5b4a3b;border-radius:9px;background:#3d332d;color:#beafa1;padding:11px 18px;font:inherit;font-weight:700;font-size:13px;cursor:not-allowed;opacity:.78}
.rv-dash-desktop-download small{color:#92a0af;font-size:11px;text-align:right;line-height:1.45}
@media(max-width:800px){.rv-dash-desktop{padding:20px}.rv-dash-desktop-intro{flex-wrap:wrap;gap:13px}.rv-dash-desktop-badge{margin-left:61px}.rv-dash-desktop-bottom{align-items:start;flex-direction:column}.rv-dash-desktop-download{align-items:flex-start;max-width:none}.rv-dash-desktop-download small{text-align:left}}

/* beta.23: jump from Twitch profile to desktop app section */
html{scroll-behavior:smooth}
#rv-desktop-app{scroll-margin-top:28px}
.rv-dash-desktop-jump{display:flex;align-items:center;gap:11px;justify-content:space-between;width:100%;margin:24px 0 0;padding:10px 18px;border:1px solid rgba(233,146,53,.45);background:rgba(233,146,53,.07);border-radius:8px;color:#ffc384;font-size:13px;font-weight:700;line-height:1;text-decoration:none;transition:background .18s,border-color .18s}
.rv-dash-desktop-jump:hover{background:rgba(233,146,53,.15);border-color:#ef9d4b;color:#ffdcad}
.rv-dash-desktop-jump:focus-visible{outline:2px solid #ef9d4b;outline-offset:3px}
.rv-dash-desktop-jump-icon{display:inline-flex;flex:none}
.rv-dash-desktop-jump-icon svg{width:18px;height:18px}
.rv-dash-desktop-jump-arrow{margin-left:auto;font-size:19px;line-height:1}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* RYNVADO 403 ERROR DESIGN — beta.31 START */
.rv-error403{position:relative;isolation:isolate;display:grid;place-items:center;padding:18px 0 44px;min-height:520px;overflow:hidden;text-align:center}
.rv-error403-glow{position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% 33%,rgba(208,105,25,.12),transparent 49%)}
.rv-error403-panel{width:min(100%,740px);padding:29px clamp(20px,5vw,64px) 30px;border:1px solid rgba(224,146,61,.28);border-radius:16px;background:linear-gradient(150deg,rgba(27,37,50,.94),rgba(13,20,31,.97));box-shadow:0 28px 80px rgba(0,0,0,.25)}
.rv-error403-brand{display:flex;flex-direction:column;align-items:center;gap:0;margin:0 auto 15px}
.rv-error403-logo{display:block;max-width:min(300px,80%);max-height:108px;object-fit:contain}
.rv-error403-overline{font-size:11px;letter-spacing:.18em;font-weight:800;color:#eeaa65;margin:0 0 9px}
.rv-error403-overline span{padding:0 6px;color:#677485}
.rv-error403-number{font-size:clamp(96px,16vw,160px);line-height:1;letter-spacing:-.065em;font-weight:900;color:#f2a04a;text-shadow:0 0 50px rgba(211,104,23,.2);padding-right:.065em}
.rv-error403 h1{font-size:clamp(29px,4vw,43px);line-height:1.15;letter-spacing:-.025em;color:#f5f7fb;margin:12px 0 15px}
.rv-error403-copy{max-width:540px;margin:0 auto;color:#b4c2d0;font-size:15px;line-height:1.75}
.rv-error403-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px;margin:24px 0 24px}
.rv-error403-home,.rv-error403-secondary{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:44px;padding:11px 22px;border-radius:8px;font-weight:750;font-size:13px;text-decoration:none;transition:background .18s,border-color .18s}
.rv-error403-home{background:#e58c29;color:#101720;border:1px solid #e58c29}
.rv-error403-home:hover{background:#f6a850;color:#101720}
.rv-error403-secondary{background:#1b293a;border:1px solid #506176;color:#e4edf6}
.rv-error403-secondary:hover{background:#293d53;color:#fff;border-color:#8194a7}
.rv-error403-home:focus-visible,.rv-error403-secondary:focus-visible{outline:2px solid #ffb865;outline-offset:3px}
.rv-error403-footer{padding-top:20px;border-top:1px solid #344152;color:#8191a2;font-size:11px;letter-spacing:.08em;margin:0}
@media(max-width:540px){.rv-error403{min-height:0;padding:10px 0 36px}.rv-error403-panel{padding:28px 18px}.rv-error403-actions{flex-direction:column}.rv-error403-actions a{width:100%}}
/* RYNVADO 403 ERROR DESIGN — beta.31 END */

/* RYNVADO 403 ERROR DESIGN — beta.31 START */
.rv-error403{position:relative;isolation:isolate;display:grid;place-items:center;padding:18px 0 44px;min-height:520px;overflow:hidden;text-align:center}
.rv-error403-glow{position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% 33%,rgba(208,105,25,.12),transparent 49%)}
.rv-error403-panel{width:min(100%,740px);padding:29px clamp(20px,5vw,64px) 30px;border:1px solid rgba(224,146,61,.28);border-radius:16px;background:linear-gradient(150deg,rgba(27,37,50,.94),rgba(13,20,31,.97));box-shadow:0 28px 80px rgba(0,0,0,.25)}
.rv-error403-brand{display:flex;flex-direction:column;align-items:center;gap:0;margin:0 auto 15px}
.rv-error403-logo{display:block;max-width:min(300px,80%);max-height:108px;object-fit:contain}
.rv-error403-overline{font-size:11px;letter-spacing:.18em;font-weight:800;color:#eeaa65;margin:0 0 9px}
.rv-error403-overline span{padding:0 6px;color:#677485}
.rv-error403-number{font-size:clamp(96px,16vw,160px);line-height:1;letter-spacing:-.065em;font-weight:900;color:#f2a04a;text-shadow:0 0 50px rgba(211,104,23,.2);padding-right:.065em}
.rv-error403 h1{font-size:clamp(29px,4vw,43px);line-height:1.15;letter-spacing:-.025em;color:#f5f7fb;margin:12px 0 15px}
.rv-error403-copy{max-width:540px;margin:0 auto;color:#b4c2d0;font-size:15px;line-height:1.75}
.rv-error403-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px;margin:24px 0 24px}
.rv-error403-home,.rv-error403-secondary{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:44px;padding:11px 22px;border-radius:8px;font-weight:750;font-size:13px;text-decoration:none;transition:background .18s,border-color .18s}
.rv-error403-home{background:#e58c29;color:#101720;border:1px solid #e58c29}
.rv-error403-home:hover{background:#f6a850;color:#101720}
.rv-error403-secondary{background:#1b293a;border:1px solid #506176;color:#e4edf6}
.rv-error403-secondary:hover{background:#293d53;color:#fff;border-color:#8194a7}
.rv-error403-home:focus-visible,.rv-error403-secondary:focus-visible{outline:2px solid #ffb865;outline-offset:3px}
.rv-error403-footer{padding-top:20px;border-top:1px solid #344152;color:#8191a2;font-size:11px;letter-spacing:.08em;margin:0}
@media(max-width:540px){.rv-error403{min-height:0;padding:10px 0 36px}.rv-error403-panel{padding:28px 18px}.rv-error403-actions{flex-direction:column}.rv-error403-actions a{width:100%}}
/* RYNVADO 403 ERROR DESIGN — beta.31 END */

/* Rynvado 0.3.0-beta.38: bilingual legal pages, scoped to .rv-law */
.rv-law{width:min(100%,920px);margin:0 auto;padding:0 0 44px;color:#dce5f0}
.rv-law-hero{text-align:center;padding:32px 0 28px;border-bottom:1px solid rgba(208,153,81,.28)}
.rv-law-label{font-size:11px;letter-spacing:.2em;font-weight:800;color:#efac61}
.rv-law-label span{padding:0 9px;color:#8d7460}
.rv-law-hero h1{font-size:clamp(34px,5vw,51px);letter-spacing:-.04em;margin:13px 0 10px;color:#f5f6f9}
.rv-law-hero p{margin:0 auto 25px;line-height:1.7;color:#a9b9ca}
.rv-law-tabs{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}
.rv-law-tabs a{display:inline-flex;padding:11px 18px;border:1px solid #394c60;border-radius:8px;color:#bdcddd;background:#192534;font-weight:700;font-size:13px}
.rv-law-tabs a[aria-current=page]{color:#101720;background:#eda044;border-color:#eda044}
.rv-law-tabs a:hover{border-color:#e29d52}
.rv-law-section{padding:28px 30px;margin-top:17px;background:linear-gradient(120deg,#182330,#131c28);border:1px solid #303d4e;border-radius:12px}
.rv-law-index{color:#e99b48;letter-spacing:.12em;font-size:11px;font-weight:800}
.rv-law-section h2{color:#f4f6f9;font-size:22px;margin:10px 0 16px}
.rv-law-section p,.rv-law-section address{font-size:14px;color:#b9c7d6;line-height:1.85;margin:0 0 14px;overflow-wrap:anywhere}
.rv-law-section p:last-child{margin-bottom:0}
.rv-law-section address{font-style:normal;padding:13px 17px;border-left:3px solid #e89b48;background:#101924;border-radius:0 6px 6px 0}
.rv-law-section a{color:#ffb972;text-decoration:underline;text-decoration-color:rgba(255,185,114,.5);text-underline-offset:3px}
.rv-law-section a:focus-visible,.rv-law-foot a:focus-visible{outline:2px solid #efab5c;outline-offset:3px}
.rv-law-foot{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-top:28px;padding:17px 3px;color:#97a8bc;font-size:12px}
.rv-law-foot a{color:#f6ae67;font-weight:700;font-size:13px}
@media(max-width:640px){.rv-law-hero{padding-top:12px}.rv-law-section{padding:22px 18px}.rv-law-tabs a{padding:10px 12px}}

/* Retail Streamer release management */
.rv-addon-form{display:grid;gap:15px;max-width:650px;padding:18px 0}.rv-addon-form label{display:grid;gap:7px}.rv-addon-form input,.rv-addon-form textarea{width:100%;padding:11px;border:1px solid #465067;border-radius:8px;color:#eee;background:#141c2c}.rv-addon-release{display:flex;justify-content:space-between;gap:16px;padding:16px;border-bottom:1px solid #384353;align-items:center}.rv-addon-release p{white-space:pre-wrap}

/* Admin review notification bell */
.rv-admin-bell{display:inline-flex;align-items:center;gap:5px;text-decoration:none;padding:5px 8px;border:1px solid #5d452d;border-radius:8px;background:#1d2732;color:#f2ab55}
.rv-admin-bell-count:not([hidden]){display:inline-block;min-width:18px;text-align:center;background:#ec9839;color:#101720;border-radius:9px;padding:1px 5px;font-size:11px;font-weight:800}

/* Rynvado custom release deletion confirmation */
.rv-delete-trigger{background:#562a34!important;border:1px solid #ad5862!important;color:#fff!important}
.rv-delete-trigger:hover{background:#723440!important}
.rv-release-dialog{border:1px solid #916037;border-radius:12px;background:#151f2c;color:#f2f4f8;width:min(440px,calc(100vw - 32px));max-width:calc(100vw - 32px);padding:27px;box-shadow:0 25px 85px rgba(0,0,0,.7)}
.rv-release-dialog::backdrop{background:rgba(3,8,15,.78);backdrop-filter:blur(3px)}
.rv-release-dialog-kicker{font-size:11px;font-weight:750;color:#efa34b;letter-spacing:1.4px}
.rv-release-dialog h2{color:#fff;font-size:23px;margin:13px 0}
.rv-release-dialog p{color:#bfcbd9;line-height:1.6;margin:0 0 18px}
.rv-release-dialog p strong{color:#efa34b}
.rv-release-dialog-warning{display:flex;flex-direction:column;gap:7px;padding:14px;background:#251e25;border:1px solid #795058;border-radius:7px;font-size:13px;line-height:1.5;color:#dbbfc5}
.rv-release-dialog-warning strong{color:#ffb9b9}
.rv-release-dialog-actions{display:flex;justify-content:flex-end;gap:11px;margin-top:23px}
.rv-release-dialog-actions button{border:0;border-radius:5px;padding:12px 19px;font-weight:700;cursor:pointer}
.rv-release-cancel{background:#304258;color:#fff}
.rv-release-confirm{background:#bd4954;color:white}
.rv-release-confirm:hover{background:#d35763}
.rv-release-confirm:disabled{opacity:.6;cursor:wait}

/* Personal streamer notifications (beta.48) */
.rv-streamer-bell-wrap{position:relative;display:inline-flex;align-items:center}
.rv-notice-trigger{cursor:pointer;font:inherit}
.rv-notice-dropdown[hidden]{display:none!important}
.rv-notice-dropdown{position:absolute;z-index:9999;right:0;top:calc(100% + 10px);width:min(390px,calc(100vw - 24px));background:#192535;border:1px solid #455a73;border-radius:12px;box-shadow:0 15px 40px #0009;color:#e9f0f9;text-align:left;overflow:hidden}
.rv-notice-heading,.rv-notice-history-head{display:flex;align-items:center;justify-content:space-between;padding:14px 17px;border-bottom:1px solid #344559}
.rv-notice-close{border:0;background:transparent;color:#adbed2;font-size:25px;cursor:pointer;line-height:1}
.rv-notice-items{max-height:350px;overflow-y:auto}
.rv-notice-entry{display:flex;gap:10px;padding:13px 16px;border-bottom:1px solid #304258;font-size:13px;line-height:1.48}
.rv-notice-dot{display:block;flex:none;border-radius:50%;width:8px;height:8px;background:#eaa34f;margin-top:6px}
.rv-notice-success .rv-notice-dot{background:#4ad19a}.rv-notice-danger .rv-notice-dot{background:#ff6677}.rv-notice-pending .rv-notice-dot{background:#f2a949}
.rv-notice-message{overflow-wrap:anywhere}.rv-notice-entry.is-unread .rv-notice-message{font-weight:700;color:#f4f7fc}.rv-notice-entry.is-read .rv-notice-message{color:#acbed2}
.rv-notice-time{display:block;margin-top:5px;font-size:11px;color:#91a9c0}
.rv-notice-empty{padding:20px;color:#acbed2;margin:0}
.rv-notice-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px;padding:10px 12px}
.rv-notice-footer form{margin:0}.rv-notice-link{padding:7px 6px;border:0;background:transparent;color:#eea24d;cursor:pointer;font:inherit;font-size:12px;font-weight:700}
.rv-notice-link:hover{text-decoration:underline}
.rv-notice-history{width:min(650px,calc(100vw - 24px));max-height:80vh;border:1px solid #4c627a;border-radius:13px;padding:0 0 16px;background:#192535;color:#eaf1fb;box-shadow:0 26px 80px #000b}
.rv-notice-history::backdrop{background:#050b12b8}
.rv-notice-history-head h2{font-size:19px;margin:0}.rv-notice-history-items{overflow-y:auto;max-height:55vh}.rv-notice-history>form{padding:15px 17px 0}
@media(max-width:600px){.rv-notice-dropdown{position:fixed;right:12px;top:65px;width:calc(100vw - 24px)}}

/* beta.49: administration bell dropdown */
.rv-admin-notice-meta{padding:9px 16px;font-size:12px;color:#a8bdd4;border-bottom:1px solid #344559}
.rv-admin-bell.rv-notice-trigger{background:transparent;border:0;color:inherit}

@media(max-width:640px){.rv-admin-shortcuts{flex-direction:column;align-items:flex-start}.rv-admin-shortcuts .btn{width:100%;justify-content:center}}
