/* CSS architecture: common/base rules are the source of truth; responsive media queries
   only override properties that genuinely differ by viewport. Keep breakpoint-specific
   changes local to each component to avoid PC/mobile cross-impact. */
.msc-page{--msc-section-gap:20px;--msc-section-title-size:26px;--msc-subsection-title-size:18px;background:#fff;}.msc-header{text-align:center;padding:20px 0 36px;border-bottom:1px solid #eee;}.msc-address{color:#555;margin:0;}.msc-card{margin-top:var(--msc-section-gap);padding:30px 24px;border:1px solid #e5e5e5;border-radius:12px;}.msc-vote-box{text-align:center;}.msc-card h2{font-size:var(--msc-section-title-size);margin-top:0;}
.msc-vote-buttons{display:flex;gap:14px;justify-content:center;margin:14px auto 20px;}.msc-vote-button{flex:1;max-width:320px;padding:20px;border-radius:10px;font-size:20px;font-weight:700;cursor:pointer;border:1px solid transparent;}.msc-vote-button span{display:block;font-size:30px;margin-bottom:5px;}.msc-noise{background:#c94b4b;color:#fff;border-color:#b23d3d;}.msc-noise:hover{background:#b84242;}.msc-quiet{background:#eef2f5;color:#27343d;border-color:#cfd8df;}.msc-quiet:hover{background:#e2e9ee;}.msc-vote-button:disabled{opacity:.65;cursor:default;}.msc-result{max-width:640px;margin:22px auto 0;text-align:left;}.msc-bar{height:11px;background:#e9ecef;border-radius:99px;overflow:hidden;margin-top:7px;}.msc-bar span{display:block;height:100%;background:#c94b4b;}.msc-total{text-align:center;margin-top:15px;margin-bottom:6px;color:#555;}.msc-small-sample{text-align:center;margin-top:0;font-size:13px;color:#777;}.msc-vote-message{text-align:center;min-height:1.4em;}.msc-comment{padding:22px 0;border-bottom:1px solid #e7e7e7;}.msc-comment-meta{display:flex;justify-content:space-between;gap:15px;font-size:14px;color:#666;}.msc-comment-body{font-size:16px;line-height:1.8;margin-top:12px;}.msc-comment-md .msc-comment-body{font-size:17px;}.msc-comment-lg .msc-comment-body{font-size:18px;font-weight:500;}.msc-comment-xl .msc-comment-body{font-size:19px;font-weight:600;}.msc-comment-actions{display:flex;gap:8px;align-items:center;margin-top:14px;}.msc-comment-actions button{border:1px solid #ddd;background:#fff;border-radius:20px;padding:6px 12px;cursor:pointer;}.msc-comment-actions .msc-report{margin-left:auto;color:#777;border:0;background:transparent;}.msc-comment-message{font-size:13px;color:#666;}.msc-comment-form{margin-top:34px;}.msc-comment-form label{display:block;font-weight:600;margin-bottom:6px;}.msc-comment-form input{width:100%;max-width:100%;padding:10px;border:1px solid #ccc;border-radius:6px;}
.msc-comment-form textarea{width:100%;max-width:100%;padding:10px;border:1px solid #ccc;border-radius:6px;}.msc-comment-form .submit{border:0;border-radius:8px;padding:12px 22px;font-weight:700;cursor:pointer;}.msc-no-comments{color:#777;}@media(max-width:600px){.msc-page{--msc-section-gap:16px;--msc-section-title-size:21px;--msc-subsection-title-size:17px;}.msc-vote-buttons{flex-direction:column;}.msc-vote-button{max-width:none;}.msc-card{padding:24px 16px;}.msc-comment-meta{display:block;}.msc-comment-meta time{display:block;margin-top:3px;}}


.msc-comment-form>h3{margin:24px 0 14px;font-size:var(--msc-subsection-title-size);line-height:1.5;font-weight:700;}
.msc-review-form{margin-top:18px;}
.msc-review-form label{display:block;font-weight:600;margin-bottom:6px;}
.msc-review-form input{width:100%;max-width:100%;padding:11px 12px;border:1px solid #cfd5d8;border-radius:7px;background:#fff;}
.msc-review-form textarea{width:100%;max-width:100%;padding:11px 12px;border:1px solid #cfd5d8;background:#fff;}
.msc-review-submit{border-radius:8px;padding:12px 20px;}
.msc-review-message{min-height:1.4em;margin-top:10px;}

/* Mansion search results */
/* Shared search-form base. Search-result-page layout lives in search-results.css. */
.msc-search-form{display:flex;gap:12px;margin-bottom:32px;}
.msc-search-form input{flex:1;min-width:0;padding:13px 16px;border:1px solid #cfd6dc;border-radius:6px;font-size:16px;}
.msc-search-form button{padding:12px 30px;border:0;border-radius:6px;background:var(--msc-blue,#087bb5);color:#fff;font-weight:700;font-size:16px;}
@media(max-width:600px){.msc-search-form{gap:8px;}.msc-search-form button{padding-left:22px;padding-right:22px;}}

/* Shared site header.  It has one desktop and one compact layout. */
.site-header-logo{display:none!important;}
.msc-global-brand{position:relative;z-index:99990;background:#fff;border-bottom:1px solid #dce9ed;}
.msc-global-brand-inner{display:flex;align-items:center;gap:10px;box-sizing:border-box;width:100%;max-width:1120px;min-height:64px;margin:0 auto;padding:12px 24px;}
.msc-brand-link{display:inline-flex;align-items:center;gap:9px;min-width:0;color:#0b2b3e!important;text-decoration:none!important;font-size:21px;font-weight:700;line-height:1.25;}
.msc-brand-link:hover{text-decoration:none;opacity:.85;}
.msc-brand-icon{display:block;width:34px;height:34px;flex:0 0 34px;border-radius:50%;object-fit:cover;}
.msc-header-search{display:flex;flex:0 0 44px;align-items:center;justify-content:center;width:44px;height:44px;margin-left:auto;color:#0b2b3e!important;}
.msc-header-search svg{width:30px;height:30px;}
.msc-header-search:focus-visible{outline:3px solid #0c82b9;outline-offset:4px;}
.msc-mobile-menu-toggle{display:none;border:0;}
.msc-mobile-menu{display:none;}

@media(max-width:1000px){
  /* Core owns the compact menu; Lightning's empty drawer remains hidden. */
  .vk-mobile-nav-menu-btn,.vk-mobile-nav{display:none!important;}
  html.msc-menu-lock,body.msc-menu-lock{overflow:hidden!important;}
  .msc-global-brand-inner{min-height:60px;padding:9px 12px;gap:8px;}
  .msc-mobile-menu-toggle{display:flex;flex:0 0 32px;align-items:center;justify-content:center;flex-direction:column;width:32px;height:32px;padding:4px;border:0;background:#fff;gap:5px;cursor:pointer;}
  .msc-mobile-menu-toggle span{display:block;width:24px;height:2px;border-radius:2px;background:#0b2b3e;transition:transform .18s ease,opacity .18s ease;}
  .msc-global-brand.is-menu-open .msc-mobile-menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg);}
  .msc-global-brand.is-menu-open .msc-mobile-menu-toggle span:nth-child(2){opacity:0;}
  .msc-global-brand.is-menu-open .msc-mobile-menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
  .msc-brand-link{flex:1;gap:7px;min-width:0;overflow:hidden;font-size:clamp(14px,4vw,22px);white-space:nowrap;}
  .msc-brand-link span{overflow:hidden;text-overflow:clip;white-space:nowrap;}
  .msc-brand-icon{width:32px;height:32px;flex-basis:32px;}
  .msc-header-search{flex-basis:32px;width:32px;height:32px;}
  .msc-header-search svg{width:24px;height:24px;}
  .msc-mobile-menu{position:absolute;top:100%;left:0;right:0;width:100%;min-height:calc(100vh - 60px);overflow:auto;border-top:1px solid #eef0f2;background:#fff;box-shadow:0 7px 14px rgba(39,52,61,.06);}
  .msc-global-brand.is-menu-open .msc-mobile-menu{display:block;}
  .msc-mobile-menu-inner{width:100%;}
  .msc-mobile-menu a{display:flex;align-items:center;gap:16px;min-height:64px;padding:14px 22px;border-bottom:1px solid #e8ecef;background:#fff;color:#27343d!important;text-decoration:none!important;font-size:17px;font-weight:500;}
  .msc-mobile-menu a:active{background:#f7f9fa;}
  .msc-mobile-menu-icon{display:inline-flex;flex:0 0 28px;align-items:center;justify-content:center;width:28px;color:#27343d;font-size:23px;line-height:1;}
}

@media(max-width:360px){
  .msc-global-brand-inner{padding-right:10px;padding-left:10px;gap:6px;}
  .msc-mobile-menu-toggle{flex-basis:30px;width:30px;height:30px;}
  .msc-brand-link{gap:5px;font-size:16px;}
  .msc-brand-icon{width:28px;height:28px;flex-basis:28px;}
  .msc-header-search{flex-basis:30px;width:30px;height:30px;}
}

/* 0.5.9: keep the horizontal viewport identical on short search-result pages.
   Without a vertical scrollbar, a centered header shifts by about half the scrollbar width. */
html{scrollbar-gutter:stable;}

.msc-area-page{background:#fff;}

/* 0.6.4: user mansion registration */
.msc-register-page{background:#fff;}.msc-register-lead{margin:0 0 28px;color:#666;}.msc-register-card{max-width:760px;padding:28px;border:1px solid #d5dde3;border-radius:12px;background:#fff;}.msc-register-field{margin-bottom:20px;}.msc-register-field label{display:block;margin-bottom:7px;font-weight:700;}.msc-register-field label span{margin-left:7px;font-size:12px;color:#b32d2e;}.msc-register-field input{width:100%;padding:13px 14px;border:1px solid #cfd6dc;border-radius:7px;}
/* 0.13.74: 検索0件・検索結果からの所在地選択・直接登録で共通利用 */
.msc-register-field select{box-sizing:border-box;width:100%;min-height:48px;padding:13px 14px;border:1px solid #cbdfe5;border-radius:10px;background:#fff;color:#27343d;font-size:16px;}
.msc-register-field select:focus{outline:2px solid #087bb5;outline-offset:2px;}
.msc-municipality-field{position:relative;}
.msc-municipality-suggestions{position:absolute;z-index:20;left:0;right:0;top:100%;max-height:260px;overflow-y:auto;border:1px solid #cbdfe5;border-radius:10px;background:#fff;box-shadow:0 8px 24px rgba(24,55,75,.14);}
.msc-municipality-option{display:block;width:100%;padding:11px 13px;border:0;border-bottom:1px solid #edf2f5;background:#fff;color:#27343d;text-align:left;font-size:15px;cursor:pointer;}
.msc-municipality-option:last-child{border-bottom:0;}
.msc-municipality-option:hover,.msc-municipality-option:focus{background:#f3f9fc;outline:0;}
.msc-register-field input:disabled{background:#f3f4f5;color:#8b9297;cursor:not-allowed;}
.msc-register-name-note,.msc-register-locality-note{margin:7px 2px 0;color:#667985;font-size:12px;line-height:1.6;}
.msc-register-name-correction[hidden]{display:none!important;}
.msc-register-region-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;}
.msc-register-field input,.msc-register-field select,.msc-register-field textarea,.msc-review-form input,.msc-review-form textarea,.msc-comment-form input,.msc-comment-form textarea,.msc-contact-field input,.msc-contact-field select,.msc-contact-field textarea,.msc-search-form input,.msc-comment-sort select{font-size:16px;}
.msc-register-name-field.is-note-visible .msc-register-name-note{display:block;}
@media(max-width:600px){.msc-register-region-grid{gap:12px;}}
.msc-register-submit{border-radius:8px;padding:12px 18px;cursor:pointer;}
.msc-duplicate-force{border-radius:8px;padding:12px 18px;cursor:pointer;}
.msc-duplicate-back{border-radius:8px;padding:12px 18px;cursor:pointer;}.msc-register-submit{background:var(--msc-blue,#087bb5);color:#fff;}
.msc-duplicate-force{background:var(--msc-blue,#087bb5);color:#fff;}.msc-duplicate-back{border:1px solid #cfd6dc;background:#fff;color:#27343d;}.msc-register-message{min-height:1.5em;margin:12px 0 0;color:#555;}.msc-duplicate-box h2{font-size:23px;margin:0 0 10px;}.msc-duplicate-list{display:grid;gap:10px;margin:18px 0;}.msc-duplicate-item{display:block;padding:15px 16px;border:1px solid #d5dde3;border-radius:9px;color:#27343d;text-decoration:none;}.msc-duplicate-item:hover{border-color:#8db6d4;text-decoration:none;}.msc-duplicate-item strong{display:block;}
.msc-duplicate-item span{display:block;margin-top:5px;color:#666;font-size:14px;}.msc-duplicate-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px;}@media(max-width:600px){.msc-register-card{padding:22px 16px;}.msc-duplicate-actions{display:grid;}}



/* 0.7.0: review sorting */
.msc-comment-sort{display:flex;justify-content:flex-end;align-items:center;gap:8px;margin:18px 0 4px;}.msc-comment-sort label{font-size:14px;font-weight:600;color:#555;}.msc-comment-sort select{width:auto;min-width:120px;padding:7px 30px 7px 10px;border:1px solid #d5dce2;border-radius:7px;background:#fff;color:#27343d;font-size:14px;}.msc-comment-sort button{padding:7px 10px;border:1px solid #d5dce2;border-radius:7px;background:#fff;cursor:pointer;}@media(max-width:600px){.msc-comment-sort{justify-content:flex-end;margin-top:14px;}.msc-comment-sort select{min-width:112px;}}


/* 0.7.3: contact form */
.msc-contact-wrap{max-width:760px;margin:20px 0 0;}
.msc-contact-form{padding:26px;border:1px solid #d5dde3;border-radius:12px;background:#fff;}
.msc-contact-field{margin-bottom:20px;}
.msc-contact-field label{display:block;margin-bottom:7px;font-weight:700;}
.msc-contact-field label span{margin-left:6px;font-size:12px;color:#b32d2e;}
.msc-contact-field label small{margin-left:6px;font-size:12px;font-weight:400;color:#777;}
.msc-contact-field input{width:100%;max-width:100%;padding:12px 13px;border:1px solid #cfd6dc;border-radius:7px;background:#fff;}
.msc-contact-field select{width:100%;max-width:100%;padding:12px 13px;border:1px solid #cfd6dc;border-radius:7px;background:#fff;}
.msc-contact-field textarea{width:100%;max-width:100%;padding:12px 13px;border:1px solid #cfd6dc;border-radius:7px;background:#fff;}
.msc-contact-field textarea{resize:vertical;min-height:180px;}
.msc-contact-submit{border-radius:8px;padding:12px 24px;background:var(--msc-blue,#087bb5);color:#fff;font-size:16px;cursor:pointer;}
.msc-contact-submit:hover{opacity:.92;}
.msc-contact-note{margin:0 0 16px;color:#777;font-size:13px;}
.msc-contact-notice{margin:0 0 16px;padding:13px 15px;border-radius:8px;font-weight:600;}
.msc-contact-notice.is-success{background:#f0f8f3;border:1px solid #b9dcc5;color:#27623b;}
.msc-contact-notice.is-error{background:#fff3f3;border:1px solid #e7bbbb;color:#8b2929;}
.msc-contact-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important;}
@media(max-width:600px){.msc-contact-form{padding:22px 16px;}}

/* 0.7.7: content polish */
.msc-review-caution{margin:-2px 0 14px;color:#777;font-size:13px;line-height:1.7;}



/* 0.9.6: optional detail survey shown only after a new "うるさい" vote */
.msc-noise-survey{max-width:680px;margin:26px auto 0;padding:22px;border:1px solid #eadfce;background:#fffaf2;border-radius:12px;text-align:left;}.msc-survey-head{display:flex;gap:10px;align-items:center;justify-content:space-between;font-size:18px;}.msc-survey-head span{font-size:12px;font-weight:700;background:#f0e3cf;padding:4px 8px;border-radius:999px;color:#6d5738;}.msc-survey-sub{font-size:13px;color:#777;margin:7px 0 18px;}.msc-survey-step>p{font-weight:700;margin:0 0 12px;}.msc-survey-options{display:flex;flex-wrap:wrap;gap:9px;}.msc-survey-options button{border:1px solid #d8d8d8;background:#fff;border-radius:999px;padding:9px 14px;cursor:pointer;font-size:14px;}.msc-survey-options button:hover{background:#f5f5f5;}.msc-survey-options button:disabled{opacity:.6;cursor:default;}.msc-survey-skip{display:block;margin:18px auto 0 0;border:0;background:transparent;color:#777;text-decoration:underline;cursor:pointer;}.msc-survey-message{min-height:1.2em;font-size:13px;color:#777;margin:8px 0 0;}@media(max-width:600px){.msc-noise-survey{padding:18px 14px;}.msc-survey-options{gap:8px;}.msc-survey-options button{padding:9px 12px;}}

/* 0.9.8: detailed survey aggregation */
.msc-detail-total{font-weight:700;margin:0 0 8px;}
.msc-detail-hidden{color:#666;}.msc-detail-group{margin-top:24px;}.msc-detail-group h3{font-size:17px;margin:0 0 12px;}.msc-detail-item{margin:0 0 12px;}.msc-detail-row{display:flex;justify-content:space-between;gap:12px;font-size:14px;}.msc-detail-row strong{white-space:nowrap;}.msc-detail-bar{height:8px;background:#eee;border-radius:999px;overflow:hidden;margin-top:6px;}.msc-detail-bar span{display:block;height:100%;background:#6f8f8b;border-radius:999px;}

/* 0.9.9: donut charts for compact survey results */
.msc-donut-wrap{display:flex;align-items:center;gap:28px;margin-top:12px;}
.msc-donut{width:154px;height:154px;border-radius:50%;position:relative;flex:0 0 154px;display:flex;align-items:center;justify-content:center;}
.msc-donut-hole{width:88px;height:88px;border-radius:50%;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.15;box-shadow:0 0 0 1px rgba(0,0,0,.03);}
.msc-donut-hole strong{font-size:24px;}
.msc-donut-hole span{font-size:12px;color:#777;margin-top:4px;}
.msc-donut-legend{list-style:none!important;margin:0!important;padding:0!important;flex:1;min-width:0;}
.msc-donut-legend li{display:grid;grid-template-columns:12px minmax(0,1fr) auto;align-items:center;gap:8px;padding:6px 0;margin:0!important;font-size:14px;}
.msc-donut-legend strong{white-space:nowrap;font-size:13px;}
.msc-donut-key{width:10px;height:10px;border-radius:50%;display:block;}
@media(max-width:520px){
  .msc-donut-wrap{gap:18px;align-items:flex-start;}
  .msc-donut{width:118px;height:118px;flex-basis:118px;}
  .msc-donut-hole{width:68px;height:68px;}
  .msc-donut-hole strong{font-size:20px;}
  .msc-donut-legend li{font-size:13px;grid-template-columns:10px minmax(0,1fr);gap:5px 7px;}
  .msc-donut-legend strong{grid-column:2;font-size:12px;}
  .msc-donut-key{width:9px;height:9px;}
}

/* 0.10.7: 複数選択できる質問を明示 */
.msc-multi-label{font-size:.78em;font-weight:400;opacity:.68;white-space:nowrap;}
body.msc-utility-page .msc-utility-content{width:100%;margin:0;padding:0;}

/* 0.10.23: one horizontal grid for the whole site.
   Desktop content aligns to the site-name TEXT start ("マ"), not the icon.
   Header container is 1200px; icon 38px + 9px gap = 47px.
   Therefore shared content width = 1200 - 94 = 1106px. */

@media(min-width:1233px){
  /* Plugin/custom page wrappers. */
  .msc-container{box-sizing:border-box!important;}
.msc-search-wrap{box-sizing:border-box!important;}
.msc-area-wrap{box-sizing:border-box!important;}
.msc-register-wrap{box-sizing:border-box!important;}
body.msc-utility-page .msc-utility-layout .msc-utility-inner{box-sizing:border-box!important;}
/* Normal WordPress/Lightning content, including the homepage. */
  body .site-body .container{box-sizing:border-box!important;width:100%!important;max-width:1106px!important;margin-left:auto!important;margin-right:auto!important;padding-left:0!important;padding-right:0!important;}
}

/* Smaller screens keep a single common gutter. */
@media(max-width:1232px){
  .msc-container{box-sizing:border-box!important;}
.msc-search-wrap{box-sizing:border-box!important;}
.msc-area-wrap{box-sizing:border-box!important;}
.msc-register-wrap{box-sizing:border-box!important;}
body.msc-utility-page .msc-utility-layout .msc-utility-inner{box-sizing:border-box!important;}
body .site-body .container{box-sizing:border-box!important;width:100%!important;max-width:none!important;margin-left:auto!important;margin-right:auto!important;padding-left:16px!important;padding-right:16px!important;}
}

@media(max-width:360px){
body .site-body .container{padding-left:10px!important;padding-right:10px!important;}
}

/* 0.10.29: separate survey navigation from selectable choices to prevent mis-taps. */
.msc-survey-next{display:block;min-width:112px;min-height:44px;margin:22px 0 0 auto;padding:10px 20px;border-radius:8px;background:var(--msc-blue,#087bb5);color:#fff;font-size:15px;line-height:1.4;cursor:pointer;}
.msc-survey-next::after{content:" →";}
.msc-survey-next:hover{filter:brightness(.96);}
.msc-survey-next:focus-visible{outline:3px solid rgba(51,127,186,.28);outline-offset:3px;}
.msc-survey-skip{margin-top:28px;}
@media(max-width:600px){
  .msc-survey-next{min-width:116px;min-height:46px;margin-top:22px;padding:11px 20px;font-size:15px;}
  .msc-survey-skip{margin-top:30px;}
}

/* 0.10.30: make selected multi-choice survey options visually unmistakable. */
.msc-survey-options button.is-selected{border-color:var(--msc-blue,#087bb5)!important;background:var(--msc-blue,#087bb5)!important;color:#fff!important;font-weight:700;box-shadow:0 0 0 2px rgba(8,123,181,.12);}
.msc-survey-options button[aria-pressed="true"]{border-color:var(--msc-blue,#087bb5)!important;background:var(--msc-blue,#087bb5)!important;color:#fff!important;font-weight:700;box-shadow:0 0 0 2px rgba(8,123,181,.12);}
.msc-survey-options button.is-selected:hover{background:var(--msc-blue-hover,#066b9e)!important;}
.msc-survey-options button[aria-pressed="true"]:hover{background:var(--msc-blue-hover,#066b9e)!important;}


/* 0.10.43: individual mansion pages — inline primary mansion search. */

/* 0.15.288: トップと全騒音記事の検索フォームを同一スタイルに統一。
 * 記事には枠・見出し・説明文を設けず、フォームのみ配置する。 */
:is(.msc-home-design,.msc-noise-article-content) .msc-unified-search{
  display:flex;align-items:center;box-sizing:border-box;min-width:0;width:100%;
  gap:7px;height:46px;margin:0;padding:4px 5px 4px 12px;
  font-family:-apple-system,BlinkMacSystemFont,"Noto Sans JP","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;
  background:#fff;border:1px solid #d6e3e7;border-radius:60px;
  box-shadow:0 5px 20px #16382212;
}
:is(.msc-home-design,.msc-noise-article-content) .msc-unified-search>svg{display:block;width:22px;height:22px;flex:0 0 22px;color:#0b2b3e;}
:is(.msc-home-design,.msc-noise-article-content) .msc-unified-search input[type="search"]{
  box-sizing:border-box;flex:1;min-width:0;width:100%;height:36px;min-height:0;max-height:none;
  margin:0;padding:5px 0;border:0;border-radius:0;background:transparent;box-shadow:none;
  color:#0b2b3e;font-family:inherit;font-size:16px;line-height:normal;outline-offset:2px;
}
:is(.msc-home-design,.msc-noise-article-content) .msc-unified-search input[type="search"]::placeholder{color:#909fa8;opacity:1;}
:is(.msc-home-design,.msc-noise-article-content) .msc-unified-search button{
  display:flex;align-items:center;justify-content:center;box-sizing:border-box;
  flex:0 0 64px;width:64px;height:36px;min-height:0;max-height:none;
  margin:0;padding:0;border:0;border-radius:50px;background:var(--msc-blue,#087bb5);color:#fff;
  box-shadow:none;font-family:inherit;font-size:17px;font-weight:700;line-height:1;white-space:nowrap;cursor:pointer;
}
:is(.msc-home-design,.msc-noise-article-content) .msc-unified-search input[type="search"]:focus{outline:none;box-shadow:none;}
:is(.msc-home-design,.msc-noise-article-content) .msc-unified-search:focus-within{border-color:#1497d4;box-shadow:0 0 0 3px rgba(20,151,212,.2);}
:is(.msc-home-design,.msc-noise-article-content) .msc-unified-search button:focus-visible{outline:3px solid #0c82b9;outline-offset:4px;}
.msc-noise-article-content .msc-article-search-guide{
  box-sizing:border-box;width:100%;margin:26px 0 28px;padding:0;
  border:0;background:transparent;box-shadow:none;text-align:left;
}
.msc-noise-article-page .msc-article-bottom-home{margin:30px 0 12px;text-align:center;}
@media(min-width:1001px){
  :is(.msc-home-design,.msc-noise-article-content) .msc-unified-search{height:50px;padding:4px 5px 4px 15px;gap:10px;}
  :is(.msc-home-design,.msc-noise-article-content) .msc-unified-search>svg{width:24px;height:24px;flex-basis:24px;}
  :is(.msc-home-design,.msc-noise-article-content) .msc-unified-search input[type="search"]{height:40px;padding:0;}
  :is(.msc-home-design,.msc-noise-article-content) .msc-unified-search button{height:40px;flex-basis:80px;width:80px;font-size:16px;padding:0 14px;}
}
@media(max-width:600px){
  .msc-noise-article-content .msc-article-search-guide{margin:22px 0 25px;}
}
@media(max-width:350px){
  :is(.msc-home-design,.msc-noise-article-content) .msc-unified-search{gap:5px;padding-left:10px;}
  :is(.msc-home-design,.msc-noise-article-content) .msc-unified-search>svg{width:18px;height:18px;flex-basis:18px;}
  :is(.msc-home-design,.msc-noise-article-content) .msc-unified-search button{flex-basis:56px;width:56px;}
}

/* 0.10.45: 投票と口コミの相互参加を自然に促す小さな導線 */
.msc-action-nudge{margin:24px 0 0;padding:16px 18px;border:1px solid #dfe7e7;background:#f7fbfb;border-radius:10px;display:flex;align-items:center;justify-content:space-between;gap:16px}.msc-action-nudge[hidden]{display:none!important}.msc-action-nudge strong{font-size:15px;line-height:1.6}.msc-action-nudge button{flex:0 0 auto;border-radius:8px;background:var(--msc-blue,#087bb5);color:#fff;cursor:pointer}.msc-action-nudge button:hover{background:var(--msc-blue-hover,#066b9e);opacity:1}@media(max-width:600px){.msc-action-nudge{align-items:stretch;flex-direction:column}.msc-action-nudge button{width:100%}}

/* Legacy fallback for homepage search sizing; canonical shared UI rules follow below. */
body.home .wp-block-search__inside-wrapper input[type="search"]{height:44px;font-size:16px;}
body.home .wp-block-search__inside-wrapper button{height:44px;font-size:16px;}
@media(max-width:600px){
  body.home .wp-block-search__inside-wrapper input[type="search"]{height:46px;font-size:16px;}
  body.home .wp-block-search__inside-wrapper button{height:46px;font-size:16px;}
}

/* 0.10.53: final public-UI consistency pass.
   Same-role controls share sizing/typography; specialized controls (votes, chips,
   reactions and menu) keep their distinct hierarchy. Mobile prioritizes legibility
   and tap targets over the compact desktop hierarchy. */
:root{
  --msc-ui-blue:var(--msc-blue,#087bb5);
  --msc-ui-blue-hover:var(--msc-blue-hover,#066b9e);
  --msc-ui-text:#27343d;
  --msc-ui-border:#cfd6dc;
  --msc-ui-field-radius:7px;
  --msc-ui-button-radius:8px;
  --msc-ui-primary-h:44px;
  --msc-ui-primary-font:16px;
  --msc-ui-action-h:44px;
  --msc-ui-action-font:15px;
}

/* User-entry fields: explicit sizing avoids theme-dependent differences. */
.msc-register-field input{
  box-sizing:border-box;
  font-size:16px;
}
.msc-contact-field input{
  box-sizing:border-box;
  font-size:16px;
}
.msc-contact-field select{
  box-sizing:border-box;
  font-size:16px;
}
.msc-contact-field textarea{
  box-sizing:border-box;
  font-size:16px;
}
.msc-review-form input{
  box-sizing:border-box;
  font-size:16px;
}
.msc-review-form textarea{
  box-sizing:border-box;
  font-size:16px;
}
.msc-comment-sort select{
  box-sizing:border-box;
  font-size:16px;
}
.msc-register-field input{
  min-height:48px;
}
.msc-review-form input{
  min-height:48px;
}
.msc-contact-field input{
  min-height:48px;
}
.msc-contact-field select{
  min-height:48px;
}
.msc-review-form textarea{padding:12px 13px;border-radius:7px;line-height:1.65;}

/* Main standalone actions: one visual family. */
.msc-register-submit{
  box-sizing:border-box;
  min-height:var(--msc-ui-action-h);
  border-radius:var(--msc-ui-button-radius);
  font-size:var(--msc-ui-action-font);
  line-height:1.35;
  font-weight:700;
}
.msc-duplicate-force{
  box-sizing:border-box;
  min-height:var(--msc-ui-action-h);
  border-radius:var(--msc-ui-button-radius);
  font-size:var(--msc-ui-action-font);
  line-height:1.35;
  font-weight:700;
}
.msc-contact-submit{
  box-sizing:border-box;
  min-height:var(--msc-ui-action-h);
  border-radius:var(--msc-ui-button-radius);
  font-size:var(--msc-ui-action-font);
  line-height:1.35;
  font-weight:700;
}
.msc-review-submit{
  box-sizing:border-box;
  min-height:var(--msc-ui-action-h);
  border-radius:var(--msc-ui-button-radius);
  font-size:var(--msc-ui-action-font);
  line-height:1.35;
  font-weight:700;
}
.msc-survey-next{
  box-sizing:border-box;
  min-height:var(--msc-ui-action-h);
  border-radius:var(--msc-ui-button-radius);
  font-size:var(--msc-ui-action-font);
  line-height:1.35;
  font-weight:700;
}
.msc-action-nudge button{
  box-sizing:border-box;
  min-height:var(--msc-ui-action-h);
  border-radius:var(--msc-ui-button-radius);
  font-size:var(--msc-ui-action-font);
  line-height:1.35;
  font-weight:700;
}
.msc-register-submit{
  border:0;
  background:var(--msc-ui-blue);
  color:#fff!important;
}
.msc-duplicate-force{
  border:0;
  background:var(--msc-ui-blue);
  color:#fff!important;
}
.msc-contact-submit{
  border:0;
  background:var(--msc-ui-blue);
  color:#fff!important;
}
.msc-review-submit{
  border:0;
  background:var(--msc-ui-blue);
  color:#fff!important;
}
.msc-survey-next{
  border:0;
  background:var(--msc-ui-blue);
  color:#fff!important;
}
.msc-action-nudge button{
  border:0;
  background:var(--msc-ui-blue);
  color:#fff!important;
}
.msc-register-submit:hover{
  background:var(--msc-ui-blue-hover);
  color:#fff!important;
  opacity:1;
}
.msc-duplicate-force:hover{
  background:var(--msc-ui-blue-hover);
  color:#fff!important;
  opacity:1;
}
.msc-contact-submit:hover{
  background:var(--msc-ui-blue-hover);
  color:#fff!important;
  opacity:1;
}
.msc-review-submit:hover{
  background:var(--msc-ui-blue-hover);
  color:#fff!important;
  opacity:1;
}
.msc-survey-next:hover{
  background:var(--msc-ui-blue-hover);
  color:#fff!important;
  opacity:1;
}
.msc-action-nudge button:hover{
  background:var(--msc-ui-blue-hover);
  color:#fff!important;
  opacity:1;
}
.msc-register-submit{padding:10px 18px;}
.msc-duplicate-force{padding:10px 18px;}
.msc-contact-submit{padding:10px 24px;}
.msc-review-submit{padding:10px 20px;cursor:pointer;}
.msc-action-nudge button{padding:10px 15px;}

/* Secondary standalone action. */
.msc-duplicate-back{
  box-sizing:border-box;
  min-height:44px;
  padding:10px 18px;
  border-radius:var(--msc-ui-button-radius);
  font-size:15px;
  line-height:1.35;
  font-weight:700;
}

/* Homepage primary search control sizing. */
body.home .wp-block-search__inside-wrapper input[type="search"]{
  box-sizing:border-box;
  height:var(--msc-ui-primary-h);
  font-size:var(--msc-ui-primary-font);
  line-height:1.2;
}
body.home .wp-block-search__inside-wrapper button{
  box-sizing:border-box;
  height:var(--msc-ui-primary-h);
  font-size:var(--msc-ui-primary-font);
  line-height:1.2;
}
body.home .wp-block-search__inside-wrapper input[type="search"]{
  padding:9px 14px;
}
body.home .wp-block-search__inside-wrapper button{
  padding:9px 28px;
}

/* Individual mansion footer search stays compact on desktop only. */

/* Specialized compact controls retain their role but get predictable type. */
.msc-comment-actions button{font-size:14px;line-height:1.3;}
.msc-comment-sort button{font-size:14px;line-height:1.3;}
.msc-survey-options button{line-height:1.35;}

@media(max-width:600px){
  :root{
    --msc-ui-primary-h:46px;
    --msc-ui-action-h:46px;
    --msc-ui-action-font:16px;
  }

  /* Never present editable controls below 16px on phones. */
  .msc-register-field input{
    font-size:16px;
  }
.msc-contact-field input{
    font-size:16px;
  }
.msc-contact-field select{
    font-size:16px;
  }
.msc-contact-field textarea{
    font-size:16px;
  }
.msc-review-form input{
    font-size:16px;
  }
.msc-review-form textarea{
    font-size:16px;
  }
.msc-comment-sort select{
    font-size:16px;
  }

  .msc-register-field input{
    min-height:48px;
  }
.msc-contact-field input{
    min-height:48px;
  }
.msc-contact-field select{
    min-height:48px;
  }
.msc-review-form input{
    min-height:48px;
  }

  /* Footer search is visually secondary on PC, but still finger-friendly on phones. */
  
  
  

  /* Survey/reaction controls: readable and comfortably tappable without becoming primary CTAs. */
  .msc-survey-options button{
    min-height:42px;
    padding:9px 13px;
    font-size:15px;
  }
  .msc-comment-actions button{
    min-height:38px;
    padding:8px 12px;
    font-size:14px;
  }
  .msc-comment-sort select{min-height:42px;}

  /* Small supporting copy stays secondary but no longer looks undersized on phones. */

.msc-contact-note{font-size:13px;line-height:1.6;}
.msc-review-caution{font-size:13px;line-height:1.6;}
.msc-survey-sub{font-size:13px;line-height:1.6;}
.msc-survey-message{font-size:13px;line-height:1.6;}
}

/* 0.10.59: site-specific 404 recovery page. */
.msc-404-page{background:#fff;}
.msc-404-title{color:#292929;}
.msc-404-lead{margin:0 0 28px;color:#666;line-height:1.8;}
.msc-404-search-form{max-width:760px;margin-bottom:0;}
.msc-404-page .msc-mansion-home-action{margin-top:48px;}
@media(min-width:1233px){.msc-404-wrap{box-sizing:border-box!important;}}
@media(max-width:1232px){.msc-404-wrap{box-sizing:border-box!important;}}
@media(max-width:600px){.msc-404-lead br{display:none;}}
/* 0.10.71 地域検索：全国共通のメンテナンス中表示 */
.msc-mobile-menu-disabled{display:flex;align-items:center;gap:12px;padding:13px 16px;color:#8a949b;cursor:default;background:#f7f8f9;}


/* 0.10.71 地域検索メンテナンス画面 */
.msc-area-maintenance{max-width:760px;margin:0 auto;padding:22px 0 60px;}
.msc-area-maintenance-box{margin-top:18px;padding:28px;border:1px solid #dfe5e9;border-radius:14px;background:#f8fafb;color:#34424b;}
.msc-area-maintenance-box>strong{display:block;font-size:20px;line-height:1.5;color:#27343d;margin-bottom:12px;}
.msc-area-maintenance-box p{margin:6px 0;line-height:1.7;color:#66737b;}
.msc-area-maintenance-search{display:inline-flex;align-items:center;justify-content:space-between;gap:18px;margin-top:20px;min-height:46px;padding:10px 18px;border-radius:8px;background:var(--msc-blue,#087bb5);color:#fff!important;text-decoration:none!important;font-weight:700;}
.msc-area-maintenance-search:hover{opacity:.9;}
@media(max-width:600px){.msc-area-maintenance{padding:12px 0 44px;}.msc-area-maintenance-box{padding:22px 18px;}.msc-area-maintenance-box>strong{font-size:18px;}.msc-area-maintenance-search{display:flex;width:100%;box-sizing:border-box;}}

/* Empty mansion first-view: prioritize voting, reveal the empty state only on request. */
.msc-after-vote-content[hidden]{display:none!important;}
.msc-gated-result[hidden]{display:none!important;}
.msc-survey-content-locked .msc-vote-box .msc-result,
.msc-survey-content-locked .msc-nearby-environment,
.msc-survey-content-locked .msc-after-vote-content{display:none!important;}

/* 0.11.67: mansion nearby environment chips */
.msc-nearby-environment{margin:var(--msc-section-gap) 0 0;padding:0}
.msc-nearby-environment h2{margin:0 0 12px;padding:0;border:0;font-size:var(--msc-subsection-title-size,18px);line-height:1.4;font-weight:700;color:#2f3437}
.msc-nearby-items{display:flex;flex-wrap:wrap;gap:8px}
.msc-nearby-item{display:inline-flex;align-items:center;gap:6px;box-sizing:border-box;padding:8px 12px;border:1px solid #e3e7e5;border-radius:999px;background:#f6f8f7;font-size:14px;line-height:1.2;font-weight:600;color:#303733;white-space:nowrap}
.msc-nearby-icon{display:inline-flex;align-items:center;justify-content:center;font-size:15px;line-height:1}
@media(max-width:600px){.msc-nearby-environment h2{margin-bottom:10px}.msc-nearby-items{gap:7px}.msc-nearby-item{padding:7px 10px;font-size:13px}}

/* 0.11.70: OpenStreetMap attribution for automatic nearby-environment data */
.msc-nearby-attribution{margin:8px 2px 0;font-size:11px;line-height:1.5;color:#7a817d}
.msc-nearby-attribution a{color:inherit;text-decoration:underline;text-underline-offset:2px}

/* 0.11.83: front-page noise knowledge section */
.msc-noise-intro{
  box-sizing:border-box;
  width:100vw;
  margin:56px 0 0 calc(50% - 50vw);
  padding:54px 24px 0;
  border-top:1px solid #e1e8eb;
  border-bottom:1px solid #e1e8eb;
  background:linear-gradient(180deg,#f5f8f9 0%,#f9fbfb 100%);
}
.msc-noise-intro-inner{box-sizing:border-box;width:100%;max-width:1106px;margin:0 auto;}
.msc-noise-intro h2{margin:0 0 24px!important;padding:0!important;border:0!important;background:none!important;font-size:26px;line-height:1.45;color:#27343d;letter-spacing:.01em;}
.msc-noise-intro h2::before{content:none!important;display:none!important;}
.msc-noise-intro h2::after{content:none!important;display:none!important;}
.msc-noise-intro-copy{max-width:none;}
.msc-noise-intro-copy p{margin:0 0 13px;font-size:16px;line-height:1.9;color:#46545c;}
.msc-noise-intro-copy p:last-child{margin-bottom:0;}
@media(max-width:600px){
  .msc-noise-intro{margin-top:42px;padding:38px 18px 0;}
      .msc-noise-intro h2{margin-bottom:20px;font-size:21px;line-height:1.5;}
  .msc-noise-intro-copy p{font-size:15px;line-height:1.85;}
    }

/* 0.11.80: noise-column template */
.msc-noise-article{background:#fff;color:#292929;}
.msc-noise-article-wrap{box-sizing:border-box;}



.msc-noise-article-card{margin:0;padding:0;border:0;background:#fff;}
.msc-noise-article-header{margin:0 0 30px;padding:0 0 22px;border-bottom:3px solid var(--msc-blue,#087bb5);}
.msc-noise-article-header h1{letter-spacing:.01em;color:#292929;font-weight:750;}
.msc-noise-article-content{font-size:17px;line-height:2;color:#333;}
.msc-noise-article-content p{margin:0 0 22px;}
.msc-noise-article-content h2{scroll-margin-top:90px;margin:54px 0 22px;padding:12px 0 12px 16px;border-left:5px solid var(--msc-blue,#087bb5);border-bottom:1px solid #e3e8eb;font-size:25px;line-height:1.5;color:#292929;}
.msc-noise-article-content h3{scroll-margin-top:90px;margin:36px 0 16px;padding-bottom:9px;border-bottom:2px solid #dbe7ef;font-size:21px;line-height:1.5;color:#292929;}
.msc-article-toc{margin:34px 0 44px;padding:22px 26px;border:1px solid #d9e2e8;border-radius:12px;background:#f8fafb;}
.msc-article-toc-title{margin:0 0 13px;font-size:19px;font-weight:700;color:#292929;}
.msc-article-toc ol{margin:0;padding-left:1.35em;}
.msc-article-toc li{margin:7px 0;line-height:1.65;}
.msc-article-toc a{color:#2f6f9f;text-decoration:none;}
.msc-article-toc a:hover{text-decoration:underline;text-underline-offset:3px;}
.msc-noise-article-content .wp-block-buttons{margin:24px 0 4px;}
.msc-noise-article-content .wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:11px 22px;border-radius:8px;background:var(--msc-blue,#087bb5);color:#fff!important;font-weight:700;text-decoration:none;box-shadow:none;}
.msc-noise-article-content .wp-block-button__link:hover{opacity:.9;text-decoration:none;}
@media(max-width:600px){
  
  .msc-noise-article-header{margin-bottom:24px;padding-bottom:18px;}
  .msc-noise-article-content{font-size:16px;line-height:1.9;}
  .msc-noise-article-content p{margin-bottom:20px;}
  .msc-noise-article-content h2{margin:44px 0 19px;padding:10px 0 10px 13px;font-size:22px;}
  .msc-noise-article-content h3{margin:30px 0 14px;font-size:19px;}
  .msc-article-toc{margin:28px 0 36px;padding:19px 20px;}
  .msc-article-toc-title{font-size:18px;}
  .msc-noise-article-content .wp-block-button{width:100%;box-sizing:border-box;}
.msc-noise-article-content .wp-block-button__link{width:100%;box-sizing:border-box;}
}


/* 0.11.84: optional follow-up after a "うるさくない" vote */
.msc-quiet-followup{max-width:680px;margin:26px auto 0;padding:22px;border:1px solid #dbe6e8;background:#f7fbfb;border-radius:12px;text-align:left;}
.msc-quiet-followup[hidden]{display:none!important;}
.msc-quiet-followup-message{min-height:1.2em;font-size:13px;color:#777;margin:8px 0 0;}
@media(max-width:600px){.msc-quiet-followup{padding:18px 14px;}}

/* 0.11.95: front-page noise knowledge hub */
.msc-noise-intro .msc-noise-guide-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px 12px;
  max-width:820px;
  margin:26px 0 0;
  padding:0;
  list-style:none;
}
.msc-noise-intro .msc-noise-guide-list li{margin:0;padding:0;}
.msc-noise-intro .msc-noise-guide-list a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  box-sizing:border-box;
  height:100%;
  min-height:58px;
  padding:13px 15px 13px 16px;
  border:1px solid #d8e2e5;
  border-radius:9px;
  background:#fff;
  color:#2f5f7f!important;
  font-size:14px;
  font-weight:700;
  line-height:1.5;
  text-decoration:none!important;
  box-shadow:0 1px 2px rgba(30,50,60,.04);
  transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease;
}
.msc-noise-intro .msc-noise-guide-list a:hover{
  border-color:#afc5ce;
  box-shadow:0 4px 14px rgba(30,50,60,.07);
  transform:translateY(-1px);
  text-decoration:none!important;
}
.msc-noise-guide-arrow{
  flex:0 0 auto;
  color:#078c79;
  font-size:17px;
  line-height:1;
}
@media(max-width:600px){
  .msc-noise-intro .msc-noise-guide-list{grid-template-columns:1fr;gap:8px;margin-top:22px;}
  .msc-noise-intro .msc-noise-guide-list a{min-height:0;padding:12px 14px;font-size:14px;}
}


/* 0.12.00: split front-page knowledge hub by search intent; center the compact card groups on desktop */
.msc-noise-guide-group{width:100%;max-width:820px;margin:28px auto 0;}
.msc-noise-guide-group + .msc-noise-guide-group{margin-top:30px;}
.msc-noise-intro .msc-noise-guide-group h3{
  margin:0 0 12px!important;
  padding:0!important;
  border:0!important;
  background:none!important;
  color:#34454e;
  font-size:18px;
  font-weight:700;
  line-height:1.5;
}
.msc-noise-intro .msc-noise-guide-group h3::before{content:none!important;display:none!important;}
.msc-noise-intro .msc-noise-guide-group h3::after{content:none!important;display:none!important;}
.msc-noise-intro .msc-noise-guide-group .msc-noise-guide-list{margin-top:0;}
@media(max-width:600px){
  .msc-noise-guide-group{margin-top:24px;}
  .msc-noise-guide-group + .msc-noise-guide-group{margin-top:26px;}
  .msc-noise-intro .msc-noise-guide-group h3{margin-bottom:10px!important;font-size:17px;}
}

.msc-vote-gate-actions{text-align:center;margin-top:16px}.msc-vote-gate-actions[hidden]{display:none!important}.msc-view-without-vote{border:0;background:transparent;padding:2px 5px;color:#7b858c;text-decoration:underline;text-underline-offset:2px;font-size:12.5px;font-weight:400;cursor:pointer}.msc-view-without-vote:hover{color:#4b5563}.msc-view-without-vote:focus-visible{outline:2px solid #287d80;outline-offset:3px;border-radius:3px}


/* 0.12.10: front usage cards - compact visual icons and whole-card links */
/* 0.12.22: utility pages share the same quiet/legal-page visual language.
   Force headings to a neutral gray style so page-editor block/style differences
   cannot make 運営・編集方針 look like an SEO article. */
body.msc-utility-page .msc-utility-content h2{
  margin:36px 0 20px!important;
  padding:12px 14px!important;
  border:0!important;
  border-radius:2px!important;
  background:#f2f2f2!important;
  box-shadow:none!important;
  color:#292929!important;
  font-size:23px!important;
  font-weight:700!important;
  line-height:1.45!important;
}
body.msc-utility-page .msc-utility-content h2.wp-block-heading{
  margin:36px 0 20px!important;
  padding:12px 14px!important;
  border:0!important;
  border-radius:2px!important;
  background:#f2f2f2!important;
  box-shadow:none!important;
  color:#292929!important;
  font-size:23px!important;
  font-weight:700!important;
  line-height:1.45!important;
}
body.msc-utility-page .msc-utility-content h2::before{
  content:none!important;
  display:none!important;
}
body.msc-utility-page .msc-utility-content h2::after{
  content:none!important;
  display:none!important;
}
body.msc-utility-page .msc-utility-content h3{
  margin:30px 0 14px!important;
  padding:0 0 8px!important;
  border:0!important;
  border-bottom:1px solid #e1e4e6!important;
  background:none!important;
  color:#292929!important;
  font-size:20px!important;
  font-weight:700!important;
  line-height:1.5!important;
}
body.msc-utility-page .msc-utility-content h3.wp-block-heading{
  margin:30px 0 14px!important;
  padding:0 0 8px!important;
  border:0!important;
  border-bottom:1px solid #e1e4e6!important;
  background:none!important;
  color:#292929!important;
  font-size:20px!important;
  font-weight:700!important;
  line-height:1.5!important;
}
body.msc-utility-page .msc-utility-content h3::before{
  content:none!important;
  display:none!important;
}
body.msc-utility-page .msc-utility-content h3::after{
  content:none!important;
  display:none!important;
}
@media(max-width:600px){
  body.msc-utility-page .msc-utility-content h2{margin-top:30px!important;padding:11px 12px!important;font-size:21px!important;}
body.msc-utility-page .msc-utility-content h2.wp-block-heading{margin-top:30px!important;padding:11px 12px!important;font-size:21px!important;}
  body.msc-utility-page .msc-utility-content h3{margin-top:26px!important;font-size:18px!important;}
body.msc-utility-page .msc-utility-content h3.wp-block-heading{margin-top:26px!important;font-size:18px!important;}
}

/* 0.12.25: compact voting and a visible, optional reading path. */
.msc-vote-box .msc-vote-buttons{flex-direction:row;gap:12px;margin:0 auto 14px;max-width:640px;}
.msc-vote-box .msc-vote-button{min-width:0;padding:15px 8px;font-size:18px;line-height:1.5;}
.msc-vote-box .msc-vote-button span{font-size:28px;margin-bottom:4px;}
.msc-vote-box .msc-vote-gate-actions{max-width:640px;margin:0 auto;}
.msc-vote-box .msc-view-without-vote{display:inline-block;width:auto;max-width:100%;border:0;border-radius:0;background:transparent;color:#64717b;padding:8px 4px;font-size:14px;font-weight:400;line-height:1.6;text-decoration:underline;text-underline-offset:3px;white-space:normal;box-shadow:none;}
.msc-vote-box .msc-view-without-vote:hover{background:transparent;color:#34454e;}
.msc-vote-box .msc-vote-message:empty{display:none;}
@media(max-width:600px){
 .msc-vote-box h2{font-size:21px;line-height:1.5;margin-bottom:14px;}
 .msc-vote-box .msc-vote-buttons{gap:10px;}
 .msc-vote-box .msc-vote-button{font-size:17px;}
}

/* Vote result labels and stats. */
.msc-result-labels{display:flex;align-items:center;justify-content:space-between;gap:16px;}
.msc-result-stats{display:flex;align-items:center;justify-content:space-between;gap:16px;}
.msc-result-labels{margin:12px 0 7px;font-size:17px;line-height:1.5;}
.msc-result-labels span:last-child{text-align:right;}
.msc-result-stats strong:last-child{text-align:right;}
.msc-result-stats{margin-top:7px;font-size:17px;line-height:1.5;}
.msc-result-stats strong{font-weight:700;}
.msc-result .msc-bar{margin-top:0;}

.msc-survey-head{align-items:flex-start;}
.msc-survey-head>span{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:max-content;white-space:nowrap;word-break:keep-all;writing-mode:horizontal-tb;font-size:13px;padding:4px 9px;line-height:1.2;}


@media(max-width:600px){
 .msc-result-labels{gap:10px;font-size:16px;}
.msc-result-stats{gap:10px;font-size:16px;}
 .msc-survey-head{gap:8px;}
}




/* Homepage presentation is isolated in home.css. */

/* 0.12.64: factual overview and optional survey progress. */
.msc-mansion-title-sub{display:inline-block;font-size:.65em;}
.msc-noise-overview{margin:16px 0;padding:16px 18px;border:1px solid #d9e5eb;border-radius:10px;background:#f5f9fa;}
.msc-detail-summary .msc-noise-overview h3{font-size:16px;margin:0 0 8px;padding:0;border:0;background:none;}
.msc-noise-overview p{font-size:14px;line-height:1.85;margin:0;}
.msc-noise-overview .msc-noise-overview-note{font-size:12px;line-height:1.7;color:#617582;margin-top:8px;}
.msc-survey-progress{margin:12px 0 8px;text-align:left;font-size:13px;color:#496271;}
.msc-survey-progress progress{display:block;width:100%;height:5px;margin-top:6px;accent-color:#1593b5;}
@media(max-width:600px){.msc-noise-overview{padding:13px;}.msc-noise-overview p{font-size:13px;}.msc-noise-overview .msc-noise-overview-note{font-size:11px;}}

/* 0.12.65: compact property heading; keep the suffix together without forcing a new line. */

.msc-page .msc-header{padding:8px 0 18px;}
.msc-page .msc-header h1{word-break:normal;overflow-wrap:anywhere;}
.msc-page .msc-header .msc-mansion-title-sub{font-size:.65em;white-space:nowrap;}
.msc-page .msc-address{font-size:14px;line-height:1.6;margin:0;}
.msc-noise-overview p+p{margin-top:8px;}
@media(max-width:600px){
 
 .msc-page .msc-header{padding:4px 0 14px;}
 .msc-page .msc-address{font-size:12px;}
}

/* 0.15.415: explain the result-viewing step immediately before voting. */
.msc-page .msc-vote-instruction{margin:0 0 12px;color:var(--msc-blue,#087bb5);font-size:14px;line-height:1.6;text-align:center;}
.msc-vote-instruction[hidden]{display:none!important;}

/* 0.12.67: compact voting controls without reducing touch targets. */
.msc-page .msc-vote-box{padding:20px;}
.msc-page .msc-vote-box>h2{font-size:22px;line-height:1.4;margin:0 0 12px;padding:0;border:0;background:none;box-shadow:none;}
.msc-page .msc-vote-box>h2::before{display:none;}
.msc-page .msc-vote-box>h2::after{display:none;}
.msc-page .msc-vote-box .msc-vote-buttons{margin:0 auto 6px;gap:12px;}
.msc-page .msc-vote-box .msc-vote-button{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:8px;box-sizing:border-box;min-height:64px;padding:12px 8px;font-size:18px;line-height:1.4;}
.msc-page .msc-vote-box .msc-vote-button span{display:inline-block;flex:0 0 auto;margin:0;font-size:24px;line-height:1;}
.msc-page .msc-vote-box .msc-vote-button strong{font-size:inherit;line-height:inherit;}
.msc-page .msc-vote-box .msc-view-without-vote{min-height:44px;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;padding:8px 4px;color:#426579;}
.msc-page .msc-vote-box .msc-result{margin-top:12px;}
.msc-page .msc-vote-box .msc-vote-message:empty{display:none;}
@media(max-width:600px){
 
 .msc-page .msc-header{padding-top:2px;padding-bottom:10px;}
 .msc-page .msc-vote-box{padding:14px;}
 .msc-page .msc-vote-box>h2{font-size:19px;line-height:1.4;margin-bottom:8px;}
 .msc-page .msc-vote-box .msc-vote-buttons{gap:8px;margin-bottom:4px;}
 .msc-page .msc-vote-box .msc-vote-button{min-height:58px;padding:10px 5px;gap:5px;font-size:16px;}
 .msc-page .msc-vote-box .msc-vote-button span{font-size:21px;}
 .msc-page .msc-vote-box .msc-view-without-vote{font-size:13px;}
}


/* 0.12.69: resume banner for partially completed detail surveys. */
.msc-survey-resume{margin:var(--msc-section-gap) 0 0;padding:14px 16px;border:1px solid #cfe0f3;border-radius:10px;background:#f4f8fd;text-align:left;}
.msc-survey-resume[hidden]{display:none!important;}
.msc-survey-resume strong{display:block;margin:0;color:#23435c;font-size:15px;line-height:1.5;}
.msc-survey-resume-button{display:inline-flex;align-items:center;justify-content:center;margin-top:10px;padding:8px 14px;border:1px solid #337fba;border-radius:8px;background:#fff;color:#337fba;font-size:14px;font-weight:700;line-height:1.4;cursor:pointer;}
.msc-survey-resume-button:hover{background:#f7fbff;}
@media(max-width:600px){.msc-survey-resume{padding:12px 13px;}.msc-survey-resume strong{font-size:14px;}.msc-survey-resume-button{width:100%;margin-top:10px;min-height:42px;}}


/* 0.12.70: keep optional-survey badges from squeezing question headings on phones. */
@media(max-width:600px){
 .msc-survey-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;column-gap:10px;row-gap:8px;}
 .msc-survey-head>strong{display:block;min-width:0;margin:0;grid-column:1;grid-row:1;}
 .msc-survey-head>span{grid-column:2;grid-row:1;align-self:start;justify-self:end;margin:0;font-size:12px;padding:4px 8px;}
}


/* 0.13.78: 投票前だけ表示する、実データではないコンテンツ予告プレビュー。 */
.msc-vote-preview{box-sizing:border-box;margin:var(--msc-section-gap) 0 0;padding:17px;border:1px solid #d8e8ef;border-radius:14px;background:#f3f9fc;color:#17394b}.msc-vote-preview[hidden]{display:none!important}.msc-vote-preview-heading{display:flex;align-items:flex-start;gap:10px;margin-bottom:13px}.msc-vote-preview-lock{flex:0 0 auto;font-size:25px;line-height:1.2}.msc-vote-preview-heading h2{margin:0 0 5px;padding:0;border:0;font-size:18px;line-height:1.45;color:#123448}.msc-vote-preview-heading p{margin:0;color:#45606e;font-size:13px;line-height:1.65}.msc-vote-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.msc-vote-preview-tile{box-sizing:border-box;min-width:0;min-height:132px;padding:10px 9px;border:1px solid #dfe9ee;border-radius:10px;background:rgba(255,255,255,.88);box-shadow:0 1px 4px rgba(18,52,72,.025);overflow:hidden}.msc-vote-preview-tile>strong{display:block;min-height:2.8em;margin-bottom:7px;color:#17394b;font-size:11.5px;line-height:1.4}.msc-preview-skeleton{display:block;width:88%;height:7px;margin:7px auto;border-radius:999px;background:#dfe7eb}.msc-preview-skeleton-short{width:58%}.msc-preview-result-ring{box-sizing:border-box;width:44px;height:44px;margin:4px auto 8px;border:8px solid #d7e5ee;border-right-color:#ecd5d7;border-radius:50%}.msc-preview-detail-label{display:block;margin-top:5px;color:#90a2ac;font-size:9.5px;line-height:1.25;font-weight:700;text-align:left}.msc-preview-review-line{display:flex;align-items:center;gap:5px;margin:10px 0}.msc-preview-review-line i{display:block;flex:0 0 18px;width:18px;height:18px;border-radius:50%;background:#dfe7eb}.msc-preview-review-line b{display:block;width:calc(100% - 23px);height:8px;border-radius:999px;background:#dfe7eb}.msc-vote-preview-note{margin:11px 0 0;color:#426579;font-size:12px;line-height:1.4;font-weight:700;text-align:center}@media(max-width:600px){.msc-vote-preview{padding:13px 10px;border-radius:12px}.msc-vote-preview-heading{gap:7px;margin-bottom:10px}.msc-vote-preview-lock{font-size:21px}.msc-vote-preview-heading h2{font-size:15px}.msc-vote-preview-heading p{font-size:11.5px;line-height:1.55}.msc-vote-preview-grid{gap:5px}.msc-vote-preview-tile{min-height:117px;padding:8px 5px;border-radius:8px}.msc-vote-preview-tile>strong{font-size:9.5px}.msc-preview-result-ring{width:38px;height:38px;border-width:7px}.msc-preview-detail-label{font-size:8.5px}.msc-preview-review-line{gap:4px;margin:8px 0}.msc-preview-review-line i{flex-basis:15px;width:15px;height:15px}.msc-preview-review-line b{width:calc(100% - 19px);height:7px}.msc-vote-preview-note{margin-top:9px;font-size:11px}}

/* Generated review after survey completion. */
.msc-generated-review-lead{margin:0 0 5px!important;color:#5d6d68;font-size:13px!important;line-height:1.55!important;text-align:left}
.msc-generated-review-text{box-sizing:border-box;width:100%;margin:6px 0 8px;padding:10px 12px;border:1px solid #cfe1dc;border-radius:9px;background:#fff;color:#253b38;font-size:14px;line-height:1.55;text-align:left;white-space:pre-wrap}
.msc-generated-review-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;margin-top:6px}
.msc-generated-review-submit{min-height:42px;padding:9px 18px;border:1px solid var(--msc-blue,#087bb5)!important;border-radius:8px!important;background:var(--msc-blue,#087bb5)!important;color:#fff!important;font-size:14px!important;font-weight:700!important;line-height:1.45!important;cursor:pointer}
.msc-generated-review-submit:hover{opacity:.92}
.msc-generated-review-submit:disabled{opacity:.55;cursor:default}
.msc-generated-review-edit{min-height:0!important;padding:6px 4px!important;border:0!important;border-radius:0!important;background:transparent!important;color:#087cab!important;font-size:13px!important;font-weight:500!important;line-height:1.45!important;text-decoration:underline;cursor:pointer}
.msc-generated-review-status{min-height:1.3em;margin:8px 0 0!important;color:#66756f;font-size:12px!important;line-height:1.5!important;text-align:center}
.msc-generated-review-card{margin:12px 0;padding:14px 18px;border:1px solid #c7e0dd;border-radius:11px;background:#f2faf9;color:#183a4d}
.msc-generated-review-card[hidden]{display:none!important}
.msc-generated-review-card .msc-generated-review-bonus[hidden]{display:none!important}
.msc-generated-review-card .msc-generated-review-heading{display:flex;flex-direction:column;align-items:flex-start;gap:3px;margin-bottom:5px}
.msc-generated-review-card .msc-generated-review-heading h3{box-sizing:border-box;width:100%;margin:0!important;padding:0;border:0;background:none;font-size:18px;line-height:1.5;white-space:normal}
.msc-generated-review-card .msc-generated-review-bonus{display:inline-flex;align-items:center;margin:0!important;padding:3px 8px;border-radius:99px;background:#e9f2e9;color:#376648;font-size:11px;font-weight:700;line-height:1.4;white-space:nowrap}
.msc-generated-review-card .msc-generated-review-status:empty{min-height:0;margin:0!important}
.msc-noise-survey .msc-survey-bonus{display:table;margin:0 0 8px;padding:3px 8px;border-radius:99px;background:#e9f2e9;color:#376648;font-size:11px;font-weight:700;line-height:1.4;white-space:nowrap}
.msc-noise-survey .msc-survey-bonus[hidden]{display:none!important}
.msc-admin-flow-preview{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 10px;margin:10px 0 0;color:#68757b;font-size:12px;line-height:1.5}
.msc-admin-flow-preview strong{color:#9a6400}
.msc-admin-flow-preview a{color:#087cab;text-decoration:underline}
.msc-preview-comment{outline:2px dashed #c7a76a;outline-offset:-2px}
@media(max-width:600px){.msc-generated-review-actions{flex-direction:column;gap:7px}.msc-generated-review-submit{width:100%}.msc-generated-review-edit{width:auto!important}.msc-generated-review-card{padding:12px 14px}.msc-generated-review-card .msc-generated-review-heading h3{font-size:16px}.msc-admin-flow-preview{align-items:flex-start;flex-direction:column}}
/* 0.14.21: resume the detail survey at the survey card, not at the previous scroll position. */
.msc-noise-survey{scroll-margin-top:88px;}
@media(max-width:600px){.msc-noise-survey{scroll-margin-top:72px;}}

/* Compact the follow-up cards while keeping the response controls comfortable. */
.msc-noise-survey,.msc-quiet-followup{margin-top:12px;padding:15px 18px}
.msc-noise-survey .msc-survey-bonus{margin-bottom:5px}
.msc-noise-survey .msc-survey-sub,.msc-quiet-followup .msc-survey-sub{margin:5px 0 10px}
.msc-noise-survey .msc-survey-progress{margin:7px 0 6px}
.msc-noise-survey .msc-survey-step>p{margin-bottom:8px}
.msc-noise-survey .msc-survey-skip{margin-top:10px}
.msc-noise-survey .msc-survey-message:empty,.msc-quiet-followup .msc-quiet-followup-message:empty{min-height:0;margin:0}
@media(max-width:600px){.msc-noise-survey,.msc-quiet-followup{padding:12px 14px}}

.msc-generated-review-card,.msc-review-nudge,.msc-quiet-followup{scroll-margin-top:88px}
@media(max-width:600px){.msc-generated-review-card,.msc-review-nudge,.msc-quiet-followup{scroll-margin-top:72px}}

/* Keep the survey title on one line on typical phones without changing option wrapping. */
@media(max-width:600px){.msc-noise-survey .msc-survey-head>strong,.msc-quiet-followup .msc-survey-head>strong{font-size:16px;line-height:1.5}}

/* 0.15.07-preview1: 管理者確認モード専用の「わからない」理由分岐。通常ユーザーの07導線には表示しない。 */
/* preview5: 前段アンケートは「わからない」理由選択と同じカード・選択肢デザインに統一。 */
.msc-unknown-reason,.msc-quiet-followup{max-width:520px;margin:8px auto 0;padding:14px 16px;border:1px solid #dbe6e8;border-radius:10px;background:#f7fbfb;text-align:left}
.msc-unknown-reason[hidden],.msc-quiet-followup[hidden]{display:none!important}
.msc-unknown-reason-title,.msc-quiet-followup .msc-survey-head>strong{margin:0 0 10px;font-size:14px;font-weight:700;line-height:1.6;color:#34454e}
.msc-quiet-followup .msc-survey-head{display:block;font-size:14px}
.msc-quiet-followup .msc-survey-sub{margin:0 0 10px;font-size:13px;line-height:1.55;color:#68757b}
.msc-unknown-reason-options,.msc-quiet-followup-options{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.msc-unknown-reason-options button,.msc-quiet-followup-options button{box-sizing:border-box;width:100%;min-height:44px;border:1px solid #cfdadd;border-radius:8px;background:#fff;color:#34454e;padding:9px 12px;font-size:14px;font-weight:600;line-height:1.4;cursor:pointer;text-align:center}
.msc-unknown-reason-options button:hover,.msc-quiet-followup-options button:hover{background:#f1f6f7}
@media(max-width:600px){.msc-unknown-reason,.msc-quiet-followup{padding:12px}.msc-unknown-reason-options,.msc-quiet-followup-options{grid-template-columns:1fr}.msc-unknown-reason-title,.msc-quiet-followup .msc-survey-head>strong{font-size:13.5px}}

/* 確認モードの状態管理JSが hidden を唯一の表示状態として扱えるようにする。 */
.msc-vote-box .msc-noise-survey[hidden],.msc-vote-box .msc-survey-step[hidden],.msc-vote-box .msc-quiet-followup[hidden],.msc-vote-box .msc-view-without-vote[hidden]{display:none!important}

/* 0.15.168: admin-preview-only lifestyle LP entry, between review content and the review form. */
.msc-lifestyle-preview-slot{margin:18px 0 0}
.msc-lifestyle-preview-slot[hidden]{display:none!important}
.msc-lifestyle-preview-link{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:50px;padding:12px 18px;box-sizing:border-box;border:1px solid #d5e7ef;border-radius:10px;background:#f3f9fc;color:var(--msc-blue,#087bb5)!important;font-size:15px;font-weight:800;line-height:1.35;text-align:left;text-decoration:none!important;transition:background .15s ease,border-color .15s ease}
.msc-lifestyle-preview-link:hover{background:#eaf5fa;border-color:#b9dbe8;text-decoration:none!important}
.msc-lifestyle-preview-link:focus-visible{outline:2px solid var(--msc-blue,#087bb5);outline-offset:3px}
.msc-lifestyle-preview-label{min-width:0}
.msc-lifestyle-preview-chevron{flex:0 0 auto;margin-left:auto;font-size:19px;font-weight:500;line-height:1}
@media(max-width:600px){.msc-lifestyle-preview-slot{margin-top:14px}.msc-lifestyle-preview-link{min-height:48px;padding:11px 14px;font-size:14px}.msc-lifestyle-preview-chevron{font-size:18px}}


/* 0.15.200 管理者限定：検索地域絞り込み */
.msc-admin-region-filter{margin:8px 4px 0;text-align:left}
.msc-admin-region-toggle{appearance:none;border:0;background:transparent;color:#3f6477;font:inherit;font-size:13px;font-weight:700;padding:3px 2px;cursor:pointer}
.msc-admin-region-toggle span{display:inline-block;margin-left:3px;transition:transform .15s ease}
.msc-admin-region-toggle[aria-expanded="true"] span{transform:rotate(180deg)}
.msc-admin-region-panel{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:7px;padding:10px;border:1px solid #d8e5ea;border-radius:10px;background:rgba(255,255,255,.96)}
.msc-admin-region-panel[hidden]{display:none!important}
.msc-admin-region-panel select{min-width:150px;max-width:100%;height:38px;margin:0;padding:0 30px 0 10px;border:1px solid #ccdce3;border-radius:8px;background:#fff;font-size:14px}
.msc-admin-region-panel button{min-height:38px;margin:0;padding:7px 12px;border:1px solid #b8cdd7;border-radius:8px;background:#fff;color:#23495e;font-size:13px;font-weight:700;cursor:pointer}
.msc-admin-region-panel .msc-admin-region-apply{border-color:#087bb5;background:#087bb5;color:#fff}
@media(max-width:600px){.msc-admin-region-panel select{flex:1 1 calc(50% - 4px);min-width:0}.msc-admin-region-panel .msc-admin-region-apply{flex:1 1 auto}}

/* 0.15.227: compact review form and a simple end-of-page home action. */
.msc-review-form{margin-top:12px;}
.msc-review-form>p{margin:0 0 14px;}
.msc-review-form>p.msc-review-caution{margin:0 0 12px;}
.msc-review-form .msc-review-message:empty{display:none;}
.msc-review-form .msc-review-message:not(:empty){margin:10px 0 0;}
.msc-mansion-home-action{margin-top:var(--msc-section-gap);text-align:center;}
.msc-mansion-home-action a{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:44px;padding:10px 20px;border:1px solid #cfdde4;border-radius:8px;background:#fff;color:var(--msc-blue,#087bb5)!important;font-size:15px;font-weight:700;line-height:1.35;text-decoration:none!important;}
.msc-mansion-home-action a:hover{background:#f4f9fb;text-decoration:none!important;}
@media(max-width:600px){.msc-review-form{margin-top:10px;}.msc-review-form>p{margin-bottom:12px;}.msc-review-form>p.msc-review-caution{margin-bottom:10px;}.msc-mansion-home-action a{min-height:42px;padding:9px 18px;font-size:14px;}}

/* 0.15.242: 「最近の声」経由の閲覧専用案内 */
.msc-recent-readonly-notice{margin-top:var(--msc-section-gap);padding:12px 14px;border:1px solid #cfe0e8;border-radius:10px;background:#f7fbfd;color:#20313b;font-size:13px;}
.msc-recent-readonly-notice strong{display:block;margin:0 0 3px;font-size:14px;color:#0b2b3e;}
.msc-recent-readonly-notice p{margin:0;line-height:1.6;color:#526773;}
.msc-recent-readonly-notice a{display:flex;align-items:center;justify-content:flex-end;gap:4px;width:max-content;margin:7px 0 0 auto;font-size:13px;font-weight:700;text-decoration:none;}
@media(max-width:600px){.msc-recent-readonly-notice{padding:11px 12px;font-size:12px;}.msc-recent-readonly-notice strong{font-size:13px;}.msc-recent-readonly-notice a{font-size:12px;}}


/* 0.15.287 マンション別共有（一般公開、紹介ラベルの余白を口コミと統一） */
.msc-page .msc-mansion-share{box-sizing:border-box;margin:var(--msc-section-gap) 0 0;padding:18px 20px;border:1px solid #d7e3e9;border-radius:14px;background:#fff;color:#18384a;text-align:left}
.msc-page .msc-mansion-share-bonus{display:table;margin:0 0 3px;padding:3px 8px;border-radius:99px;background:#e9f2e9;color:#376648;font-size:11px;font-weight:700;line-height:1.4;white-space:nowrap}
.msc-page .msc-mansion-share-bonus[hidden],.msc-page .msc-mansion-share-fallback[hidden]{display:none!important}
.msc-page .msc-mansion-share h2{margin:0 0 7px;padding:0;border:0;background:none;box-shadow:none;color:#143448;font-size:20px;font-weight:700;line-height:1.4}
.msc-page .msc-mansion-share-description{margin:0 0 16px;color:#526875;font-size:13px;line-height:1.65}
.msc-page .msc-mansion-share-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.msc-page .msc-mansion-share-button{appearance:none;display:flex;box-sizing:border-box;min-width:0;min-height:48px;align-items:center;justify-content:center;gap:7px;padding:8px 5px;border:1px solid transparent;border-radius:9px;font-size:14px;font-weight:700;line-height:1.3;text-decoration:none!important;cursor:pointer;white-space:nowrap;box-shadow:none}
.msc-page .msc-mansion-share-line{background:#06c755;color:#fff!important}
.msc-page .msc-mansion-share-x{background:#171717;color:#fff!important}
.msc-page .msc-mansion-share-copy{background:#f0f2f4;border-color:#d6dde2;color:#263d4b!important}
.msc-page .msc-mansion-share-button:hover{filter:brightness(.96);text-decoration:none!important}
.msc-page .msc-mansion-share-line-mark,.msc-page .msc-mansion-share-x-mark,.msc-page .msc-mansion-share-copy-mark{display:inline-flex;align-items:center;justify-content:center;flex:none}
.msc-page .msc-mansion-share-line-mark svg{display:block;width:29px;height:29px}
.msc-page .msc-mansion-share-x-mark svg{display:block;width:21px;height:21px}
.msc-page .msc-mansion-share-copy-mark svg{display:block;width:22px;height:22px}
.msc-page .msc-mansion-share-status{margin:0;color:#426579;font-size:12px;line-height:1.4}
.msc-page .msc-mansion-share-status:not(:empty){margin-top:10px}
.msc-page .msc-mansion-share-fallback{box-sizing:border-box;width:100%;margin-top:7px;padding:9px;border:1px solid #cbdde5;border-radius:7px;background:#fff;font-size:12px}
@media(max-width:600px){.msc-page .msc-mansion-share{padding:14px 12px;border-radius:12px}.msc-page .msc-mansion-share h2{font-size:17px}.msc-page .msc-mansion-share-description{font-size:12px;margin-bottom:13px}.msc-page .msc-mansion-share-actions{gap:6px}.msc-page .msc-mansion-share-button{min-height:43px;padding:7px 2px;font-size:12px;gap:5px}.msc-page .msc-mansion-share-line-mark svg{width:26px;height:26px}.msc-page .msc-mansion-share-x-mark svg{width:19px;height:19px}.msc-page .msc-mansion-share-copy-mark svg{width:20px;height:20px}}

/* 0.15.293: administrator-only compact noise summary trial */
.msc-detail-compact .msc-detail-compact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
.msc-detail-compact .msc-detail-group{min-width:0;margin:0;padding:12px;border:1px solid #dce6e8;border-radius:10px;background:#fff}
.msc-detail-compact .msc-detail-group h3{font-size:13px;line-height:1.4;margin:0 0 10px}
.msc-detail-compact .msc-detail-group-sound,.msc-detail-compact .msc-detail-consult-pair{grid-column:1/-1}
.msc-detail-compact .msc-detail-group-sound .msc-detail-bars{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px}
.msc-detail-compact .msc-detail-item{margin:0 0 8px;min-width:0}
.msc-detail-compact .msc-detail-row{font-size:11px;line-height:1.5;gap:3px;flex-wrap:wrap}
.msc-detail-compact .msc-detail-row strong{font-size:11px;font-weight:600}
.msc-detail-compact .msc-detail-row strong small{font-size:10px;color:#687981;font-weight:400}
.msc-detail-compact .msc-detail-bar{height:5px;margin-top:4px}
.msc-detail-compact .msc-detail-consult-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.msc-detail-compact .msc-donut-wrap{display:flex;flex-direction:column;gap:7px;align-items:center;margin-top:4px}
.msc-detail-compact .msc-donut{width:86px;height:86px;flex:0 0 86px}
.msc-detail-compact .msc-donut-hole{width:57px;height:57px}
.msc-detail-compact .msc-donut-hole strong{font-size:15px}
.msc-detail-compact .msc-donut-hole span{font-size:10px;margin-top:2px}
.msc-detail-compact .msc-donut-legend{width:100%}
.msc-detail-compact .msc-donut-legend li{font-size:10px;display:flex;flex-wrap:wrap;gap:4px;padding:3px 0}
.msc-detail-compact .msc-donut-legend strong{font-size:10px;margin-left:auto}
.msc-detail-compact .msc-detail-no-consult{height:86px;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#667b88;font-size:13px}
.msc-detail-compact .msc-detail-no-consult small{font-size:10px;margin-top:5px}
@media(max-width:400px){.msc-detail-compact .msc-detail-group{padding:9px}.msc-detail-compact .msc-detail-compact-grid,.msc-detail-compact .msc-detail-consult-pair{gap:7px}.msc-detail-compact .msc-detail-row{font-size:10px}.msc-detail-compact .msc-detail-row strong{font-size:10px}}

/* 0.15.294: keep the paired consultation cards aligned, but reduce their vertical footprint. */
.msc-detail-compact .msc-detail-consult-pair .msc-detail-group{padding-top:9px;padding-bottom:9px}
.msc-detail-compact .msc-detail-consult-pair .msc-detail-group h3{margin-bottom:6px}
.msc-detail-compact .msc-detail-consult-pair .msc-donut-wrap{gap:4px;margin-top:0}
.msc-detail-compact .msc-detail-consult-pair .msc-donut{width:70px;height:70px;flex-basis:70px}
.msc-detail-compact .msc-detail-consult-pair .msc-donut-hole{width:46px;height:46px}
.msc-detail-compact .msc-detail-consult-pair .msc-donut-hole strong{font-size:13px}
.msc-detail-compact .msc-detail-consult-pair .msc-donut-hole span{font-size:9px}
.msc-detail-compact .msc-detail-consult-pair .msc-donut-legend li{padding:2px 0}
.msc-detail-compact .msc-detail-consult-pair .msc-detail-no-consult{height:70px}


/* 0.15.295: compact survey cards keep the ratio to the RIGHT of each bar, independent of long labels. */
.msc-detail-compact .msc-detail-meter{display:flex;align-items:center;gap:6px;min-width:0;margin-top:4px}
.msc-detail-compact .msc-detail-meter .msc-detail-bar{flex:1 1 auto;min-width:0;width:auto;margin-top:0}
.msc-detail-compact .msc-detail-meter .msc-detail-percent{flex:0 0 auto;white-space:nowrap;font-size:11px;font-weight:600;line-height:1.3}
.msc-detail-compact .msc-detail-meter .msc-detail-percent small{font-size:10px;color:#687981;font-weight:400}
.msc-detail-compact .msc-detail-row{min-width:0;display:block;overflow-wrap:anywhere}
@media(max-width:400px){.msc-detail-compact .msc-detail-meter{gap:4px}.msc-detail-compact .msc-detail-meter .msc-detail-percent{font-size:10px}.msc-detail-compact .msc-detail-meter .msc-detail-percent small{font-size:9px}}

/* 0.15.299: one outer detail panel; keep two-column groups without nested cards. */
.msc-detail-compact .msc-detail-compact-grid{column-gap:16px;row-gap:16px}
.msc-detail-compact .msc-detail-compact-grid .msc-detail-group,
.msc-detail-compact .msc-detail-consult-pair .msc-detail-group{border:0;border-radius:0;background:transparent;box-shadow:none;padding:0;min-width:0}
.msc-detail-compact .msc-detail-consult-pair{column-gap:16px;row-gap:0}
.msc-detail-compact .msc-detail-group h3{border-bottom:1px solid #dce6e8;padding-bottom:7px;margin-bottom:10px}
.msc-detail-compact .msc-detail-consult-pair .msc-detail-group h3{margin-bottom:8px}
@media(max-width:400px){
 .msc-detail-compact .msc-detail-compact-grid,
 .msc-detail-compact .msc-detail-consult-pair{column-gap:12px}
 .msc-detail-compact .msc-detail-compact-grid .msc-detail-group,
 .msc-detail-compact .msc-detail-consult-pair .msc-detail-group{padding:0}
}

/* 0.15.300: align compact donut legend numbers with horizontal bar percentages. */
.msc-detail-compact .msc-detail-consult-pair .msc-donut-legend li{display:flex;flex-wrap:nowrap;align-items:center;gap:4px;min-width:0}
.msc-detail-compact .msc-detail-consult-pair .msc-donut-legend .msc-donut-key{flex:0 0 9px}
.msc-detail-compact .msc-detail-consult-pair .msc-donut-legend .msc-donut-label{min-width:0;white-space:nowrap;font-size:11px}
.msc-detail-compact .msc-detail-consult-pair .msc-donut-legend .msc-donut-percent{flex:0 0 auto;white-space:nowrap;margin-left:auto;font-size:11px;font-weight:600;line-height:1.3}
.msc-detail-compact .msc-detail-consult-pair .msc-donut-legend .msc-donut-percent small{font-size:10px;color:#687981;font-weight:400}
@media(max-width:400px){.msc-detail-compact .msc-detail-consult-pair .msc-donut-legend .msc-donut-label,.msc-detail-compact .msc-detail-consult-pair .msc-donut-legend .msc-donut-percent{font-size:10px}.msc-detail-compact .msc-detail-consult-pair .msc-donut-legend .msc-donut-percent small{font-size:9px}}

/* 0.15.305: unobtrusive loading indicator and inline candidate provenance */
.msc-search-loading-dots{display:inline-block;animation:msc-loading-dots 1.2s ease-in-out infinite;}
@keyframes msc-loading-dots{0%,100%{opacity:1}50%{opacity:.2}}
@media(prefers-reduced-motion:reduce){.msc-search-loading-dots{animation:none}}

/* 0.15.311: Publish the tested one-line survey graph for all viewers. */
.msc-detail-compact.msc-detail-chart-inline .msc-detail-group-sound .msc-detail-bars{
  display:grid;grid-template-columns:minmax(0,1fr);gap:5px;
}
.msc-detail-compact.msc-detail-chart-inline .msc-detail-bars .msc-detail-item{
  display:grid;grid-template-columns:minmax(0,92px) minmax(0,1fr);
  align-items:center;column-gap:7px;min-width:0;margin:0 0 5px;
}
.msc-detail-compact.msc-detail-chart-inline .msc-detail-group-sound .msc-detail-item{
  grid-template-columns:minmax(0,125px) minmax(0,1fr);
}
.msc-detail-compact.msc-detail-chart-inline .msc-detail-bars .msc-detail-row{
  display:block;min-width:0;font-size:11px;line-height:1.35;overflow-wrap:anywhere;
}
.msc-detail-compact.msc-detail-chart-inline .msc-detail-bars .msc-detail-meter{
  display:flex;min-width:0;align-items:center;gap:5px;margin:0;
}
.msc-detail-compact.msc-detail-chart-inline .msc-detail-bars .msc-detail-percent{
  font-size:11px;font-weight:600;white-space:nowrap;
}
.msc-detail-compact.msc-detail-chart-inline .msc-detail-bars .msc-detail-percent small{
  font-size:10px;
}
@media(max-width:440px){
  .msc-detail-compact.msc-detail-chart-inline .msc-detail-bars .msc-detail-item{
    grid-template-columns:minmax(0,61px) minmax(0,1fr);column-gap:4px;
  }
  .msc-detail-compact.msc-detail-chart-inline .msc-detail-group-sound .msc-detail-item{
    grid-template-columns:minmax(0,108px) minmax(0,1fr);
  }
  .msc-detail-compact.msc-detail-chart-inline .msc-detail-bars .msc-detail-row,
  .msc-detail-compact.msc-detail-chart-inline .msc-detail-bars .msc-detail-percent{font-size:10px}
  .msc-detail-compact.msc-detail-chart-inline .msc-detail-bars .msc-detail-percent small{font-size:9px}
  .msc-detail-compact.msc-detail-chart-inline .msc-detail-bars .msc-detail-meter{gap:3px}
}

/* 0.15.310: Align bar starts to the longest answer label within each survey group. */
.msc-detail-compact.msc-detail-chart-inline .msc-detail-bars,
.msc-detail-compact.msc-detail-chart-inline .msc-detail-group-sound .msc-detail-bars{
  display:grid;
  grid-template-columns:max-content minmax(0,1fr);
  column-gap:7px;
  row-gap:5px;
  align-items:center;
}
.msc-detail-compact.msc-detail-chart-inline .msc-detail-bars .msc-detail-item,
.msc-detail-compact.msc-detail-chart-inline .msc-detail-group-sound .msc-detail-item{
  display:contents;
}
.msc-detail-compact.msc-detail-chart-inline .msc-detail-bars .msc-detail-row{
  grid-column:1;
  max-width:100%;
  white-space:nowrap;
  overflow-wrap:normal;
}
.msc-detail-compact.msc-detail-chart-inline .msc-detail-bars .msc-detail-meter{
  grid-column:2;
  min-width:0;
}
@media(max-width:440px){
  .msc-detail-compact.msc-detail-chart-inline .msc-detail-bars,
  .msc-detail-compact.msc-detail-chart-inline .msc-detail-group-sound .msc-detail-bars{column-gap:5px;row-gap:5px}
}

/* 0.15.337: keep the consultation heading and its quieter qualifier on one line. */
.msc-detail-compact .msc-detail-group-consulted h3{display:flex;align-items:baseline;gap:5px;white-space:nowrap}
.msc-detail-compact .msc-detail-group-consulted h3 .msc-detail-consult-note{font-size:9px;line-height:1.3;font-weight:400;color:#71828b;white-space:nowrap;letter-spacing:-.03em}
@media(max-width:400px){.msc-detail-compact .msc-detail-group-consulted h3{gap:3px}.msc-detail-compact .msc-detail-group-consulted h3 .msc-detail-consult-note{font-size:8px}}

/* 自動生成口コミの出典補足（本文より控えめに表示） */
.msc-review-assisted-note{font-size:12px;line-height:1.7;color:#697782;margin:7px 0 0;font-weight:400}.msc-review-assisted-note span{margin-right:3px}

/* 投票前の安心説明折り畳み：公開・管理者確認モードで共通表示。 */
.msc-page .msc-vote-reassurance{box-sizing:border-box;max-width:640px;margin:8px auto 0;border-top:1px solid #e7eef2;text-align:left;color:#263b48;}
.msc-page .msc-vote-reassurance>summary{list-style:none;display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:22px 8px;cursor:pointer;color:#426579;font-size:14px;font-weight:600;line-height:1.5;}
.msc-page .msc-vote-reassurance:not([open]){margin-bottom:-20px;}
.msc-page .msc-vote-reassurance>summary::-webkit-details-marker{display:none;}
.msc-page .msc-vote-reassurance>summary::marker{content:'';}
.msc-page .msc-vote-reassurance>summary:focus-visible{outline:2px solid #287d80;outline-offset:2px;border-radius:6px;}
.msc-page .msc-vote-reassurance-shield{width:19px;height:19px;flex:0 0 19px;}
.msc-page .msc-vote-reassurance-chevron{display:inline-block;font-size:22px;font-weight:400;line-height:1;transition:transform .15s ease;transform:rotate(90deg);}
.msc-page .msc-vote-reassurance[open] .msc-vote-reassurance-chevron{transform:rotate(-90deg);}
.msc-page .msc-vote-reassurance-body{padding:5px 5px 8px;text-align:left;font-size:14px;line-height:1.7;}
.msc-page .msc-vote-reassurance-body>p{margin:0 0 12px;}
.msc-page .msc-vote-reassurance-body>p:last-child{margin-bottom:0;}
.msc-page .msc-vote-reassurance-body .msc-vote-reassurance-emphasis{font-weight:700;}
.msc-page .msc-vote-reassurance-data{border-radius:10px;background:#f1f5f7;padding:14px 12px;margin:15px 0;color:#203746;text-align:center;}
.msc-page .msc-vote-reassurance-data p{margin:0;line-height:1.6;}
.msc-page .msc-vote-reassurance-percent{display:block;margin:5px 0 4px;font-size:44px;font-weight:800;line-height:1.2;color:#1e566c;font-variant-numeric:tabular-nums;}
.msc-page .msc-vote-reassurance-percent span{font-size:.64em;margin-left:2px;}
.msc-page .msc-vote-reassurance-pending{display:block;margin:12px 0;font-size:22px;}
.msc-page .msc-vote-reassurance-data .msc-vote-reassurance-footnote{margin-top:9px;font-size:11px;line-height:1.55;color:#60717b;text-align:left;}
@media(max-width:600px){.msc-page .msc-vote-reassurance:not([open]){margin-bottom:-14px;}.msc-page .msc-vote-reassurance>summary{font-size:13px;padding:19px 8px;}.msc-page .msc-vote-reassurance-body{font-size:13px;padding:4px 3px 7px;}.msc-page .msc-vote-reassurance-data{padding:13px 11px;}.msc-page .msc-vote-reassurance-percent{font-size:40px;}}

/* 地域指定は任意。検索フォームは従来のまま維持 */
.msc-admin-region-filter .msc-region-help{margin:6px 0 8px;color:#607481;font-size:12px;line-height:1.55;font-weight:400}

/* 0.15.375: Single-row optional region controls; main search submits both fields. */
.msc-admin-region-panel{flex-wrap:nowrap;gap:8px}
.msc-admin-region-panel select{flex:1 1 0;min-width:0;width:0;max-width:none}
.msc-admin-region-panel .msc-admin-region-clear{flex:0 0 auto;white-space:nowrap}
@media(max-width:600px){
 .msc-admin-region-panel{flex-wrap:nowrap;gap:7px;padding:10px}
 .msc-admin-region-panel select{flex:1 1 0;min-width:0;width:0;padding-left:8px;padding-right:20px;font-size:13px}
 .msc-admin-region-panel .msc-admin-region-clear{flex:0 0 auto;padding:7px 10px;font-size:13px}
}

/* Keep the pause link and next button on the same footer row. */
.msc-noise-survey{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-auto-flow:row dense;column-gap:12px;align-items:center}
.msc-noise-survey>*{grid-column:1 / -1;min-width:0}
.msc-noise-survey .msc-survey-bonus{justify-self:start}
.msc-noise-survey .msc-survey-step:not([hidden]){display:contents}
.msc-noise-survey .msc-survey-step>p,.msc-noise-survey .msc-survey-options{grid-column:1 / -1}
.msc-noise-survey .msc-survey-next{grid-column:2;margin:22px 0 0;justify-self:end}
.msc-noise-survey .msc-survey-skip{grid-column:1;margin:22px 0 0;justify-self:start;white-space:nowrap}
