.frp-hero { background:linear-gradient(135deg, #1e3a5f 0%, #2d5a7b 50%, #1a4a3a 100%); padding:50px 0; color:white; }
.frp-breadcrumb { font-size:14px; margin-bottom:16px; opacity:0.8; }
.frp-breadcrumb a { color:white; text-decoration:none; }
.frp-breadcrumb a:hover { text-decoration:underline; }
.frp-stats { display:flex; gap:24px; margin-top:24px; flex-wrap:wrap; }
.frp-stat { background:rgba(255,255,255,0.15); padding:16px 24px; border-radius:12px; text-align:center; backdrop-filter:blur(10px); }
.frp-stat-value { font-size:32px; font-weight:900; }
.frp-stat-label { font-size:12px; opacity:0.8; margin-top:4px; }
.frp-calendar { display:grid; grid-template-columns:repeat(6, 1fr); gap:12px; margin-bottom:48px; }
.frp-month { border:1px solid var(--fb-gray-200); border-radius:12px; padding:16px; text-align:center; transition:all 0.2s; }
.frp-month.banned { background:#fef2f2; border-color:#fecaca; }
.frp-month.partial { background:#fffbeb; border-color:#fde68a; }
.frp-month.open { background:#f0fdf4; border-color:#bbf7d0; }
.frp-month.current { box-shadow:0 0 0 3px var(--fb-blue); }
.frp-month-name { font-size:14px; font-weight:700; color:var(--fb-ink); margin-bottom:6px; }
.frp-month-label { font-size:12px; font-weight:600; padding:2px 8px; border-radius:4px; display:inline-block; }
.frp-month.banned .frp-month-label { background:#dc2626; color:white; }
.frp-month.partial .frp-month-label { background:#f59e0b; color:white; }
.frp-month.open .frp-month-label { background:#16a34a; color:white; }
.frp-ban-card { border:1px solid var(--fb-gray-200); border-radius:12px; padding:20px; margin-bottom:16px; transition:all 0.2s; }
.frp-ban-card:hover { border-color:var(--fb-blue); }
.frp-ban-active { border-left:4px solid #dc2626; }
.frp-faq { border:1px solid var(--fb-gray-200); border-radius:12px; margin-bottom:12px; overflow:hidden; }
.frp-faq summary { padding:16px 20px; font-weight:700; cursor:pointer; list-style:none; display:flex; justify-content:space-between; align-items:center; }
.frp-faq summary::-webkit-details-marker { display:none; }
.frp-faq summary::after { content:'+'; font-size:20px; color:var(--fb-gray-text); transition:transform 0.2s; }
.frp-faq[open] summary::after { content:'-'; }
.frp-faq-answer { padding:0 20px 16px; color:var(--fb-gray-text); line-height:1.8; }
@media (max-width:768px) {
    .frp-calendar { grid-template-columns:repeat(3, 1fr); }
    .frp-stats { gap:12px; }
    .frp-stat { padding:12px 16px; flex:1; min-width:100px; }
    div[style*="grid-template-columns:2fr 1fr"] { grid-template-columns:1fr !important; }
    .frp-hero h1 { font-size:28px !important; }
}
