.rsl2-app{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;background:var(--rsl2-bg);color:var(--rsl2-text);padding:24px;border-radius:24px}.rsl2-app *{box-sizing:border-box}.rsl2-app h1,.rsl2-app h2,.rsl2-app h3,.rsl2-app h4,.rsl2-app h5,.rsl2-app h6,.rsl2-app strong,.rsl2-app label span,.rsl2-app th,.rsl2-app td,.rsl2-app p,.rsl2-app li,.rsl2-app div,.rsl2-app span{color:inherit}.rsl2-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:26px;border-radius:24px;background:linear-gradient(135deg,var(--rsl2-primary),#4b5563 58%,#111827);color:var(--rsl2-hero-text)}.rsl2-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.12);padding:8px 14px;border-radius:999px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--rsl2-hero-text)}.rsl2-hero h2{margin:14px 0 10px;font-size:42px;line-height:1.02;max-width:760px;color:var(--rsl2-hero-text)}.rsl2-hero p{margin:0;max-width:720px;opacity:.95;font-size:17px;color:var(--rsl2-hero-muted)}.rsl2-hero-stats{display:grid;grid-template-columns:repeat(3,minmax(96px,1fr));gap:12px;min-width:300px}.rsl2-hero-stats div{padding:16px;border-radius:18px;background:rgba(255,255,255,.12);text-align:center;color:var(--rsl2-hero-text)}.rsl2-hero-stats strong{display:block;font-size:30px;font-weight:800;color:var(--rsl2-hero-text)}.rsl2-hero-stats span{font-size:12px;color:var(--rsl2-hero-muted)}.rsl2-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.rsl2-card,.rsl2-card-soft{background:var(--rsl2-card);border:1px solid rgba(15,23,42,.08);border-radius:var(--rsl2-radius);box-shadow:0 12px 30px rgba(15,23,42,.06);color:var(--rsl2-text)}.rsl2-card{padding:22px}.rsl2-card-soft{padding:18px;margin-top:16px}.rsl2-card h3,.rsl2-card-soft h4{margin:0 0 14px;color:var(--rsl2-text)}.rsl2-fields{display:grid;gap:14px;margin-bottom:14px}.rsl2-fields.three{grid-template-columns:repeat(3,minmax(0,1fr))}.rsl2-app label span{display:block;font-size:13px;font-weight:700;margin-bottom:8px;color:var(--rsl2-text)}.rsl2-app input{width:100%;padding:13px 14px;border:1px solid rgba(15,23,42,.12);border-radius:14px;background:var(--rsl2-input-bg);color:var(--rsl2-text)}.rsl2-app input::placeholder{color:var(--rsl2-muted)}.rsl2-app input[readonly]{background:rgba(148,163,184,.08)}.rsl2-btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 18px;border-radius:14px;border:none;cursor:pointer;font-weight:800;text-decoration:none;transition:.18s transform,.18s opacity}.rsl2-btn:hover{transform:translateY(-1px)}.rsl2-btn[disabled]{opacity:.55;cursor:not-allowed;transform:none}.rsl2-btn-primary{background:var(--rsl2-accent);color:#fff}.rsl2-btn-ghost{background:#fff;border:1px solid rgba(15,23,42,.14);color:var(--rsl2-text)}.rsl2-message{margin-top:12px;font-size:14px;color:var(--rsl2-text)}.rsl2-message.success{color:var(--rsl2-success)}.rsl2-message.error{color:var(--rsl2-danger)}.rsl2-empty{padding:18px;border:1px dashed rgba(15,23,42,.15);border-radius:14px;color:var(--rsl2-muted)}.rsl2-muted{color:var(--rsl2-muted)}.rsl2-footer-note{margin-top:18px;text-align:center;color:var(--rsl2-warning);font-size:13px}.rsl2-mini-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.rsl2-mini-card{padding:16px;border-radius:18px;background:rgba(37,99,235,.06);color:var(--rsl2-text)}.rsl2-mini-card strong{display:block;font-size:30px;color:var(--rsl2-text)}.rsl2-mini-card span{font-size:12px;color:var(--rsl2-muted)}.rsl2-card-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.rsl2-status-pill{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;background:rgba(37,99,235,.1);color:var(--rsl2-accent);font-size:12px;font-weight:800}.rsl2-status-pill.done{background:rgba(22,163,74,.12);color:var(--rsl2-success)}.rsl2-helper{margin:0 0 10px;color:var(--rsl2-muted)}.rsl2-progress-wrap{margin-bottom:14px}.rsl2-progress-line{height:12px;background:rgba(15,23,42,.08);border-radius:999px;overflow:hidden}.rsl2-progress-fill{height:100%;background:linear-gradient(90deg,var(--rsl2-accent),#60a5fa);border-radius:999px}.rsl2-progress-stats{display:flex;gap:18px;flex-wrap:wrap;margin-top:10px;font-size:14px;color:var(--rsl2-text)}.rsl2-progress-stats strong{font-size:15px;color:var(--rsl2-text)}.rsl2-suggestions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.rsl2-suggestion-card{padding:16px;border-radius:16px;border:1px solid rgba(15,23,42,.08);background:#fff;color:var(--rsl2-text)}.rsl2-suggestion-head{display:flex;gap:12px;align-items:center;margin-bottom:12px}.rsl2-avatar{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--rsl2-primary),var(--rsl2-accent));color:#fff;font-weight:900;font-size:18px;flex:0 0 52px}.rsl2-suggestion-head span{display:block;color:var(--rsl2-muted);font-size:13px}.rsl2-link-list{display:flex;flex-wrap:wrap;gap:8px}.rsl2-social-link{display:inline-flex;padding:9px 12px;border-radius:999px;background:rgba(37,99,235,.09);color:var(--rsl2-accent);text-decoration:none;font-size:13px;font-weight:700}.rsl2-social-link.clicked{background:rgba(22,163,74,.12);color:var(--rsl2-success)}.rsl2-meta-row{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:12px;font-size:12px;color:var(--rsl2-muted)}.rsl2-meta-row span{color:inherit}.rsl2-meta-live{display:inline-flex;padding:5px 8px;border-radius:999px;background:rgba(37,99,235,.07);color:var(--rsl2-accent);font-weight:700}.rsl2-ranking-table-wrap{overflow:auto}.rsl2-ranking-table{width:100%;border-collapse:collapse;color:var(--rsl2-text)}.rsl2-ranking-table th,.rsl2-ranking-table td{text-align:left;padding:12px 10px;border-bottom:1px solid rgba(15,23,42,.08);color:var(--rsl2-text)}.rsl2-ranking-table th{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--rsl2-muted)}.rsl2-alias-form,.rsl2-profile-form{display:grid;gap:12px}.rsl2-profile-form .rsl2-btn{margin-right:8px}.rsl2-mission-complete-form{margin-top:6px}.rsl2-app a:focus,.rsl2-app button:focus,.rsl2-app input:focus{outline:2px solid var(--rsl2-accent);outline-offset:2px}@media (max-width:980px){.rsl2-grid,.rsl2-fields.three,.rsl2-mini-grid,.rsl2-suggestions-grid{grid-template-columns:1fr}.rsl2-hero{display:grid}.rsl2-hero h2{font-size:34px}.rsl2-hero-stats{min-width:0}}


.rsl2-app,.rsl2-card,.rsl2-card-soft,.rsl2-hero,.rsl2-suggestion-card,.rsl2-mini-card{min-width:0;max-width:100%}
.rsl2-hero-copy,.rsl2-hero-copy *{min-width:0;max-width:100%}
.rsl2-hero h2,.rsl2-card h3,.rsl2-card-soft h4,.rsl2-helper,.rsl2-message,.rsl2-empty,.rsl2-footer-note{overflow-wrap:anywhere;word-break:normal}
.rsl2-ranking-table-wrap{-webkit-overflow-scrolling:touch}

@media (max-width: 767px){
  .rsl2-app{padding:14px;border-radius:18px;overflow:hidden}
  .rsl2-hero{grid-template-columns:1fr;gap:14px;padding:18px;border-radius:18px}
  .rsl2-badge{font-size:11px;padding:7px 10px;max-width:100%}
  .rsl2-hero h2{font-size:30px;line-height:1.08;margin:10px 0 8px}
  .rsl2-hero p{font-size:15px;line-height:1.45}
  .rsl2-hero-stats{grid-template-columns:repeat(3,minmax(0,1fr));min-width:0;width:100%}
  .rsl2-hero-stats div{padding:12px 8px;border-radius:14px}
  .rsl2-hero-stats strong{font-size:22px;line-height:1.1}
  .rsl2-grid{grid-template-columns:1fr;gap:16px}
  .rsl2-card{padding:16px}
  .rsl2-card-soft{padding:14px;margin-top:14px}
  .rsl2-card h3{font-size:18px;line-height:1.2}
  .rsl2-fields,.rsl2-fields.three,.rsl2-mini-grid,.rsl2-suggestions-grid{grid-template-columns:1fr;gap:12px}
  .rsl2-app input{padding:12px 13px;font-size:16px}
  .rsl2-btn{width:100%;padding:12px 16px}
  .rsl2-profile-form .rsl2-btn{margin-right:0;margin-bottom:8px}
  .rsl2-card-head{flex-direction:column;align-items:flex-start}
  .rsl2-progress-stats{gap:10px;flex-direction:column;align-items:flex-start}
  .rsl2-suggestion-card{padding:14px}
  .rsl2-suggestion-head{align-items:center}
  .rsl2-link-list{gap:6px}
  .rsl2-social-link{padding:8px 10px;font-size:12px}
  .rsl2-meta-row{flex-direction:column;align-items:flex-start}
  .rsl2-ranking-table{min-width:560px}
}

@media (max-width: 420px){
  .rsl2-app{padding:12px}
  .rsl2-hero{padding:16px}
  .rsl2-hero h2{font-size:26px}
  .rsl2-hero-stats{grid-template-columns:1fr}
  .rsl2-mini-card strong{font-size:24px}
  .rsl2-avatar{width:46px;height:46px;flex-basis:46px;font-size:16px}
}
