/*
Theme Name: Ippinkan Reader
Description: Twenty Ten child theme preserving Ippinkan responsive layout and search title fixes.
Template: twentyten
Version: 1.0.0
License: GNU General Public License v2 or later
Text Domain: ippinkan-reader
*/

/* Ippinkan readability refresh 2026-09-19. Remove this block to restore. */
body { background:#f3f5f7; color:#24313d; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP","Yu Gothic",Meiryo,sans-serif; }
#wrapper { box-sizing:border-box; width:calc(100% - 40px); max-width:1120px; margin:28px auto; padding:32px; border-radius:12px; box-shadow:0 3px 24px rgba(24,45,64,.07); }
#header { padding:0; }
#site-title { float:none; width:auto; margin:0 0 12px; font-size:30px; line-height:1.5; }
#site-title a { color:#18384c; }
#site-description { float:none; width:auto; margin:0 0 24px; font-size:14px; line-height:1.9; font-style:normal; color:#526373; }
#branding img { width:100%; height:auto; border:0; border-radius:8px; }
#access { box-sizing:border-box; width:100%; background:#18384c; margin:20px 0 0; border-radius:6px; }
#access .menu-header,#access div.menu { width:auto; margin:0; font-size:13px; }
#access a { padding:6px 13px; color:#fff; line-height:32px; }
#access li:hover>a,#access ul ul :hover>a,#access a:focus { background:#2c536b; color:#fff; }
#main { display:grid; grid-template-columns:minmax(0,1fr) 250px; gap:32px; padding:32px 0 0; }
#container { float:none; width:auto; margin:0; min-width:0; grid-column:1; grid-row:1 / span 2; }
#content { margin:0; color:#24313d; font-size:16px; line-height:1.95; overflow-wrap:anywhere; }
#primary,#secondary { float:none; width:auto; margin:0; grid-column:2; }
#content .entry-title { font-size:24px; line-height:1.6; margin:0 0 12px; }
.entry-title a:link,.entry-title a:visited { color:#18384c; }
#content .entry-content { padding:20px 0 0; }
#content .hentry { padding:0 0 30px; margin:0 0 32px; border-bottom:1px solid #e2e8ed; }
.entry-meta,.entry-utility { font-size:12px; line-height:1.8; color:#5e6f7c; }
a:link { color:#146486; } a:visited { color:#526b91; } a:hover,a:focus { color:#a64b17; }
#content .entry-content img { max-width:100%; height:auto; }
#content iframe { max-width:100%; }
#content .entry-content h2 { font-size:22px; line-height:1.7; padding:10px 14px; border-left:4px solid #2c6a85; background:#f2f6f8; }
.widget-area { font-size:14px; line-height:1.9; }
.widget-container { background:#f7f9fa; padding:18px; margin-bottom:20px; border-radius:8px; }
.widget-title { color:#18384c; font-size:16px; line-height:1.7; margin-bottom:12px; }
.widget-area ul ul { margin-left:16px; } .widget-area li li { margin-bottom:10px; }
.widget-area select,.widget-area input[type="text"] { box-sizing:border-box; width:100%; max-width:100%; padding:8px; border:1px solid #c6d2dc; border-radius:4px; }
#footer { margin-top:20px; } #colophon { box-sizing:border-box; width:100%; border-top:1px solid #e2e8ed; padding:24px 0; color:#62717d; }
@media(max-width:760px) { #wrapper { width:calc(100% - 20px); margin:10px auto; padding:20px; } #main { display:block; } #primary,#secondary { margin-top:28px; } #site-title { font-size:25px; } #content .entry-title { font-size:22px; } #access a { padding:5px 10px; } }

#branding img { max-width:100%; box-sizing:border-box; }

/* Responsive width correction 2026-09-23 */
#branding, #main { width:100%; box-sizing:border-box; }
#site-info, #site-generator { float:none; width:auto; max-width:100%; }
#site-generator { margin-top:12px; }
#content .wp-caption { max-width:100%; box-sizing:border-box; }
#content pre { max-width:100%; overflow:auto; }
#content input, #content textarea { max-width:100%; box-sizing:border-box; }
@media (max-width:760px) {
 #site-title, #site-description { overflow-wrap:anywhere; }
 #access .menu-header, #access div.menu { padding:0; }
 #access a { min-height:44px; box-sizing:border-box; line-height:1.6; display:flex; align-items:center; }
 #content .entry-content table { display:block; max-width:100%; overflow-x:auto; }
 #content .entry-content img { max-width:100% !important; height:auto !important; }
}

