.mas-ap-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 1rem; }
.mas-ap-card, .mas-ap-home-card, .mas-ap-splash-box, .mas-ap-placeholder-form { border: 1px solid rgba(255,255,255,.16); border-radius: 22px; padding: 1.2rem; background: rgba(255,255,255,.06); }
.mas-ap-card img { width: 100%; height: auto; border-radius: 16px; display: block; }
.mas-ap-button { display: inline-block; border-radius: 999px; padding: .65rem 1rem; margin-top: .5rem; background: #e63946; color: #fff !important; text-decoration: none; font-weight: 700; }
.mas-ap-button.secondary { background: #457b9d; }
.mas-ap-actions { display: flex; flex-wrap: wrap; gap: .7rem; }
.mas-ap-small { font-size: .9rem; opacity: .82; }
.mas-ap-date { font-weight: 800; color: #ffb703; }
.mas-ap-placeholder-form input { padding: .75rem; border-radius: 999px; border: 1px solid rgba(255,255,255,.3); max-width: 100%; }
.mas-ap-placeholder-form button { padding: .75rem 1rem; border-radius: 999px; border: 0; }


.mas-ap-admin-grid { display:grid; grid-template-columns: repeat(auto-fit,minmax(220px,1fr)); gap:16px; margin:20px 0; }
.mas-ap-admin-card, .mas-ap-check-card { background:#fff; border:1px solid #dcdcde; border-radius:14px; padding:18px; box-shadow:0 1px 2px rgba(0,0,0,.04); }
.mas-ap-check-card { display:block; }
.mas-ap-license-card { margin:18px 0; }
.mas-ap-license-state-active, .mas-ap-license-state-development { color:#008a20; font-weight:700; }
.mas-ap-license-state-grace { color:#996800; font-weight:700; }
.mas-ap-license-state-expired, .mas-ap-license-state-inactive { color:#b32d2e; font-weight:700; }
.mas-ap-notice { border-radius:12px; padding:12px 14px; margin:14px 0; border:1px solid transparent; }
.mas-ap-notice.success { background:#edfaef; border-color:#46b450; }
.mas-ap-notice.warning { background:#fff8e5; border-color:#ffb900; }
.mas-ap-notice.error { background:#fcf0f1; border-color:#d63638; }
.mas-ap-debug-box { background:#111827; color:#f9fafb; padding:16px; border-radius:12px; overflow:auto; max-height:360px; }
.mas-ap-fan-claim-form { display:grid; gap:10px; max-width:560px; margin:1rem 0; }
.mas-ap-fan-claim-form input { padding:.8rem; border-radius:12px; border:1px solid rgba(0,0,0,.18); }
