@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Fraunces:opsz,wght@9..144,600;9..144,700&display=swap');
    .rf-app { --rf-ink:#182e43; --rf-navy:#10283e; --rf-paper:#f8f1e3; --rf-sheet:#fffaf0; --rf-dim:#77694f; --rf-line:#d9c9ab; --rf-gold:#d2aa58; --rf-green:#237358; --rf-chat-width:340px; color:var(--rf-ink); font:400 14px/1.5 'DM Sans',sans-serif; position:relative; background:var(--rf-paper); border:1px solid var(--rf-line); border-radius:12px; overflow:clip; color-scheme:light; }
    .rf-app * { box-sizing:border-box; }
    .rf-app [hidden] { display:none !important; }
    .rf-app :is(h1,h2,h3,p) { margin:0; }
    .rf-app :is(h1,h2,h3) { font-family:'Fraunces',Georgia,serif; font-weight:600; }
    .rf-app button { font:inherit; color:inherit; }
    .rf-app button:disabled { opacity:.48; cursor:not-allowed; }
    .rf-app :is(input,textarea,select) { font:inherit; color:var(--rf-ink); min-width:0; }
    .rf-app svg { width:17px; height:17px; flex:none; }
    .rf-app .rf-chrome { display:flex; align-items:center; gap:24px; flex-wrap:wrap; padding:19px 110px 18px 25px; background:var(--rf-navy); color:#f8eed9; border-bottom:3px solid var(--rf-gold); }
    .rf-app .rf-wordmark { font:600 26px 'Fraunces',Georgia,serif; display:flex; gap:10px; align-items:center; letter-spacing:-1px; }
    .rf-app .rf-sigil { width:30px; height:33px; display:grid; place-items:center; font-size:23px; color:#f0ce83; border:1px solid #bc9857; clip-path:polygon(0 0,100% 0,100% 80%,50% 100%,0 80%); }
    .rf-app .rf-chrome-nav { display:flex; flex-wrap:wrap; gap:19px; font-size:12px; color:#d2d5d6; }
    .rf-app .rf-chrome-nav span:last-child { color:#f5d68f; }
    .rf-app .rf-prototype { margin-left:auto; font-size:10px; letter-spacing:.12em; color:#e4c991; border:1px solid #7d735e; padding:4px 7px; border-radius:3px; }
    .rf-app .rf-topline { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; padding:28px 28px 20px; }
    .rf-app .rf-eyebrow { text-transform:uppercase; font-size:10px; letter-spacing:.15em; color:#896735; font-weight:700; display:flex; align-items:center; gap:8px; }
    .rf-app h1 { font-size:36px; line-height:1.13; letter-spacing:-1.4px; margin:6px 0; }
    .rf-app .rf-lead { color:var(--rf-dim); font-size:12px; }
    .rf-app .rf-self { display:flex; gap:10px; align-items:center; font-size:12px; text-align:right; }
    .rf-app .rf-self small { display:block; color:var(--rf-green); font-size:11px; }
    .rf-app .rf-self .rf-avatar { width:38px; height:38px; }
    .rf-app .rf-tabs { display:flex; align-items:center; gap:4px; flex-wrap:wrap; padding:0 25px 14px; border-bottom:1px solid var(--rf-line); }
    .rf-app .rf-tab { display:flex; align-items:center; justify-content:center; gap:7px; padding:9px 11px; border:1px solid transparent; background:transparent; border-radius:5px; font-size:12px; font-weight:600; color:var(--rf-dim); }
    .rf-app .rf-tab[aria-pressed=true] { background:var(--rf-navy); color:#ffe8b7; box-shadow:0 3px 0 #b89550; }
    .rf-app .rf-tab:last-child { margin-left:auto; }
    .rf-app .rf-badge { font-size:10px; padding:0 5px; min-width:18px; height:18px; display:inline-grid; place-items:center; border-radius:4px; background:#e7d9bd; color:#57442b; font-weight:700; }
    .rf-app .rf-tab[aria-pressed=true] .rf-badge { background:#e6c984; color:#172e43; }
    .rf-app .rf-workspace { display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,var(--rf-chat-width)); gap:23px; padding:23px 25px 25px; align-items:start; }
    .rf-app .rf-content { min-width:0; }
    .rf-app .rf-section-top { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:15px; }
    .rf-app h2 { font-size:22px; letter-spacing:-.6px; }
    .rf-app .rf-subtle { color:var(--rf-dim); font-size:11px; }
    .rf-app .rf-limit { padding:7px 9px; border-radius:5px; background:#eee3cb; font-size:11px; white-space:nowrap; }
    .rf-app .rf-filters { display:flex; align-items:center; gap:6px; flex-wrap:wrap; margin-bottom:14px; }
    .rf-app .rf-filter { background:transparent; border:1px solid var(--rf-line); padding:5px 9px; border-radius:20px; font-size:11px; }
    .rf-app .rf-filter[aria-pressed=true] { color:#174c43; background:#e6eee3; border-color:#c0cdb8; }
    .rf-app .rf-search { display:flex; align-items:center; gap:9px; padding:11px 12px; background:var(--rf-sheet); border:1px solid #bda574; box-shadow:0 3px 0 #e7dac1; border-radius:6px; margin-bottom:9px; }
    .rf-app .rf-search svg { color:#8d713d; }
    .rf-app .rf-search input { width:100%; border:0; outline-offset:5px; background:transparent; font-size:13px; }
    .rf-app .rf-search input::placeholder { color:#8c806a; }
    .rf-app .rf-hint { display:flex; gap:6px; align-items:center; color:var(--rf-dim); font-size:11px; margin:0 0 18px; }
    .rf-app .rf-people { border-top:1px solid var(--rf-line); }
    .rf-app .rf-person { display:flex; gap:11px; align-items:center; padding:12px 7px; border-bottom:1px solid var(--rf-line); border-radius:5px; min-width:0; }
    .rf-app .rf-person.is-active { background:#ece4d2; border-bottom-color:transparent; box-shadow:inset 3px 0 #a48241; }
    .rf-app .rf-avatar { position:relative; flex:none; display:grid; place-items:center; width:45px; height:48px; background:#d5d0bc; border:2px solid #a79063; border-radius:13px 13px 17px 17px; color:var(--rf-navy); overflow:hidden; }
    .rf-app .rf-avatar img { width:100%; height:100%; object-fit:cover; display:block; }
    .rf-app .rf-person-open { display:flex; gap:11px; align-items:center; text-align:left; background:transparent; padding:0; border:0; flex:1; min-width:0; }
    .rf-app .rf-person-info { min-width:0; }
    .rf-app .rf-name { display:flex; align-items:center; gap:5px; flex-wrap:wrap; font-weight:700; font-size:13px; overflow-wrap:anywhere; }
    .rf-app .rf-vip { font-size:8px; letter-spacing:.06em; color:#8f651b; background:#f8e5ad; border:1px solid #d7b66a; border-radius:3px; padding:0 3px; }
    .rf-app .rf-status { display:flex; align-items:center; gap:5px; font-size:10px; color:var(--rf-dim); margin-top:3px; }
    .rf-app .rf-dot { display:inline-block; width:6px; height:6px; border-radius:50%; background:#a29783; flex:none; }
    .rf-app .rf-dot.online { background:#2d8964; box-shadow:0 0 0 2px #2d896415; }
    .rf-app .rf-dot.playing { background:#b77c2b; }
    .rf-app .rf-actions { display:flex; align-items:center; gap:5px; flex-wrap:wrap; }
    .rf-app .rf-button { display:inline-flex; align-items:center; justify-content:center; gap:6px; min-height:34px; padding:7px 10px; background:var(--rf-sheet); color:var(--rf-ink); border:1px solid #cbb895; border-radius:5px; font-weight:600; font-size:11px; }
    .rf-app .rf-button:hover:not(:disabled) { background:#efe5d0; border-color:#a48a56; }
    .rf-app .rf-button.rf-primary { background:var(--rf-navy); border-color:var(--rf-navy); color:#ffe4a3; box-shadow:0 2px 0 #9c7e45; }
    .rf-app .rf-button.rf-primary:hover:not(:disabled) { background:#254762; }
    .rf-app .rf-button.rf-gold { background:linear-gradient(150deg,#f5df9e,#dfb665); color:#342b20; border-color:#bd954c; box-shadow:0 2px 0 #a5864b; }
    .rf-app .rf-button.rf-danger { color:#913f34; border-color:#d4b5a3; }
    .rf-app .rf-icon { width:31px; height:32px; display:grid; place-items:center; padding:0; background:transparent; border:1px solid transparent; border-radius:4px; }
    .rf-app .rf-icon:hover { background:#e5dccb; border-color:#c6b18a; }
    .rf-app .rf-tip { display:flex; gap:9px; color:#6e6049; font-size:11px; line-height:1.6; padding:14px 0 0; }
    .rf-app .rf-tip svg { margin-top:2px; color:#9a7b42; }
    .rf-app .rf-empty { text-align:center; padding:36px 15px; color:var(--rf-dim); border:1px dashed var(--rf-line); border-radius:7px; }
    .rf-app .rf-empty svg { width:29px; height:29px; margin-bottom:8px; color:#a38c60; }
    .rf-app .rf-empty strong { display:block; color:var(--rf-ink); margin-bottom:4px; }
    .rf-app .rf-chat { min-width:0; background:var(--rf-sheet); border:1px solid #bca371; border-radius:9px; box-shadow:0 9px 24px #45351e15,0 3px 0 #e1cfaa; overflow:clip; }
    .rf-app .rf-chat-bar { display:flex; align-items:center; gap:9px; padding:13px 12px; background:var(--rf-navy); color:#f5ebd9; border-bottom:2px solid #caa25e; }
    .rf-app .rf-chat-bar .rf-avatar { width:35px; height:39px; border-width:1px; }
    .rf-app .rf-chat-bar .rf-status { color:#c5d5cd; font-size:10px; }
    .rf-app .rf-chat-bar .rf-name { font-size:12px; }
    .rf-app .rf-chat-bar .rf-icon { color:#dcc697; }
    .rf-app .rf-chat-bar .rf-icon:hover { background:#314b60; border-color:#6f725f; }
    .rf-app .rf-chat-bar .rf-icon:first-of-type { margin-left:auto; }
    .rf-app .rf-chat-tools { display:flex; gap:7px; flex-wrap:wrap; padding:10px 12px; border-bottom:1px solid #e3d6bb; background:#f2e8d2; }
    .rf-app .rf-chat-tools .rf-button { flex:1; }
    .rf-app .rf-messages { padding:15px 13px; min-height:260px; display:flex; align-items:flex-start; flex-direction:column; gap:10px; }
    .rf-app .rf-chat-date { align-self:center; font-size:9px; color:var(--rf-dim); letter-spacing:.1em; text-transform:uppercase; margin-bottom:1px; }
    .rf-app .rf-bubble { max-width:91%; padding:9px 11px; border-radius:9px 9px 9px 2px; background:#eee5d2; color:#3a3f3c; font-size:11px; line-height:1.6; overflow-wrap:anywhere; }
    .rf-app .rf-bubble.rf-mine { align-self:flex-end; border-radius:9px 9px 2px 9px; color:#ecf0ee; background:#23475e; }
    .rf-app .rf-time { display:block; font-size:8px; margin-top:4px; text-align:right; opacity:.75; }
    .rf-app .rf-system { align-self:center; font-size:10px; color:var(--rf-dim); text-align:center; }
    .rf-app .rf-gift-message { width:100%; padding:12px; border:1px solid #c7a665; background:#fbf2d8; border-radius:7px; }
    .rf-app .rf-gift-eyebrow { display:flex; gap:5px; align-items:center; color:#856023; font-size:9px; text-transform:uppercase; letter-spacing:.08em; font-weight:700; margin-bottom:9px; }
    .rf-app .rf-gift-inner { display:flex; gap:11px; align-items:center; }
    .rf-app .rf-card-art { flex:none; position:relative; width:50px; height:67px; border:2px solid #b3914d; padding:2px; background:#182e43; border-radius:5px; transform:rotate(-4deg); box-shadow:3px 3px 0 #d1bc86; overflow:hidden; }
    .rf-app .rf-card-art img { width:100%; height:100%; object-fit:cover; display:block; border-radius:2px; }
    .rf-app .rf-gift-copy { min-width:0; }
    .rf-app .rf-gift-copy strong { font:600 18px 'Fraunces',Georgia,serif; }
    .rf-app .rf-gift-copy p { font-size:10px; color:var(--rf-dim); margin-top:3px; }
    .rf-app .rf-gift-message .rf-actions { margin-top:13px; }
    .rf-app .rf-gift-message .rf-actions .rf-button { flex:1; }
    .rf-app .rf-message-form { display:flex; gap:8px; padding:12px; background:#f2ead9; border-top:1px solid var(--rf-line); }
    .rf-app .rf-message-form input { min-width:0; width:100%; border:1px solid #d4c3a1; background:var(--rf-sheet); border-radius:5px; padding:9px; font-size:11px; }
    .rf-app .rf-message-form .rf-button { width:37px; padding:0; flex:none; }
    .rf-app .rf-chat-note { padding:0 12px 9px; font-size:9px; color:var(--rf-dim); background:#f2ead9; }
    .rf-app .rf-chat-history { padding:0 13px 9px; }
    .rf-app .rf-footer { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px; padding:11px 25px; border-top:1px solid var(--rf-line); background:#eee4d0; color:#75644a; font-size:10px; }
    .rf-app .rf-toast { display:flex; align-items:center; gap:10px; margin:15px 25px 0; padding:11px 13px; background:#e9eee0; border:1px solid #bdcda6; border-radius:6px; color:#31533c; font-size:12px; animation:rf-notice-in .22s ease-out; }
    .rf-app .rf-toast .rf-icon { margin-left:auto; }
    .rf-app .rf-toast.rf-error { background:#f8e7dd; border-color:#d8b5a3; color:#863e31; }
    .rf-app .rf-request { padding:14px; border:1px solid var(--rf-line); border-radius:7px; margin-bottom:10px; background:var(--rf-sheet); }
    .rf-app .rf-request .rf-person { padding:0 0 11px; border:0; }
    .rf-app .rf-request .rf-actions { margin-top:10px; }
    .rf-app .rf-request > p { font-size:11px; color:var(--rf-dim); }
    .rf-app .rf-shipment { margin-bottom:12px; background:var(--rf-sheet); border:1px solid var(--rf-line); border-radius:7px; padding:15px; }
    .rf-app .rf-shipment .rf-gift-inner { margin-bottom:13px; }
    .rf-app .rf-state-tag { display:inline-flex; gap:4px; align-items:center; font-size:10px; color:#6d552b; background:#eee2c0; padding:3px 6px; border-radius:4px; margin-top:6px; }
    .rf-app .rf-state-tag.accepted { color:#296b4a; background:#e5edda; }
    .rf-app .rf-notification { display:flex; align-items:flex-start; gap:11px; padding:15px 0; border-bottom:1px solid var(--rf-line); }
    .rf-app .rf-notification > svg { margin-top:3px; color:#8e7036; }
    .rf-app .rf-notification p { font-size:12px; }
    .rf-app .rf-notification small { display:block; font-size:10px; color:var(--rf-dim); margin:4px 0 8px; }
    .rf-app .rf-settings { padding:18px; background:var(--rf-sheet); border:1px solid var(--rf-line); border-radius:7px; }
    .rf-app .rf-settings h3 { font-size:20px; margin-bottom:6px; }
    .rf-app .rf-settings p { font-size:11px; color:var(--rf-dim); line-height:1.7; }
    .rf-app .rf-setting-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:17px 0; }
    .rf-app .rf-settings label { font-size:11px; font-weight:600; display:block; }
    .rf-app .rf-settings input { display:block; width:100%; margin-top:6px; padding:11px; border:1px solid #c8b28b; border-radius:5px; background:var(--rf-paper); font-weight:600; font-size:22px; }
    .rf-app .rf-tier-picker { display:flex; gap:7px; flex-wrap:wrap; margin:17px 0; }
    .rf-app .rf-settings .rf-settings-note { padding:12px 0; border-top:1px solid var(--rf-line); margin-top:14px; }
    .rf-app .rf-modal-shade { position:absolute; inset:0; z-index:10; background:#10283ec7; backdrop-filter:blur(3px); padding:35px 18px; display:flex; justify-content:center; align-items:flex-start; }
    .rf-app .rf-dialog { width:480px; max-width:100%; background:var(--rf-sheet); padding:23px; border:1px solid #c6a568; border-top:4px solid #bd9951; border-radius:9px; box-shadow:0 20px 50px #07152560; }
    .rf-app .rf-dialog-top { display:flex; align-items:center; justify-content:space-between; gap:15px; margin-bottom:7px; }
    .rf-app .rf-dialog h2 { font-size:25px; }
    .rf-app .rf-dialog > p { font-size:12px; color:var(--rf-dim); line-height:1.7; }
    .rf-app .rf-dialog .rf-dialog-actions { margin-top:20px; display:flex; gap:8px; justify-content:flex-end; flex-wrap:wrap; }
    .rf-app .rf-card-options { display:grid; gap:9px; margin-top:17px; }
    .rf-app .rf-card-option { display:flex; text-align:left; gap:12px; align-items:center; border:1px solid #d1bf98; background:#f6eedc; border-radius:6px; padding:12px; width:100%; }
    .rf-app .rf-card-option[aria-pressed=true] { box-shadow:inset 3px 0 #a58238; border-color:#a58238; background:#f6e6ba; }
    .rf-app .rf-card-option strong { display:block; font:600 17px 'Fraunces',Georgia,serif; }
    .rf-app .rf-card-option small { display:block; font-size:10px; color:var(--rf-dim); margin-top:3px; }
    .rf-app .rf-card-option em { display:block; font-size:10px; font-style:normal; color:#356547; margin-top:4px; }
    .rf-app .rf-modal-person { display:flex; gap:13px; align-items:center; margin:14px 0; padding:12px; background:#eee4d0; border-radius:6px; }
    .rf-app .rf-modal-person strong { display:block; }
    .rf-app .rf-modal-person small { font-size:11px; color:var(--rf-dim); }
    .rf-app.rf-quiet .rf-chrome { border-bottom-width:1px; }
    .rf-app.rf-quiet .rf-sigil { display:none; }
    .rf-app.rf-quiet :is(.rf-chat,.rf-button.rf-primary,.rf-button.rf-gold) { box-shadow:none; }
    .rf-app :is(.rf-vip,.rf-status,.rf-badge,.rf-chat-date,.rf-gift-eyebrow,.rf-time,.rf-chat-note,.rf-state-tag,.rf-footer,.rf-eyebrow,.rf-prototype),
    .rf-app .rf-chat-bar .rf-status,
    .rf-app .rf-gift-copy p,
    .rf-app .rf-card-option :is(small,em),
    .rf-app .rf-notification small { font-size:11px; }
    @keyframes rf-notice-in { from { transform:translateY(-6px); } to { transform:translateY(0); } }
    @media (max-width:820px) {
      .rf-app .rf-workspace { grid-template-columns:minmax(0,1fr) minmax(260px,300px); gap:14px; padding:19px 17px; }
      .rf-app .rf-person { gap:7px; padding-inline:3px; }
      .rf-app .rf-person .rf-actions { max-width:73px; }
      .rf-app .rf-chrome { gap:14px; padding-left:19px; }
      .rf-app .rf-chrome-nav { gap:12px; }
      .rf-app .rf-prototype { display:none; }
      .rf-app .rf-topline { padding-inline:19px; }
      .rf-app .rf-tabs { padding-inline:14px; }
      .rf-app .rf-tab { padding-inline:8px; }
    }
    @media (max-width:620px) {
      .rf-app .rf-workspace { grid-template-columns:minmax(0,1fr); padding:18px 14px; }
      .rf-app .rf-chat { width:100%; }
      .rf-app .rf-chrome-nav { width:100%; }
      .rf-app .rf-topline { align-items:start; padding:22px 15px 15px; gap:9px; }
      .rf-app h1 { font-size:29px; }
      .rf-app .rf-self > div:first-child { display:none; }
      .rf-app .rf-tabs { gap:3px; }
      .rf-app .rf-tab { padding:8px; font-size:11px; }
      .rf-app .rf-tab:last-child { margin-left:0; }
      .rf-app .rf-person .rf-actions { max-width:none; }
      .rf-app .rf-dialog { padding:18px; }
      .rf-app .rf-footer { padding-inline:15px; }
      .rf-app .rf-toast { margin-inline:14px; }
    }
    @media (pointer:coarse) {
      .rf-app :is(.rf-button,.rf-icon,.rf-tab,.rf-filter) { min-height:44px; }
      .rf-app .rf-icon { min-width:44px; }
      .rf-app input { font-size:16px !important; }
    }
    @media (prefers-reduced-motion:reduce) { .rf-app * { animation:none !important; } }

/* Shared navigation stays outside the social surface. The dock survives SPA page changes. */
.rf-page > .rf-app { max-width:1180px; margin:auto; border:0; border-radius:0; overflow:visible; min-height:620px; }
.rf-app button { cursor:pointer; }
.rf-app :is(button,input,textarea):focus-visible { outline:3px solid #2379a4; outline-offset:3px; }
.rf-app .rf-spaced { margin-top:20px; }
.rf-app .rf-avatar { aspect-ratio:1; }
.rf-app .rf-chat-bar .rf-name { overflow-wrap:anywhere; }
.rf-app .rf-chat-bar > div { min-width:0; }
.rf-app .rf-person .rf-actions { flex:none; }
.rf-app .rf-report { font-size:10px; padding:1px 3px; margin-left:5px; background:none; border:0; text-decoration:underline; color:inherit; }
.rf-app .rf-readonly { padding-top:12px; }
.rf-app .rf-messages { max-height:480px; overflow-y:auto; overscroll-behavior:contain; }
.rf-app .rf-card-option > span:not(.rf-card-art) { min-width:0; }
.rf-app .rf-card-options { max-height:360px; overflow-y:auto; padding:3px; overscroll-behavior:contain; }
.rf-app .rf-card-option strong { overflow-wrap:anywhere; }
.rf-app .rf-message-form input:disabled { opacity:.6; }
.rf-app .rf-dialog textarea { display:block; margin-top:8px; width:100%; min-height:110px; padding:10px; background:#fffaf0; border:1px solid #c8b28b; resize:vertical; }
.rf-app .rf-modal-feedback { color:#963e31; margin-top:12px; font-size:12px; }
.rf-app.rf-dock { position:fixed; right:22px; bottom:18px; z-index:65; width:340px; max-width:calc(100vw - 28px); background:transparent; border:0; border-radius:0; overflow:visible; }
.rf-app .rf-dock-launch { display:flex; align-items:center; gap:9px; width:100%; border:1px solid #bc9857; border-bottom:3px solid #bc9857; border-radius:7px; padding:13px 16px; background:#10283e; color:#f9e5b6; box-shadow:0 8px 24px #08182d40; font-weight:700; text-align:left; }
.rf-app .rf-dock-launch span { margin-left:auto; font-size:11px; color:#c6d1c6; }
.rf-app .rf-dock-launch b { padding:2px 6px; background:#ecd397; color:#10283e; border-radius:4px; font-size:11px; }
.rf-dock .rf-chat { box-shadow:0 8px 30px #08182d45; }
.rf-dock .rf-messages { max-height:min(340px,45dvh); min-height:140px; }
.rf-dock .rf-dock-people { max-height:350px; overflow-y:auto; padding:8px; }
.rf-dock .rf-person { padding-block:8px; }
.rf-dock .rf-dock-foot { display:flex; gap:8px; align-items:center; padding:8px 10px; border:1px solid #bca371; border-radius:0 0 7px 7px; background:#f8f1e3; }
.rf-dock .rf-dock-foot a { display:flex; align-items:center; gap:5px; font-size:11px; color:#254762; margin-right:auto; }
.rf-dock .rf-dock-foot .rf-button { padding:5px 7px; font-size:10px; }
.rf-dock > .rf-toast { margin:0 0 10px; background:#f8f1e3; }
.rf-app.rf-production-modal { position:fixed; inset:0; z-index:110; display:grid; place-items:center; padding:24px; background:#0a1b31b8; backdrop-filter:blur(4px); border:0; border-radius:0; }
.rf-production-modal .rf-dialog { max-height:calc(100dvh - 48px); overflow-y:auto; }
body.rf-modal-open { overflow:hidden; }
.rf-app.rf-toast-host { position:fixed; right:22px; top:90px; z-index:100; width:340px; max-width:calc(100vw - 28px); background:transparent; border:0; border-radius:0; pointer-events:none; }
.rf-app .rf-live-toast { display:flex; gap:12px; align-items:flex-start; padding:15px; background:#fff8e8; border:1px solid #b99a5a; border-left:4px solid #b99a5a; border-radius:6px; box-shadow:0 8px 30px #09182d33; pointer-events:auto; animation:rf-notice-in .25s ease-out; }
.rf-app .rf-live-toast > svg { margin-top:3px; color:#9c752a; }
.rf-app .rf-live-toast strong { display:block; font-size:12px; overflow-wrap:anywhere; }
.rf-app .rf-live-toast div > button { display:flex; gap:5px; align-items:center; margin-top:6px; padding:0; border:0; background:none; color:#315b77; font-size:11px; }
.rf-app .rf-live-toast > button { flex:none; margin-left:auto; }
.rv-primary-nav [data-rf-nav-count] { margin-left:5px; padding:1px 4px; background:#dfbd71; color:#10283e; border-radius:3px; font-size:9px; }
.rv-primary-nav { flex-wrap:wrap; }
@media(min-width:1201px) and (max-width:1440px) { .rv-primary-nav :is(a,button) { padding-inline:6px; font-size:10px; } }
@media(max-width:620px) {
  .rv-topbar .rv-primary-nav { flex-wrap:nowrap; }
  .rf-app.rf-dock { right:14px; bottom:max(12px,env(safe-area-inset-bottom)); width:330px; }
  .rf-app.rf-toast-host { right:14px; top:14px; }
  .rf-page > .rf-app { min-height:480px; }
  .rf-app .rf-messages { max-height:400px; }
  .rf-dock .rf-messages { max-height:38dvh; }
  .rf-app.rf-production-modal { padding:14px; }
  .rf-production-modal .rf-dialog { max-height:calc(100dvh - 28px); }
  .rf-app .rf-setting-grid { grid-template-columns:1fr; }
}

/* The friends dock stays out of the way during a match. */
body[data-rv-playing] .rf-dock { display: none !important; }
