@import"https://fonts.googleapis.com/css2?family=Jost:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600;700&display=swap";:root{--primary-background: #FAF0E6;--primary-text: #2C3E50;--accent-orange: #D95B07;--accent-yellow: #EAA220;--accent-teal: #3D9A98;--accent-blue: #2A5379;--muted-taupe: #BCA68E;--muted-text: #8a7a63;--font-heading: "Jost", "Arial", "Noto Sans CJK JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", "Meiryo", "Noto Sans CJK SC", "Source Han Sans", "PingFang SC", "Microsoft YaHei", sans-serif;--font-body: "Jost", "Arial", "Noto Sans CJK JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", "Meiryo", "Noto Sans CJK SC", "Source Han Sans", "PingFang SC", "Microsoft YaHei", sans-serif;--font-mono: "IBM Plex Mono", "Menlo", "Consolas", monospace;--max-width: 1200px;--border-radius: 8px;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 2rem;--spacing-lg: 3rem;--spacing-xl: 4rem;--shadow-light: 0 2px 10px rgba(44, 62, 80, .1);--shadow-medium: 0 4px 20px rgba(44, 62, 80, .15)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-body);line-height:1.6;color:var(--primary-text);background-color:var(--primary-background);min-height:100vh;font-size:16px}.header{background-color:var(--primary-background);border-bottom:3px solid var(--accent-blue);position:sticky;top:0;z-index:100;box-shadow:var(--shadow-medium)}.header__container{max-width:var(--max-width);margin:0 auto;padding:10px 24px;display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-sm)}.header__edit{color:var(--accent-teal)}.header__logo{font-family:var(--font-heading);font-size:1.4rem;font-weight:700;color:var(--accent-orange);text-decoration:none;text-transform:uppercase;letter-spacing:2px;transition:color .3s ease;border-radius:var(--border-radius)}.header__logo:focus{outline:2px solid var(--accent-blue);outline-offset:4px}.header__nav{display:flex;list-style:none;gap:4px;flex-wrap:wrap}.header__nav-link{font-family:var(--font-mono);font-size:.72rem;font-weight:600;letter-spacing:1.2px;word-spacing:-4px;text-transform:uppercase;color:var(--primary-text);text-decoration:none;padding:8px 12px;border-radius:6px;transition:all .3s ease;display:flex;align-items:center}.header__nav-link:hover{color:var(--accent-blue);background-color:#2a537914}.header__nav-link--active{color:var(--accent-blue);background-color:#2a53791a;outline:2px solid var(--accent-blue);outline-offset:-2px}.main{min-height:calc(100vh - 200px);max-width:var(--max-width);margin:0 auto;padding:var(--spacing-md)}.footer{background-color:var(--primary-background);border-top:3px solid var(--accent-blue);padding:18px 0;margin-top:auto}.footer__content{max-width:var(--max-width);margin:0 auto;padding:0 24px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}.footer__content p{color:var(--muted-text);font-size:.85rem;margin:0}.footer__social{display:flex;gap:var(--spacing-sm)}.footer__social-link{color:var(--primary-text);text-decoration:none;font-size:.85rem;font-weight:600;transition:color .3s ease;padding:var(--spacing-xs);border-radius:var(--border-radius);display:flex;align-items:center}.footer__social-link:hover{color:var(--accent-blue)}.footer__social-link:focus{outline:2px solid var(--accent-blue);outline-offset:2px;color:var(--accent-blue)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600;text-transform:uppercase;letter-spacing:1px;margin-bottom:var(--spacing-sm);color:var(--primary-text)}h1{font-size:2.4rem;font-weight:700;letter-spacing:2px;margin-bottom:var(--spacing-md)}h2{font-size:1.5rem;font-weight:700;letter-spacing:1.5px}h3{font-size:1.1rem}p{margin-bottom:var(--spacing-sm)}a{color:var(--accent-blue);transition:color .3s ease}a:hover{color:var(--accent-orange)}a:focus{outline:2px solid var(--accent-blue);outline-offset:2px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 32px;background-color:var(--accent-orange);color:var(--primary-background);text-decoration:none;font-family:var(--font-mono);font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;border-radius:var(--border-radius);border:none;cursor:pointer;transition:all .3s ease;min-height:44px}.btn:hover{background-color:var(--accent-blue)}.btn:focus{outline:2px solid var(--accent-blue);outline-offset:2px;background-color:var(--accent-blue)}.btn--secondary{background-color:var(--accent-teal)}.btn--secondary:hover,.btn--secondary:focus{background-color:var(--accent-blue)}.card{background-color:var(--primary-background);border:2px solid var(--muted-taupe);border-radius:var(--border-radius);padding:var(--spacing-md);box-shadow:var(--shadow-light);transition:all .3s ease}.card:focus-within{border-color:var(--accent-blue);box-shadow:var(--shadow-medium)}.header__menu-toggle{display:none;flex-direction:column;background:none;border:none;cursor:pointer;padding:var(--spacing-xs);border-radius:var(--border-radius);transition:background-color .3s ease}.header__menu-toggle:focus{outline:2px solid var(--accent-blue);outline-offset:2px;background-color:#2a53791a}.header__menu-icon{width:24px;height:3px;background-color:var(--primary-text);margin:2px 0;transition:all .3s ease}@media (max-width: 768px){.header__container{padding:10px var(--spacing-sm)}.header__menu-toggle{display:flex}.header__nav{display:none;position:absolute;top:100%;left:0;width:100%;background-color:var(--primary-background);border-top:1px solid var(--muted-taupe);box-shadow:var(--shadow-medium);flex-direction:column;gap:0;padding:var(--spacing-sm)}.header__nav--open{display:flex}.header__nav li{width:100%}.header__nav-link{font-size:.8rem;width:100%;justify-content:center;padding:var(--spacing-sm)}.footer__content{flex-direction:column;text-align:center}.main{padding:var(--spacing-sm)}h1{font-size:2rem}h2{font-size:1.3rem}}@media (max-width: 480px){.main{padding:var(--spacing-sm) .8rem}h1,.page-header__title{font-size:1.8rem}}.page-header{text-align:center;padding:var(--spacing-md) var(--spacing-md) var(--spacing-xs);max-width:var(--max-width);margin:0 auto}.page-header__title{font-family:var(--font-heading);font-size:clamp(1.8rem,3.5vw,2.4rem);font-weight:700;color:var(--primary-text);text-transform:uppercase;letter-spacing:2px;margin-bottom:var(--spacing-xs)}.page-header__subtitle{font-size:1rem;color:var(--muted-text);font-weight:400;line-height:1.5;margin:0}
