:root { color: #eaf5ff; background: #030508; font-family: "Roboto Flex", system-ui, sans-serif; }
* { box-sizing: border-box; }
body { min-height: 100vh; margin: 0; background-image: linear-gradient(rgba(0, 215, 244, .09) 1px, transparent 1px), linear-gradient(90deg, rgba(0, 215, 244, .09) 1px, transparent 1px), radial-gradient(ellipse at 50% 0%, rgba(17, 26, 54, .8), transparent 58%); background-size: 52px 52px, 52px 52px, auto; }
main { width: min(900px, calc(100% - 32px)); margin: 0 auto; padding: 42px 0 72px; }
.brand { display: inline-flex; align-items: center; gap: 10px; color: #ff7200; font-size: 1.25rem; font-weight: 800; letter-spacing: .04em; text-decoration: none; }
.brand::before { content: "◆"; color: #67eaff; }
article { margin-top: 28px; padding: clamp(22px, 5vw, 46px); border: 1px solid rgba(0, 215, 244, .52); background: linear-gradient(135deg, rgba(3, 11, 23, .94), rgba(5, 9, 17, .91)); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), 0 0 34px rgba(0, 215, 244, .08); }
h1, h2 { font-weight: 800; letter-spacing: .015em; }
h1 { margin: 0; color: #67eaff; font-size: clamp(2rem, 6vw, 3.2rem); }
h2 { margin: 2.1rem 0 .7rem; color: #ffbd3f; font-size: 1.15rem; }
p, li { color: #d5e2ee; line-height: 1.65; }
ul { padding-left: 1.25rem; }
a { color: #67eaff; }
.updated { color: #91a9bc; margin-top: .6rem; }
.notice { margin-top: 1.5rem; padding: 14px 16px; border-left: 3px solid #f40071; background: rgba(244, 0, 113, .08); color: #f1dbe7; }
.policy-nav { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 28px; padding-top: 20px; border-top: 1px solid rgba(103, 234, 255, .2); }
.policy-nav a { font-size: .9rem; }
