/* Riffumi application pages (account, auth, legal, admin). Builds on the
   marketing stylesheet's tokens and components; see the brand kit. */
:root{--rf-coral:#F86146;--rf-coral-text:#B93624;--rf-ink:#0D121D;--rf-paper:#FFFCF8;--rf-surface:#F1EFE9;--rf-line:#E5E1DA;--rf-muted:#6F706F;--rf-sage:#E8EDE4;--rf-error:#A42C1B;--rf-success:#4B6C41}
.rf-section{padding:56px 0 96px}
.rf-narrow{max-width:720px}
.rf-center{text-align:center}
.rf-h1{font-family:Sora,Arial,sans-serif;font-weight:600;font-size:clamp(2rem,3.4vw,2.75rem);line-height:1.12;letter-spacing:-.03em;margin:.2em 0 .5em}
.rf-prose h2{font-family:Sora,Arial,sans-serif;font-size:1.35rem;margin:2em 0 .5em}
.rf-prose p,.rf-prose li{line-height:1.65}
.rf-prose ul{padding-left:1.2em}
.rf-prose code{background:var(--rf-surface);padding:.15em .4em;border-radius:4px;font-size:.95em}
.rf-flashes{padding-top:16px}
.rf-flash{margin:0 0 8px;padding:12px 16px;border-radius:10px;background:var(--rf-sage);color:var(--rf-ink);border:1px solid var(--rf-line)}
.rf-flash-error{background:#FBE9E5;border-color:#F3C4BA;color:var(--rf-error)}
.rf-flash-success{background:var(--rf-sage);color:var(--rf-success)}
.rf-note{background:var(--rf-surface);border:1px solid var(--rf-line);border-radius:12px;padding:14px 18px;margin:20px 0;line-height:1.55}
.rf-note-warn{background:#FFF4E8;border-color:#F3D8B6;color:#7A5B35}
.rf-form label{display:block;font-weight:700;font-size:.85rem;margin:16px 0 6px}
.rf-form input:not([type=checkbox]):not([type=file]),.rf-form select,.rf-form textarea{width:100%;box-sizing:border-box;min-height:44px;padding:10px 14px;border:1px solid var(--rf-muted);border-radius:7px;font:inherit;background:#fff;color:var(--rf-ink)}
.rf-form textarea{min-height:120px;resize:vertical}
.rf-form input:focus,.rf-form select:focus,.rf-form textarea:focus{outline:3px solid #2563EB;outline-offset:3px}
.rf-form .button{margin-top:18px}
.rf-form .email-field input{width:100%}
.rf-check{display:flex;gap:10px;align-items:flex-start;font-weight:400!important;font-size:.9rem!important;line-height:1.5;margin:16px 0}
.rf-check input{width:18px;height:18px;margin-top:3px;flex:none}
.rf-honey{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.rf-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:end}
.rf-two{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start}
.rf-two h3{font-family:Sora,Arial,sans-serif;font-size:1.1rem;margin:1.4em 0 .5em}
.rf-plain{padding-left:1.1em;line-height:1.6}
.rf-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.rf-list{list-style:none;padding:0;margin:0 0 24px}
.rf-list li{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--rf-line)}
.rf-list li strong{display:block}
.rf-list li small{color:var(--rf-muted)}
.rf-code{font-size:.8rem;color:var(--rf-muted)}
.rf-table{width:100%;border-collapse:collapse;font-size:.9rem;margin-top:24px}
.rf-table th,.rf-table td{text-align:left;padding:10px 8px;border-bottom:1px solid var(--rf-line);vertical-align:top}
.rf-table .rf-actions form{display:inline}
.rf-muted{opacity:.55}
.rf-card{border:1px solid var(--rf-line);border-radius:12px;padding:18px 20px;margin:14px 0;background:#fff}
/* Auth */
.rf-auth{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:0;margin:40px auto 96px;border-radius:16px;overflow:hidden;border:1px solid var(--rf-line);background:#fff}
.rf-auth-art{background:var(--rf-ink);color:var(--rf-paper);padding:40px;display:flex;flex-direction:column;gap:32px;justify-content:space-between}
.rf-auth-art h2{font-family:Sora,Arial,sans-serif;font-size:2rem;line-height:1.1;letter-spacing:-.03em;margin:.4em 0}
.rf-auth-art .eyebrow{color:var(--rf-coral)}
.rf-auth-image img{width:100%;height:auto;border-radius:10px;display:block}
.rf-auth-form{padding:40px}
/* Account */
.rf-account{display:grid;grid-template-columns:240px minmax(0,1fr);gap:48px;padding:40px 0 96px}
.rf-account-side nav{display:flex;flex-direction:column;gap:4px}
.rf-account-side .account-nav{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:7px;text-decoration:none;color:var(--rf-ink);font-weight:600}
.rf-account-side .account-nav svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.7}
.rf-account-side .account-nav.active{background:var(--rf-surface)}
.rf-plan-card{margin:24px 0;padding:16px;border:1px solid var(--rf-line);border-radius:12px;background:#fff}
.rf-plan-card strong{display:block;font-family:Sora,Arial,sans-serif;font-size:1.2rem;margin:4px 0}
.rf-plan-card p{margin:4px 0 10px;color:var(--rf-muted);font-size:.9rem}
.rf-small-label{font-size:.7rem;letter-spacing:.12em;font-weight:700;color:var(--rf-muted)}
.rf-upload{margin-bottom:40px}
.rf-admin .account-stats{margin:20px 0 28px}
@media (max-width:960px){.rf-account{grid-template-columns:1fr;gap:24px}.rf-auth{grid-template-columns:1fr}.rf-auth-art{display:none}.rf-two,.rf-row{grid-template-columns:1fr}}
