/*
Theme Name: Paris Daiko Modern
Theme URI: https://parisdaiko.com
Description: parisdaiko.com 用テーマ。 agnès b. ファッションブランド モチーフ（パープル + ブラック）。 余白多めのミニマル・モノクロ + パープルアクセント。 既存ページ・記事・URL・サイトタイトル・ウィジェット・メニューは保持し、見た目だけ刷新。
Version: 1.2.3
Author: ai-haisya2
Text Domain: paris-daiko-modern
Requires at least: 5.8
Requires PHP: 7.4
*/

/* ============ agnès b. 風 Palette ============ */
:root{
  --purple:#7C3AED;
  --purple-deep:#5B21B6;
  --purple-darker:#3D1B69;
  --purple-light:#A78BFA;
  --purple-soft:#C4B5FD;
  --black:#0a0a0a;
  --black-soft:#171717;
  --black-card:#1c1b22;
  --text:#f5f5f5;
  --text-muted:rgba(245,245,245,0.78);
  --text-faint:rgba(245,245,245,0.5);
  --border:rgba(124,58,237,0.18);
  --border-strong:rgba(124,58,237,0.5);
  --line:rgba(255,255,255,0.12);
}

/* ============ Reset / Base ============ */
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  margin:0;
  font-family:"Hiragino Mincho ProN","Yu Mincho","YuMincho",Georgia,serif;
  color:var(--text);
  background:var(--black);
  line-height:1.85;
  min-height:100vh;
  letter-spacing:.01em;
}
a{color:var(--purple-light);text-decoration:none;transition:color .2s}
a:hover{color:var(--purple-soft)}
img{max-width:100%;height:auto}
h1,h2,h3,h4{
  font-family:"Hiragino Kaku Gothic ProN","Noto Sans JP",-apple-system,BlinkMacSystemFont,sans-serif;
  line-height:1.4;font-weight:300;margin:0 0 .8em;color:var(--text);letter-spacing:.02em;
}
h1{font-size:2rem;font-weight:200}
h2{font-size:1.4rem;font-weight:300;padding-bottom:8px;border-bottom:1px solid var(--purple-light);display:inline-block}
h3{font-size:1.15rem;color:var(--purple-light);font-weight:400}
p{margin:0 0 1.2em}
table{width:100%;border-collapse:collapse;background:var(--black-soft);border:1px solid var(--line);overflow:hidden}
th,td{padding:14px 16px;border-bottom:1px solid var(--line);text-align:left}
th{background:rgba(124,58,237,.12);color:var(--purple-light);font-weight:500;letter-spacing:.05em;font-size:.9rem;text-transform:uppercase}
blockquote{margin:1.5em 0;padding:14px 20px;border-left:2px solid var(--purple);color:var(--text-muted);font-style:italic}
hr{border:0;border-top:1px solid var(--line);margin:40px 0}
code,pre{background:rgba(255,255,255,.04);padding:2px 6px;border-radius:0;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.95em}
pre{padding:16px;overflow:auto;border:1px solid var(--line)}

/* ============ Header (Minimal Fashion Brand) ============ */
.site-header{
  position:sticky;top:0;left:0;right:0;z-index:40;
  background:rgba(10,10,10,0.94);
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  border-bottom:1px solid var(--line);
}
.site-header-inner{
  max-width:1240px;margin:0 auto;padding:16px 20px;
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  min-height:64px;
}
.site-brand{
  font-family:"Hiragino Kaku Gothic ProN","Noto Sans JP",-apple-system,BlinkMacSystemFont,sans-serif;
  font-size:1.35rem;font-weight:200;color:var(--text);text-decoration:none;
  letter-spacing:.08em;display:flex;align-items:baseline;gap:6px;
  white-space:nowrap;flex-shrink:0;
}
.site-brand .accent{
  color:var(--purple-light);font-weight:300;font-style:italic;white-space:nowrap;
}
.site-tagline{font-size:.7rem;color:var(--text-faint);margin-left:12px;display:none;letter-spacing:.15em;text-transform:uppercase;font-weight:300;white-space:nowrap}
@media(min-width:1180px){.site-tagline{display:inline}}

.primary-nav{display:none}
@media(min-width:900px){.primary-nav{display:flex;align-items:center;gap:28px}}
.primary-nav ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.primary-nav a{
  color:var(--text-muted);font-size:.82rem;font-weight:400;text-decoration:none;transition:color .25s;
  letter-spacing:.1em;text-transform:uppercase;
  font-family:"Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif;
}
.primary-nav a:hover{color:var(--purple-light)}
.primary-nav .current-menu-item>a,.primary-nav .current_page_item>a{color:var(--purple-light)}

