@charset "UTF-8";
/* v1.2.72 stylesheet manifest */
@import url("css/common.css?v=1.2.11");
@import url("css/editor.css?v=1.2.11");
@import url("css/post-detail.css?v=1.2.11");
@import url("css/account.css?v=1.2.62");
@import url("css/responsive.css?v=1.2.72");

/* 攻略投稿側の案内CTAには、攻略依頼ページから移した青緑パレットを使う。 */
.home-request-banner{background:linear-gradient(135deg,#083f43,#126c69);box-shadow:0 20px 45px rgba(8,63,67,.18)}
.home-request-banner .section-kicker{color:#20a59c}
.home-request-banner .button.button-primary{border-color:#137d78;background:linear-gradient(135deg,#198f88,#095e61);color:#fff}
html{scrollbar-gutter:stable}
body.dialog-open{width:auto}

/* v1.2.45 スマホ固定導線を、展開式の共通サイトメニューへ変更。 */
.mobile-site-menu-panel{display:none}
@media(max-width:720px){
  .mobile-news-button.mobile-site-menu-button{border:1px solid var(--gold);background:var(--dark);color:#fff2d4;cursor:pointer;font-family:inherit}
  .mobile-site-menu-button .mobile-site-menu-icon{position:relative;display:block;width:18px;height:16px;flex:0 0 18px}
  .mobile-site-menu-button .mobile-site-menu-icon i{position:absolute;left:0;display:block;width:100%;height:2px;border-radius:2px;background:var(--gold);transition:opacity .15s ease}
  .mobile-site-menu-button .mobile-site-menu-icon i:nth-child(1){top:1px}.mobile-site-menu-button .mobile-site-menu-icon i:nth-child(2){top:7px}.mobile-site-menu-button .mobile-site-menu-icon i:nth-child(3){top:13px}
  .mobile-site-menu-button.is-open .mobile-site-menu-icon i{opacity:0}
  .mobile-site-menu-button.is-open .mobile-site-menu-icon::before,.mobile-site-menu-button.is-open .mobile-site-menu-icon::after{content:"";position:absolute;left:0;top:7px;width:18px;height:2px;border-radius:2px;background:var(--gold)}
  .mobile-site-menu-button.is-open .mobile-site-menu-icon::before{transform:rotate(45deg)}.mobile-site-menu-button.is-open .mobile-site-menu-icon::after{transform:rotate(-45deg)}
  .mobile-site-menu-panel{position:fixed;right:max(14px,env(safe-area-inset-right));bottom:calc(72px + env(safe-area-inset-bottom));z-index:90;display:grid;width:min(300px,calc(100vw - 28px));max-height:min(68vh,520px);padding:10px;overflow:auto;border:1px solid color-mix(in srgb,var(--gold) 70%,transparent);border-radius:18px;background:color-mix(in srgb,var(--dark) 96%,transparent);box-shadow:0 20px 48px rgba(0,0,0,.34);opacity:0;visibility:hidden;transform:translateY(18px) scale(.96);transform-origin:bottom right;transition:opacity .22s ease,transform .28s cubic-bezier(.2,.8,.2,1),visibility 0s linear .28s}
  .mobile-site-menu-panel.is-open{opacity:1;visibility:visible;transform:translateY(0) scale(1);transition-delay:0s}
  .mobile-site-menu-panel a{display:flex;align-items:center;min-height:46px;padding:10px 14px;border-bottom:1px solid rgba(224,165,43,.2);color:#fff2d4;text-decoration:none;font-size:13px;font-weight:800;opacity:0;transform:translateX(14px);transition:color .18s ease,background .18s ease,opacity .2s ease calc(var(--mobile-menu-index)*35ms + 50ms),transform .24s ease calc(var(--mobile-menu-index)*35ms + 50ms)}
  .mobile-site-menu-panel a:last-child{border-bottom:0}
  .mobile-site-menu-panel.is-open a{opacity:1;transform:translateX(0)}
  .mobile-site-menu-panel a:hover,.mobile-site-menu-panel a:focus-visible{border-radius:10px;background:rgba(224,165,43,.14);color:#ffd86f;outline:none}
  body.news-page .mobile-news-button.mobile-site-menu-button{display:inline-flex!important}
  body:has(.post-workspace[open]) .mobile-site-menu-panel{display:none!important}
  .post-detail-page .mobile-site-menu-panel{bottom:calc(150px + env(safe-area-inset-bottom))}
}

/* ヘッダーの相互導線は、投稿＝金、依頼＝青緑で識別する。 */
.site-header .header-nav a[href="requests.html"]{color:#137d78}
.site-header .header-nav{gap:clamp(12px,1.45vw,24px)}

/* 攻略依頼用カテゴリ選択は、ページと同じ青緑パレットへ統一する。 */
body.request-editor-mode .category-picker{--request-picker-accent:#137d78;--request-picker-rgb:19,125,120;--request-picker-line:#9fcfc9}
body.request-editor-mode .category-picker-shell{border-color:var(--request-picker-line);background:#f7fcfb}
body.request-editor-mode .category-picker-header{border-color:var(--request-picker-line);background:linear-gradient(120deg,#e1f4f1,#f8fcfb)}
body.request-editor-mode .category-picker-header .section-kicker{color:var(--request-picker-accent)}
body.request-editor-mode .category-picker-header .modal-close{border-color:var(--request-picker-accent)!important;color:var(--request-picker-accent)!important;background:#f7fcfb!important}
body.request-editor-mode .category-picker-grid{background:#f0f8f6!important}
body.request-editor-mode .category-picker-option{border-color:#b7d8d3!important;background:#f8fcfb!important}
body.request-editor-mode .category-picker-option:hover:not(:disabled),body.request-editor-mode .category-picker-option.active{border-color:var(--category-accent)!important;background:rgba(var(--category-rgb),.13)!important;color:var(--category-accent)!important;box-shadow:inset 4px 0 var(--category-accent),0 0 12px rgba(var(--category-rgb),.28)!important}
body.request-editor-mode .category-picker-icon{color:var(--category-accent);border-color:var(--category-accent)}
body.request-editor-mode .category-picker-option.active .category-picker-icon{box-shadow:0 0 10px rgba(var(--category-rgb),.36)}
body.request-editor-mode .category-picker-actions{border-color:var(--request-picker-line)!important;background:#e8f5f2!important}
body.request-editor-mode .category-picker-actions .button{border-color:var(--request-picker-accent);color:var(--request-picker-accent);background:#f8fcfb}
body.request-editor-mode .category-picker-actions .button-primary{background:linear-gradient(135deg,#198f88,#095e61);color:#fff}
html[data-theme="dark"] body.request-editor-mode .category-picker-shell{border-color:#285b5a;background:#102426}
html[data-theme="dark"] body.request-editor-mode .category-picker-header{border-color:#285b5a;background:linear-gradient(120deg,#123536,#132426)}
html[data-theme="dark"] body.request-editor-mode .category-picker-header .modal-close{border-color:#4db8ae!important;color:#8cddd5!important;background:#102729!important}
html[data-theme="dark"] body.request-editor-mode .category-picker-grid{background:#0f2022!important}
html[data-theme="dark"] body.request-editor-mode .category-picker-option{border-color:#285b5a!important;background:#142a2c!important}
html[data-theme="dark"] body.request-editor-mode .category-picker-option:hover:not(:disabled),html[data-theme="dark"] body.request-editor-mode .category-picker-option.active{border-color:var(--category-accent)!important;background:rgba(var(--category-rgb),.2)!important;color:color-mix(in srgb,var(--category-accent) 72%,white)!important;box-shadow:inset 4px 0 var(--category-accent),0 0 16px rgba(var(--category-rgb),.42)!important}
html[data-theme="dark"] body.request-editor-mode .category-picker-actions{border-color:#285b5a!important;background:#102426!important}
html[data-theme="dark"] body.request-editor-mode .category-picker-actions .button{border-color:#4db8ae;color:#8cddd5;background:#102729}
html[data-theme="dark"] body.request-editor-mode .category-picker-actions .button-primary{background:linear-gradient(135deg,#198f88,#095e61);color:#fff}

/* v1.0.47 人格詳細・投稿詳細でのイサン画像 */
.detail-identity-card.has-identity-image,.detail-party-card.has-identity-image{background-size:cover!important;background-position:center!important;color:#fff!important}
.detail-identity-card.has-identity-image>*,.detail-party-card.has-identity-image>*{position:relative;z-index:1;color:#fff!important;text-shadow:0 1px 3px #000}
.railway-party-count-shell{width:min(560px,calc(100vw - 32px));padding:28px;background:var(--paper,#fffaf0)}
.railway-party-count-shell label{display:grid;gap:8px;margin:20px 0}.railway-party-count-shell input{min-height:52px;padding:12px 16px;border:1px solid #c98d19;background:var(--paper,#fff);font:700 1.1rem inherit}
.railway-party-step-links{display:grid;gap:8px}.railway-party-step-group{display:grid;gap:4px;padding:8px 0;border-top:1px solid rgba(201,141,25,.25)}.railway-party-step-group>small{padding-left:12px;color:#c98d19;letter-spacing:.14em}.railway-party-step-group .step-link{width:100%}
html[data-theme="dark"] .railway-party-count-shell{background:#171b21;color:#f5eee0}

/* ヒーロー操作は、依頼・投稿の下に検索CTAを置く2段構成にする。 */
.home-hero .hero-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:min(100%,520px)}
.home-hero .hero-actions .button{display:flex;align-items:center;justify-content:center;text-align:center}
.home-hero .hero-actions .hero-search-action{grid-column:1/-1;min-height:50px}
.hero-actions .hero-auth-required-action,.request-hero-actions .hero-auth-required-action{flex-direction:column;gap:2px;line-height:1.25}
.hero-auth-required-action small{display:block;color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.04em}
.hero-auth-required-action small[hidden]{display:none}
@media(max-width:600px){
  .hero-actions{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:10px!important}
  .hero-actions .button{width:100%!important;min-width:0!important;margin:0!important;padding:12px 7px!important;text-align:center!important;font-size:11px!important;white-space:nowrap!important}
  .hero-actions .hero-search-action{grid-column:1/-1;display:flex!important;align-items:center!important;justify-content:center!important;min-height:50px;padding:14px!important;font-size:13px!important}
  .submit-banner{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:18px!important;margin:36px auto 52px!important;padding:24px 20px!important;align-items:start!important}
  .submit-banner>div{min-width:0!important}
  .submit-banner h2{font-size:clamp(26px,8vw,34px)!important;line-height:1.45!important;overflow-wrap:anywhere!important}
  .submit-banner p:not(.section-kicker){margin-bottom:0!important;line-height:1.65!important}
  .submit-banner .button{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-height:48px!important;margin:0!important;padding:12px 14px!important;text-align:center!important}
}
