:root{--primary-color: #f7c114;--header-height: 60px;--bg-color: #ffffff;--bg-secondary: #fafafa;--text-color: rgba(0, 0, 0, .88);--text-secondary: rgba(0, 0, 0, .45);--text-inverse: #ffffff;--border-color: #f0f0f0;--card-bg: #ffffff;--modal-bg: #ffffff;--input-bg: #ffffff;--hover-bg: rgba(0, 0, 0, .04);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .08);--shadow-md: 0 6px 16px rgba(0, 0, 0, .12);--modal-mask: rgba(0, 0, 0, .45);--header-bg: rgba(255, 255, 255, .95);--theme-toggle-color: var(--primary-color)}[data-theme=dark]{--bg-color: #121212;--bg-secondary: #1f1f1f;--text-color: rgba(255, 255, 255, .88);--text-secondary: rgba(255, 255, 255, .45);--text-inverse: #000000;--border-color: #303030;--card-bg: #1e1e1e;--modal-bg: #1f1f1f;--input-bg: #2a2a2a;--hover-bg: rgba(255, 255, 255, .08);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .4);--shadow-md: 0 6px 16px rgba(0, 0, 0, .6);--modal-mask: rgba(0, 0, 0, .75);--header-bg: rgba(18, 18, 18, .95);--theme-toggle-color: var(--primary-color)}*{margin:0;padding:0;box-sizing:border-box;font-family:Helvetica Neue,Arial,Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,sans-serif}html[data-device=desktop]{scrollbar-gutter:stable}body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-color);color:var(--text-color);transition:background-color .3s,color .3s;min-height:100vh;overflow-x:hidden;position:relative;display:flex;flex-direction:column}.modal-hint-text{margin-bottom:8px;color:var(--text-secondary);font-size:14px}.modal-language-select{width:100%;padding:8px 12px;font-size:14px;border:1px solid var(--border-color);border-radius:6px;background:var(--input-bg);color:var(--text-color);cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:background-color .3s,border-color .3s,color .3s}.modal-language-select:hover{background:var(--hover-bg)}body.ant-scrolling-effect,html.ant-scrolling-effect{overflow:hidden!important;position:fixed!important;width:100%!important}#root{width:100%}.site-header{position:fixed;top:0;left:0;right:0;height:var(--header-height);background:var(--header-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;padding:0 20px;z-index:1000;transition:background-color .3s,border-color .3s}.site-title-frame{position:absolute;left:50%;transform:translate(-50%);border:1px solid var(--primary-color);border-radius:999px;padding:2px;background:var(--header-bg);box-shadow:var(--shadow-sm)}.site-title-button{font-size:1.25rem;font-weight:700;color:var(--primary-color);letter-spacing:1px;background:none;border:none;cursor:pointer;padding:6px 14px;border-radius:999px;transition:background .2s,transform .2s;white-space:nowrap;text-decoration:none}.site-title-button:visited,.site-title-button:hover,.site-title-button:active{color:var(--primary-color);text-decoration:none}.site-title-button:hover{background:#0000000a;transform:scale(1.02)}.site-title-button:active{transform:scale(.98)}.background-animation{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;background-image:radial-gradient(#ddd 1px,transparent 1px);background-size:20px 20px;opacity:.3}.container{width:100%;margin:0 auto;padding:calc(var(--header-height) + 20px) 20px 40px 20px;display:flex;flex-direction:column;align-items:center;gap:2rem}.left-column{display:flex;flex-direction:column;align-items:center;width:100%;max-width:500px}.interaction-hint{color:var(--text-muted);font-size:.9rem;letter-spacing:.5px;opacity:.8}.site-footer{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;padding:20px;color:var(--text-muted);font-size:.75rem;opacity:.6}.site-footer .build-info{margin-top:4px;font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;font-size:.7rem}@media(max-width:600px){.container{padding:calc(var(--header-height) + 15px) 12px 30px 12px;gap:1.5rem}.site-header{padding:0 12px}}@media(min-width:601px)and (max-width:1023px){.container{padding:calc(var(--header-height) + 20px) 24px 40px 24px}}@media(min-width:1024px){.container{flex-direction:row;align-items:flex-start;justify-content:center;gap:40px;padding-left:40px;padding-right:40px}.left-column,.info-section{width:calc((100vw - 120px)/2);max-width:500px;flex-shrink:0}}