.header-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}
.btn-yoyaku{
  color:var(--purple-light);background:transparent;border:1px solid var(--purple-light);
  padding:7px 14px;border-radius:0;font-weight:400;font-size:.78rem;
  display:inline-flex;align-items:center;gap:6px;text-decoration:none;white-space:nowrap;
  letter-spacing:.1em;text-transform:uppercase;transition:all .25s;
  font-family:"Hiragino Kaku Gothic ProN",sans-serif;
}
.btn-yoyaku:hover{background:var(--purple-light);color:var(--black)}
.btn-call{
  color:#fff;background:var(--purple);
  padding:8px 18px;border-radius:0;font-weight:500;font-size:.85rem;
  display:inline-flex;align-items:center;gap:8px;text-decoration:none;white-space:nowrap;
  letter-spacing:.05em;transition:background .25s;
  font-family:"Hiragino Kaku Gothic ProN",sans-serif;
}
.btn-call:hover{background:var(--purple-deep);color:#fff}
.btn-call .label,.btn-yoyaku .label{display:none}
@media(min-width:560px){.btn-call .label,.btn-yoyaku .label{display:inline}}

.menu-toggle{
  display:inline-flex;align-items:center;justify-content:center;
  background:transparent;border:1px solid var(--text-faint);color:var(--text);
  width:40px;height:40px;border-radius:0;cursor:pointer;
  font:inherit;font-size:0;
}
.menu-toggle::before{content:"";display:block;width:18px;height:1px;background:var(--text);box-shadow:0 -6px 0 var(--text),0 6px 0 var(--text)}
@media(min-width:900px){.menu-toggle{display:none}}
.mobile-nav{display:none;position:fixed;top:64px;left:0;right:0;background:var(--black);border-top:1px solid var(--line);padding:20px 24px;z-index:39;max-height:calc(100vh - 64px);overflow:auto}
.mobile-nav.open{display:block}
.mobile-nav ul{list-style:none;margin:0;padding:0}
.mobile-nav li{border-bottom:1px solid var(--line)}
.mobile-nav a{
  display:block;padding:16px 4px;color:var(--text-muted);font-size:.9rem;text-decoration:none;
  letter-spacing:.08em;text-transform:uppercase;font-weight:400;
  font-family:"Hiragino Kaku Gothic ProN",sans-serif;
}
.mobile-nav a:hover{color:var(--purple-light)}

.header-spacer{display:none}

/* ============ Main / Page Layout (lots of whitespace) ============ */
.site-main{max-width:1100px;margin:0 auto;padding:56px 24px 64px}
.layout-with-sidebar{display:grid;gap:48px;grid-template-columns:1fr}
@media(min-width:900px){.layout-with-sidebar{grid-template-columns:1fr 260px}}

.entry-header{margin-bottom:40px;padding-bottom:24px;border-bottom:1px solid var(--purple)}
.entry-title{
  font-family:"Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif;
  font-size:2rem;font-weight:200;color:var(--text);margin:0;letter-spacing:.02em;
}
.entry-meta{font-size:.78rem;color:var(--text-faint);margin-top:10px;letter-spacing:.1em;text-transform:uppercase}
.entry-content{font-size:1.02rem}
.entry-content > *:first-child{margin-top:0}
.entry-content a{color:var(--purple-light);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.entry-content a:hover{color:var(--purple-soft)}
.entry-content ul,.entry-content ol{padding-left:1.3em}
.entry-content li{margin:.5em 0}
.entry-content img{border-radius:0}
.entry-content figcaption{font-size:.82rem;color:var(--text-faint);text-align:center;margin-top:10px;letter-spacing:.05em}
.entry-footer{margin-top:40px;padding-top:20px;border-top:1px solid var(--line);font-size:.85rem;color:var(--text-faint)}

.posts-list{list-style:none;margin:0;padding:0;display:grid;gap:0}
.posts-list a{display:block;padding:24px 0;border-bottom:1px solid var(--line);color:var(--text);text-decoration:none;transition:all .25s}
.posts-list a:hover{padding-left:8px;border-bottom-color:var(--purple)}
.posts-list strong{
  font-family:"Hiragino Kaku Gothic ProN",sans-serif;
  font-size:1.1rem;font-weight:300;color:var(--text);display:block;margin-bottom:4px;letter-spacing:.02em;
}

/* ============ Sidebar ============ */
.site-sidebar{display:flex;flex-direction:column;gap:32px}
.widget{background:transparent;border:0;padding:0;border-top:1px solid var(--purple);padding-top:18px}
.widget-title,.widgettitle{
  font-family:"Hiragino Kaku Gothic ProN",sans-serif;
  font-size:.78rem;color:var(--purple-light);margin:0 0 14px;font-weight:400;
  letter-spacing:.15em;text-transform:uppercase;
}
.widget ul{list-style:none;margin:0;padding:0}
.widget li{padding:7px 0;border-bottom:0}
.widget a{color:var(--text-muted);text-decoration:none;font-size:.92rem;font-family:"Hiragino Kaku Gothic ProN",sans-serif;font-weight:300}
.widget a:hover{color:var(--purple-light)}

/* ============ Footer ============ */
.site-footer{background:var(--black);border-top:1px solid var(--purple);color:var(--text);margin-top:64px;padding:64px 24px 32px;position:relative}
.site-footer-inner{max-width:1100px;margin:0 auto;display:grid;gap:40px;grid-template-columns:1fr;text-align:center}
@media(min-width:900px){.site-footer-inner{grid-template-columns:2.5fr 1fr 1fr 1fr;text-align:left}}
.footer-brand h3{
  font-family:"Hiragino Kaku Gothic ProN",sans-serif;
  font-size:1.4rem;color:var(--text);margin:0 0 16px;font-weight:200;letter-spacing:.08em;
}
.footer-brand h3 .accent{color:var(--purple-light);font-style:italic;font-weight:300}
.footer-brand p{color:var(--text-faint);font-size:.88rem;line-height:1.9;font-family:"Hiragino Mincho ProN","Yu Mincho",serif}
.footer-nap{margin-top:18px;font-size:.78rem;color:var(--text-faint);letter-spacing:.05em;font-family:"Hiragino Kaku Gothic ProN",sans-serif}
.footer-nap a{color:var(--purple-light);text-decoration:none}
.footer-nap a:hover{color:var(--purple-soft)}
.footer-col h4{
  font-family:"Hiragino Kaku Gothic ProN",sans-serif;
  font-size:.78rem;color:var(--purple-light);margin:0 0 14px;font-weight:400;
  letter-spacing:.15em;text-transform:uppercase;
}
.footer-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;align-items:center;gap:10px}
@media(min-width:900px){.footer-col ul{align-items:flex-start}}
.footer-col a{color:var(--text-faint);text-decoration:none;font-size:.85rem;font-family:"Hiragino Kaku Gothic ProN",sans-serif;font-weight:300;letter-spacing:.02em}
.footer-col a:hover{color:var(--purple-light)}
.footer-bottom{max-width:1100px;margin:48px auto 0;padding-top:28px;border-top:1px solid var(--line);text-align:center;color:var(--text-faint);font-size:.75rem;letter-spacing:.05em}
.footer-bottom .badge{color:var(--purple-light);font-style:italic;font-weight:400;margin-bottom:8px;font-size:.85rem}

.sticky-call{
  position:fixed;bottom:0;left:0;right:0;z-index:35;
  background:rgba(10,10,10,.96);border-top:1px solid var(--purple);
  padding:10px 14px;display:flex;gap:10px;align-items:center;
}
@media(min-width:900px){.sticky-call{display:none}}
.sticky-call .btn-call,.sticky-call .btn-yoyaku{flex:1;justify-content:center;padding:12px 8px;font-size:.85rem}
.sticky-call .label{display:inline}

/* ============ Block Editor compat ============ */
.wp-block-image{margin:1.5em 0}
.wp-block-quote{margin:1.5em 0;padding:14px 22px;border-left:2px solid var(--purple);font-style:italic;color:var(--text-muted)}
.wp-block-button__link{background:var(--purple) !important;color:#fff !important;border-radius:0 !important;padding:12px 28px !important;font-weight:500;letter-spacing:.05em}
.wp-block-table{border:1px solid var(--line)}
.alignwide{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);max-width:100vw}
.alignfull{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);max-width:100vw;width:100vw}

