@import url("https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@400;700;800;900&family=Fredoka:wght@400;600;700&display=swap");:root{--color-primary:#4A90E2;--color-primary-light:#6DB3F2;--color-primary-dark:#2E6BBF;--color-secondary:#FF8A50;--color-secondary-light:#FFB088;--color-secondary-dark:#E06A30;--color-accent:#66D97F;--color-accent-light:#9AEEA8;--color-accent-dark:#3FC060;--color-correct:#4ECB71;--color-wrong:#FF6B6B;--color-warning:#FFD93D;--color-info:#6C9CFF;--bg-gradient-start:#E8F4FD;--bg-gradient-end:#F0E6FF;--bg-card:rgba(255,255,255,0.85);--bg-card-hover:rgba(255,255,255,0.95);--text-primary:#2D3436;--text-secondary:#636E72;--text-light:#B2BEC3;--text-white:#FFFFFF;--shadow-sm:0 2px 8px rgba(74,144,226,0.1);--shadow-md:0 4px 20px rgba(74,144,226,0.15);--shadow-lg:0 8px 40px rgba(74,144,226,0.2);--shadow-glow:0 0 30px rgba(74,144,226,0.3);--font-main:"M PLUS Rounded 1c","Hiragino Sans",sans-serif;--font-game:"Fredoka","M PLUS Rounded 1c",sans-serif;--radius-sm:12px;--radius-md:20px;--radius-lg:28px;--radius-round:50%;--transition-fast:0.15s ease;--transition-normal:0.3s ease;--transition-slow:0.5s ease;--transition-bounce:0.5s cubic-bezier(0.34,1.56,0.64,1)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-main);color:var(--text-primary);background:linear-gradient(135deg,var(--bg-gradient-start) 0,var(--bg-gradient-end) 100%);min-height:100vh;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background-image:radial-gradient(circle at 20% 30%,rgba(74,144,226,.06) 0,transparent 50%),radial-gradient(circle at 80% 70%,rgba(255,138,80,.06) 0,transparent 50%),radial-gradient(circle at 50% 50%,rgba(102,217,127,.04) 0,transparent 50%);pointer-events:none;z-index:-1}a{color:inherit;text-decoration:none}button{cursor:pointer;border:none;background:none;font-family:inherit}img{max-width:100%;height:auto}.container{max-width:960px;margin:0 auto;padding:0 20px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 32px;font-family:var(--font-main);font-size:1.1rem;font-weight:700;border-radius:var(--radius-md);transition:all var(--transition-normal);position:relative;overflow:hidden}.btn:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.btn:hover:after{left:100%}.btn-primary{background:linear-gradient(135deg,var(--color-primary) 0,var(--color-primary-dark) 100%);color:var(--text-white);box-shadow:0 4px 15px rgba(74,144,226,.4)}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 6px 25px rgba(74,144,226,.5)}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:linear-gradient(135deg,var(--color-secondary) 0,var(--color-secondary-dark) 100%);color:var(--text-white);box-shadow:0 4px 15px rgba(255,138,80,.4)}.btn-secondary:hover{transform:translateY(-3px);box-shadow:0 6px 25px rgba(255,138,80,.5)}.btn-accent{background:linear-gradient(135deg,var(--color-accent) 0,var(--color-accent-dark) 100%);color:var(--text-white);box-shadow:0 4px 15px rgba(102,217,127,.4)}.btn-accent:hover{transform:translateY(-3px);box-shadow:0 6px 25px rgba(102,217,127,.5)}.btn-lg{padding:18px 48px;font-size:1.3rem;border-radius:var(--radius-lg)}.card{background:var(--bg-card);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.6);border-radius:var(--radius-md);padding:24px;box-shadow:var(--shadow-md);transition:all var(--transition-normal)}.card:hover{background:var(--bg-card-hover);box-shadow:var(--shadow-lg);transform:translateY(-4px)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(50px)}to{opacity:1;transform:translateX(0)}}@keyframes float{0%,to{transform:translateY(0) rotate(0deg)}25%{transform:translateY(-8px) rotate(2deg)}75%{transform:translateY(4px) rotate(-1deg)}}@keyframes sparkle{0%,to{opacity:0;transform:scale(0)}50%{opacity:1;transform:scale(1)}}@keyframes hitEffect{0%{transform:scale(1);filter:brightness(1)}50%{transform:scale(1.1);filter:brightness(1.5)}to{transform:scale(1);filter:brightness(1)}}@media (max-width:768px){.container{padding:0 16px}.btn{padding:12px 24px;font-size:1rem}.btn-lg{padding:14px 36px;font-size:1.1rem}}@media (max-width:480px){.btn{padding:10px 20px;font-size:.95rem}}article h1,article h2,article h3,article h4{font-family:var(--font-main);font-weight:700;line-height:1.4;margin-top:2em;margin-bottom:.6em;color:var(--text-primary)}article h1{font-size:1.6rem}article h2{font-size:1.25rem;padding-bottom:6px;border-bottom:2px solid rgba(74,144,226,.2)}article h3{font-size:1.05rem;color:var(--color-primary-dark)}article p{margin-bottom:1em;color:var(--text-primary)}article ol,article ul{margin:.8em 0 1em 1.5em;color:var(--text-primary)}article li{margin-bottom:.3em}article a{color:var(--color-primary);text-decoration:underline}article a:hover{color:var(--color-primary-dark)}article strong{font-weight:700}article hr{border:none;border-top:1px solid rgba(74,144,226,.15);margin:2em 0}article table{width:100%;border-collapse:collapse;margin:1.2em 0;font-size:.9rem}article td,article th{padding:8px 14px;border:1px solid rgba(74,144,226,.2);text-align:left}article th{background:rgba(74,144,226,.08);font-weight:700}article blockquote{border-left:4px solid var(--color-primary-light);margin:1em 0;padding:8px 16px;background:rgba(74,144,226,.05)}article blockquote,article em{color:var(--text-secondary);font-style:italic}article em{font-size:.9em}