/*
Theme Name: hindareta-classic
Theme URI: https://example.invalid/themes/hindareta-classic
Author: けんじーまん + GPT
Author URI: https://example.invalid/
Description: 日本語タイポグラフィと視認性に配慮したクラシックエディタ向けオリジナルテーマ。高コントラストかつ眩しさを抑えた配色、右サイドバー（モバイルは下部）レイアウト、構造化データ/SEO対応。
Version: 1.0.0
Requires at least: 6.5
Tested up to: 6.6
Requires PHP: 8.0
License: MIT
License URI: https://opensource.org/licenses/MIT
Text Domain: hindareta-classic
*/
:root{
  /* 眩しさを抑えたライト配色（AA想定） */
  --hc-bg: #f6f7f9;          /* 紙のような柔らかい白 */
  --hc-bg-elev: #ffffff;     /* カード等 */
  --hc-text: #1f2937;        /* Slate-800 */
  --hc-text-muted: #475569;  /* Slate-600 */
  --hc-border: #e5e7eb;      /* Gray-200 */
  --hc-accent: #0ea5b7;      /* Teal-500 (自由/海/空のイメージ) */
  --hc-accent-strong: #028097; /* 濃いアクセント */
  --hc-accent-contrast: #ffffff;
  --hc-focus: #2563eb;       /* アクセシブルなフォーカス色 */
  --hc-link: #0b8aa0;
  --hc-link-hover: #086c7d;
  --hc-code-bg: #eef2ff;
  --hc-code-text: #1e293b;
  --hc-radius: 12px;
  --hc-container: 1140px;
}

html{scroll-behavior:smooth}
*{box-sizing:border-box}

body{
  margin:0;
  color:var(--hc-text);
  background:var(--hc-bg);
  font-family: system-ui, -apple-system, "Hiragino Kaku Gothic ProN", "Yu Gothic UI", "Yu Gothic", "Noto Sans JP", Meiryo, sans-serif;
  font-size:16.5px;
  line-height:1.9;
  letter-spacing:0.02em; /* 和文の詰まり緩和 */
  -webkit-text-size-adjust:100%;
}

a{color:var(--hc-link); text-decoration-thickness: 0.08em; text-underline-offset: 2px;}
a:hover{color:var(--hc-link-hover)}
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible{
  outline: 3px solid var(--hc-focus);
  outline-offset: 2px;
  border-radius: 6px;
}

.container{max-width:var(--hc-container); margin:0 auto; padding:0 16px;}
.site{display:grid; grid-template-areas:
  "header"
  "nav"
  "main"
  "footer"; gap: 16px;}

@media(min-width: 1024px){
  .site{grid-template-columns: 1fr 320px; grid-template-areas:
    "header header"
    "nav nav"
    "content sidebar"
    "footer footer"; gap: 24px;}
}

.site-header{grid-area: header; background:transparent;}
.site-nav{grid-area: nav; border-top:1px solid var(--hc-border); border-bottom:1px solid var(--hc-border); background: rgba(255,255,255,0.65); backdrop-filter: saturate(160%) blur(2px);}
.site-main{grid-area: content;}
.site-sidebar{grid-area: sidebar;}
.site-footer{grid-area: footer; border-top:1px solid var(--hc-border); padding-top:16px; margin-top:24px;}

.header-inner{display:flex; align-items:center; justify-content:space-between; gap:16px; padding:16px 0;}
.site-title{font-weight:800; font-size: clamp(1.25rem, 2vw + 1rem, 1.8rem); letter-spacing:0.01em; margin:0;}
.site-desc{color:var(--hc-text-muted); margin:4px 0 0 0; font-size:0.95rem;}
.logo-wrap img{max-height:56px; height:auto; width:auto}

.nav ul{display:flex; gap:12px; list-style:none; margin:0; padding:8px 0; flex-wrap:wrap}
.nav a{display:block; padding:8px 10px; border-radius:8px; color:var(--hc-text);}
.nav .current-menu-item>a{background:var(--hc-accent); color:var(--hc-accent-contrast);}
.nav a:hover{background:var(--hc-bg-elev)}

.content-card{background:var(--hc-bg-elev); border:1px solid var(--hc-border); border-radius: var(--hc-radius); padding: 1.2rem; box-shadow: 0 1px 2px rgba(0,0,0,.03);}

.entry-title a{color:inherit; text-decoration:none}
.entry-meta{color:var(--hc-text-muted); font-size:0.9rem; margin-bottom:6px}

.sidebar .widget{background:var(--hc-bg-elev); border:1px solid var(--hc-border); border-radius: var(--hc-radius); padding: 1rem; margin-bottom:1rem}
.widget-title{margin-top:0; font-size:1.05rem; letter-spacing:0.02em}

.pagination{display:flex; gap:8px; flex-wrap:wrap; margin: 16px 0}
.pagination a, .pagination span{display:inline-block; padding:6px 10px; border-radius:8px; border:1px solid var(--hc-border); background:#fff}
.pagination .current{background:var(--hc-accent); color:var(--hc-accent-contrast); border-color:var(--hc-accent)}

.skip-link{position:absolute; left:-9999px; top:auto; width:1px; height:1px; overflow:hidden}
.skip-link:focus{position:static; width:auto; height:auto; padding:8px; background:var(--hc-code-bg); border-radius:8px}

code, pre{background:var(--hc-code-bg); color:var(--hc-code-text)}
pre{padding:1rem; border-radius:10px; overflow:auto}

figure img{max-width:100%; height:auto; border-radius:10px}
img{height:auto; max-width:100%}

button, input, select, textarea{font:inherit}
hr{border:0; border-top:1px solid var(--hc-border)}
blockquote{border-left:4px solid var(--hc-accent); margin:1rem 0; padding:0.5rem 1rem; background:#fff}
*/



  .screen-reader-text {
    position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden;
    clip:rect(0,0,0,0); white-space:nowrap; border:0;
  }
  .screen-reader-text:focus {
    position:static; width:auto; height:auto; margin:0; clip:auto; white-space:normal;
  }
