/* 色は 07_副業探索/CLAUDE.md の組。文字は大きめ、行間は広め。利用者の文字の大きさの設定を上書きしないよう rem で指定する */
:root {
  --main: #165E83;
  --text: #1C2329;
  --sub: #5A646B;
  --bg: #FFFFFF;
  --line: #D3DCE2;
  --focus: #B8742A;
  color-scheme: light dark;
}
@media (prefers-color-scheme: dark) {
  :root {
    --main: #9CC3DC;
    --text: #EEF2F5;
    --sub: #B7C1C8;
    --bg: #12181C;
    --line: #3A454D;
    --focus: #E3A35A;
  }
}

html { font-size: 112.5%; }
body {
  margin: 0;
  background: var(--bg);
  color: var(--text);
  font-family: "BIZ UDPGothic", "Hiragino Sans", "Yu Gothic UI", "Meiryo", sans-serif;
  line-height: 1.8;
}
main, .site-header, .site-footer {
  max-width: 40rem;
  margin: 0 auto;
  padding-left: max(1rem, env(safe-area-inset-left, 0px));
  padding-right: max(1rem, env(safe-area-inset-right, 0px));
}
.site-header { padding-block: 1rem; border-bottom: 1px solid var(--line); }
.site-name { margin: 0; font-weight: 700; }
.site-footer { padding-block: 2rem; color: var(--sub); border-top: 1px solid var(--line); margin-top: 3rem; }

h1, h2, h3 { line-height: 1.4; color: var(--main); }
h1 { font-size: 1.6rem; }
h2 { font-size: 1.3rem; }
a { color: var(--main); text-underline-offset: 0.2em; }
a:hover { text-decoration-thickness: 2px; }
:focus-visible { outline: 3px solid var(--focus); outline-offset: 2px; }

.skip { position: absolute; left: 1rem; top: -10rem; background: var(--bg); padding: 0.5rem 1rem; }
.skip:focus { top: 1rem; }

@media (prefers-reduced-motion: reduce) {
  * { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