.comment-list{list-style:none;padding:0}
.comment-body{background:transparent;border:0;border-bottom:1px solid var(--line);padding:18px 0;margin-bottom:0}
.comment-author{font-weight:400;color:var(--purple-light);font-family:"Hiragino Kaku Gothic ProN",sans-serif}
.comment-meta{font-size:.78rem;color:var(--text-faint);margin-bottom:10px;letter-spacing:.05em}

.nav-links{display:flex;gap:10px;align-items:center;margin-top:36px;flex-wrap:wrap;justify-content:center}
.nav-links .page-numbers{padding:8px 14px;border:1px solid var(--line);border-radius:0;color:var(--text-muted);text-decoration:none;font-family:"Hiragino Kaku Gothic ProN",sans-serif;font-size:.85rem}
.nav-links .page-numbers.current{background:var(--purple);color:#fff;border-color:var(--purple)}
.nav-links .page-numbers:hover{border-color:var(--purple);color:var(--purple-light)}

.search-form{display:flex;gap:0}
.search-form .search-field{flex:1;padding:11px 14px;border:1px solid var(--line);border-radius:0;background:transparent;color:var(--text);font-family:"Hiragino Kaku Gothic ProN",sans-serif}
.search-form .search-submit{padding:11px 18px;border:0;border-radius:0;background:var(--purple);color:#fff;font-weight:500;cursor:pointer;letter-spacing:.05em}

@media print{
  .site-header,.site-footer,.sticky-call,.menu-toggle,.mobile-nav,.header-actions{display:none !important}
  body{background:#fff;color:#000;font-family:serif}
  a{color:#000;text-decoration:underline}
}
