.site-notice{max-width:900px;margin:28px auto 48px;padding:clamp(22px,4vw,42px);border-color:rgba(124,108,255,.35);background:linear-gradient(145deg,rgba(124,108,255,.09),transparent 40%),var(--panel)}
.notice-brand{display:block;color:var(--ac2);font-size:.75rem;font-weight:700;letter-spacing:.16em;margin-bottom:12px}
.site-notice h1{font-size:clamp(1.5rem,4vw,2.1rem)}
.notice-rules{padding-inline-start:1.7rem;margin:24px 0;line-height:1.8}
.notice-rules li{padding-inline-start:6px;margin:14px 0}
.notice-rules li::marker{color:var(--ac2);font-weight:700}
.notice-links{display:flex;flex-wrap:wrap;gap:12px 24px;margin:20px 0}
.notice-links a{color:var(--ac2);text-decoration:underline;text-underline-offset:4px}
.notice-check{display:flex;flex-direction:row;align-items:flex-start;gap:13px;padding:18px;border:1px solid var(--line);border-radius:12px;cursor:pointer;font-weight:500;color:var(--tx)}
.notice-check input[type=checkbox]{appearance:auto;flex:0 0 20px;width:20px;height:20px;min-height:20px;margin:4px 0 0;accent-color:var(--ac);cursor:pointer}
.site-notice .btn{min-height:48px;padding:12px 25px}
.site-notice button:disabled{cursor:not-allowed;opacity:.4}
.notice-accepted{color:var(--ok)}
.notice-summary{margin:24px 0;border:1px solid var(--line);border-radius:12px;padding:14px 20px;background:var(--panel)}
.notice-summary summary{font-weight:600;cursor:pointer;min-height:26px}
@media(max-width:600px){.site-notice{margin:16px 0 24px}.site-notice .btn{width:100%}.notice-check{padding:14px}.notice-rules{font-size:.93rem}}
