.tfs-faq{margin:2rem 0;padding:1rem;border-radius:16px;background:#fff;box-shadow:0 2px 14px rgba(0,0,0,.06)}
.tfs-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;overflow:visible}.tfs-tab{border:1px solid #d6e4d6;background:#f6fbf6;border-radius:999px;padding:.55rem 1rem;cursor:pointer;font-weight:700;white-space:normal;line-height:1.35;max-width:100%;text-align:center}.tfs-tab.is-active{background:#2f7d46;color:#fff;border-color:#2f7d46}.tfs-panel{display:none}.tfs-panel.is-active{display:block}.tfs-item{border:1px solid #e7e7e7;border-radius:12px;margin:.6rem 0;background:#fff}.tfs-item summary{cursor:pointer;font-weight:700;padding:1rem;list-style:none}.tfs-item summary::-webkit-details-marker{display:none}.tfs-item summary:after{content:'＋';float:right}.tfs-item[open] summary:after{content:'−'}.tfs-answer{padding:0 1rem 1rem;line-height:1.85}.tfs-answer p{margin:.6em 0}.tfs-marker{background:linear-gradient(transparent 58%, #fff59d 58%);font-weight:600;padding:0 .05em}@media(max-width:640px){.tfs-faq{padding:.8rem}.tfs-tabs{gap:.45rem}.tfs-tab{font-size:.92rem;padding:.6rem .8rem}}


/* v2.0.0 selected FAQ rendering */
.tfs-faq-selected .tfs-selected-list{display:block}.tfs-item-set-name{font-size:.88em;color:#646970;margin:.35rem 0 0}.tfs-faq-selected .tfs-item{margin-bottom:.65rem}

/* MUSUBI Tabbed FAQ 1.0.1 Q/A numbering */
.tfs-summary-numbered{display:flex;gap:.45em;align-items:flex-start;padding-right:2.2rem}.tfs-summary-numbered:after{position:absolute;right:1rem}.tfs-qa-label{font-weight:800;white-space:nowrap;color:#2f7d46;line-height:1.6}.tfs-question-text{display:block;min-width:0}.tfs-answer-numbered{display:flex;gap:.55em;align-items:flex-start}.tfs-answer-body{min-width:0;flex:1}.tfs-answer-body>:first-child{margin-top:0}.tfs-answer-body>:last-child{margin-bottom:0}@media(max-width:640px){.tfs-summary-numbered{gap:.35em}.tfs-answer-numbered{gap:.4em}}
.tfs-item summary{position:relative}

/* MUSUBI Tabbed FAQ 1.1.3: single-tab FAQ displays like a normal FAQ without tab UI. */
.tfs-faq-single-tab .tfs-panels{margin-top:0}
.tfs-faq-single-tab .tfs-panel{display:block}

/* MUSUBI Tabbed FAQ 1.1.7: front-end FAQ search block */
.tfs-faq-search{margin:2rem 0;padding:1.25rem;border:1px solid #e1e7e1;border-radius:16px;background:#fff}
.tfs-search-heading{margin:0 0 .45rem;font-size:1.35rem}.tfs-search-description{margin:.35rem 0 1rem;line-height:1.75}.tfs-search-label{display:block;font-weight:700;margin-bottom:.4rem}.tfs-search-control{display:flex;gap:.5rem;align-items:stretch}.tfs-search-input{width:100%;min-width:0;border:1px solid #9aa59d;border-radius:10px;padding:.75rem .85rem;font:inherit}.tfs-search-input:focus{outline:3px solid rgba(47,125,70,.22);border-color:#2f7d46}.tfs-search-clear{border:1px solid #9aa59d;border-radius:10px;background:#fff;padding:.65rem .9rem;cursor:pointer;white-space:nowrap}.tfs-search-status{margin:.75rem 0;color:#50575e}.tfs-search-results{margin-top:.75rem}.tfs-search-tab-name{display:inline-block;margin:0 1rem .25rem;padding:.18rem .55rem;border-radius:999px;background:#eef6ef;color:#285f39;font-size:.85rem;font-weight:700}.tfs-search-all-link{margin:1rem 0 0}.tfs-search-all-link a{font-weight:700}@media(max-width:480px){.tfs-search-control{display:block}.tfs-search-clear{width:100%;margin-top:.5rem}}
