/* Notices stay in normal document flow above the existing sticky navigation. */
.nf-catalog-notices{position:relative;z-index:5;width:100%;font-size:14px;line-height:1.65;color:#293b30}
.nf-catalog-notice{margin:0!important;border:0!important;border-bottom:1px solid #dce6de!important;border-radius:0!important;background:#f1f7f2;box-shadow:none!important}
.nf-catalog-notice.is-important{background:#fff6e6;color:#5d420b;border-bottom-color:#e6d0a0!important}
.nf-catalog-notice.is-emergency{background:#8c252d;color:#fff;border-bottom-color:#7c1721!important}
.nf-catalog-notice>summary{display:flex;align-items:center;gap:12px;list-style:none;cursor:pointer;width:min(1240px,calc(100% - 40px));margin:0 auto;padding:12px 0;font-weight:700;box-sizing:border-box}
.nf-catalog-notice>summary::-webkit-details-marker{display:none}
.nf-catalog-notice>summary:focus-visible{outline:3px solid currentColor;outline-offset:-3px}
.nf-catalog-notice__label,.nf-catalog-notice__badge{flex:none;padding:1px 9px;border:1px solid currentColor;border-radius:4px;font-size:12px;line-height:1.7}
.nf-catalog-notice__title{flex:1;min-width:0;overflow-wrap:anywhere}
.nf-catalog-notice__date{flex:none;font-size:12px;opacity:.8;font-weight:400}
.nf-catalog-notice__toggle{flex:none;font-size:12px;white-space:nowrap}
.nf-catalog-notice__body{width:min(1240px,calc(100% - 40px));margin:0 auto;padding:0 0 15px;overflow-wrap:anywhere}
.nf-catalog-notice__body p{margin:0 0 8px;line-height:1.8}
.nf-catalog-notice__body a{color:inherit!important;text-decoration:underline;text-underline-offset:3px;font-weight:700}
.nf-catalog-notice__body time{font-size:12px;opacity:.85}
.nf-catalog-notice[open]>summary{padding-bottom:7px}
.nf-content-hub{max-width:1100px}.nf-content-hub .nf-page-heading{margin:15px 0 22px}
.nf-notices-admin{max-width:980px}.nf-notices-admin *{box-sizing:border-box}
.nf-notice-form,.nf-notices-admin__list,.nf-notices-admin__emergency{background:#fff;border:1px solid #dce4de;border-radius:12px;padding:22px;margin:18px 0}
.nf-notice-form h2,.nf-notices-admin h2{margin-top:0}
.nf-notice-form label{font-weight:600}.nf-notice-form input[type=text],.nf-notice-form input[type=url],.nf-notice-form textarea{width:100%;max-width:100%}
.nf-notice-form textarea{min-height:130px;line-height:1.7}.nf-notice-form .description{font-weight:400}
.nf-notice-form details,.nf-content-settings{border:1px solid #dce4de;border-radius:10px;background:#f8faf8;padding:16px;margin-top:18px;max-width:980px}
.nf-notice-form details>summary,.nf-content-settings>summary{cursor:pointer;font-weight:700;line-height:1.6}
.nf-notice-form details[open]>summary,.nf-content-settings[open]>summary{margin-bottom:16px}
.nf-notice-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:20px}
.nf-notice-preview{border-left:4px solid #318348;background:#f1f7f2;padding:14px 18px;margin:16px 0;white-space:pre-wrap;overflow-wrap:anywhere}
.nf-notice-form [hidden]{display:none!important}
.nf-notice-search-results{border:1px solid #ccd8ce;background:white;max-height:240px;overflow:auto;margin:0;padding:0;list-style:none}
.nf-notice-search-results button{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid #e4eae5;background:white;padding:10px 12px;cursor:pointer}
.nf-notice-search-results button:hover,.nf-notice-search-results button:focus-visible{background:#edf6ee}
.nf-notices-admin table{width:100%;border-collapse:collapse}.nf-notices-admin th,.nf-notices-admin td{text-align:left;padding:10px;border-bottom:1px solid #e2e8e3;vertical-align:top}
.nf-notice-selected{padding:10px 12px;background:#edf6ee;border-radius:6px;margin:8px 0}
@media(max-width:600px){.nf-catalog-notices{font-size:13px}.nf-catalog-notice>summary,.nf-catalog-notice__body{width:calc(100% - 28px)}.nf-catalog-notice>summary{gap:8px;align-items:flex-start;padding:10px 0}.nf-catalog-notice__date{display:none}.nf-catalog-notice__toggle{padding-top:2px}.nf-catalog-notice__label,.nf-catalog-notice__badge{font-size:10px;padding:1px 6px}.nf-notice-form,.nf-notices-admin__list,.nf-notices-admin__emergency{padding:16px}.nf-notices-admin table,.nf-notices-admin tbody,.nf-notices-admin tr,.nf-notices-admin td{display:block}.nf-notices-admin thead{display:none}.nf-notices-admin td{padding:6px 0;border:0}.nf-notices-admin tr{padding:12px 0;border-bottom:1px solid #dde5df}}
@media print{.nf-catalog-notices{display:none}}

.nf-catalog-notice>summary::after{content:"詳しく ⌄";flex:none;font-size:12px;font-weight:500;white-space:nowrap;margin-left:auto}.nf-catalog-notice[open]>summary::after{content:"閉じる ⌃"}
/* The editor shares the existing content hub; advanced controls stay collapsed. */
.nf-notice-field{display:block;margin:0 0 18px}.nf-notice-field>span{display:block;margin-bottom:6px;font-weight:600}.nf-notice-field select{min-width:200px;max-width:100%}
.nf-notice-field input[type=search]{width:100%;max-width:100%}.nf-notice-dates{display:flex;flex-wrap:wrap;gap:12px 24px}.nf-notice-dates .nf-notice-field{margin-bottom:0}.nf-notice-options__fields>.description{margin-bottom:0}
.nf-notice-selected-product{padding:10px 12px;background:#edf6ee;border-radius:6px;margin:8px 0;overflow-wrap:anywhere}.nf-notice-product-results{max-height:260px;overflow:auto}.nf-notice-product-results:not(:empty){border:1px solid #ccd8ce;background:#fff;margin:10px 0}
.nf-notice-product-results .nf-notice-product-result{display:block;width:100%;height:auto;white-space:normal;text-align:left;border:0;border-bottom:1px solid #e4eae5;border-radius:0;background:#fff;padding:10px 12px;line-height:1.6}.nf-notice-product-result:hover,.nf-notice-product-result:focus-visible{background:#edf6ee}
.nf-notice-list{background:#fff;border:1px solid #dce4de;border-radius:12px;padding:0 20px;margin:16px 0 28px}.nf-notice-list__item{display:flex;align-items:center;flex-wrap:wrap;gap:12px;border-top:1px solid #e0e7e2;padding:16px 0}.nf-notice-list__item:first-child{border-top:0}.nf-notice-list__item>div{flex:1;min-width:180px}.nf-notice-list__item>p{margin:0}.nf-notice-list__item form{margin:0}.nf-notice-state{display:inline-block;padding:2px 8px;margin-left:5px;border-radius:4px;background:#edf3ee;font-size:12px;font-weight:400}.nf-notice-preview{white-space:normal}.nf-notice-preview>details{border-radius:0;padding:0;margin:0;max-width:none}.nf-notice-preview>details>summary{margin-bottom:0}
@media(max-width:600px){.nf-notice-form{padding:16px}.nf-notice-list{padding:0 14px}.nf-notice-dates{display:block}.nf-notice-dates .nf-notice-field{margin-bottom:16px}.nf-notice-list__item>div{flex-basis:100%}.nf-notice-actions .button{min-height:36px}.nf-notice-preview{padding:10px}}
/* On phones, give the heading its own full-width line below the notice label. */
@media(max-width:600px){
.nf-catalog-notices>.nf-catalog-notice{padding:0!important}
.nf-catalog-notice>summary{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:12px;row-gap:7px;align-items:center;width:calc(100% - 32px);padding:12px 0}
.nf-catalog-notice__badge,.nf-catalog-notice__label{grid-row:1;grid-column:1;justify-self:start;font-size:11px;padding:1px 7px}
.nf-catalog-notice>summary::after{grid-row:1;grid-column:2;margin-left:0;font-size:12px}
.nf-catalog-notice__title{grid-row:2;grid-column:1 / -1;width:100%;font-size:14px;line-height:1.6;font-weight:700}
.nf-catalog-notice__body{width:calc(100% - 32px);padding:0 0 16px;font-size:13px;line-height:1.8}
.nf-catalog-notice[open]>summary{padding-bottom:8px}
.nf-catalog-notice__body p:last-child{margin-bottom:0}
}

/* Keep the desktop notice slim by removing the theme's details padding. */
.nf-catalog-notices>.nf-catalog-notice{padding:0!important}
@media(min-width:601px){
.nf-catalog-notice>summary{min-height:44px;padding:8px 0}
.nf-catalog-notice__body{padding-bottom:12px}
}
/* Shared editorial controls for normal notices and emergency bands. */
.nf-catalog-notice.has-custom-color{background:var(--nf-notice-background);color:var(--nf-notice-foreground);border-bottom-color:var(--nf-notice-background)!important}
.nf-catalog-notice.has-custom-color>summary,.nf-catalog-notice.has-custom-color .nf-catalog-notice__body,.nf-catalog-notice.has-custom-color .nf-catalog-notice__title,.nf-catalog-notice.has-custom-color .nf-catalog-notice__badge,.nf-catalog-notice.has-custom-color a{color:var(--nf-notice-foreground)!important}
.nf-notice-appearance{display:grid;grid-template-columns:minmax(190px,1fr) minmax(300px,2fr);gap:16px 24px;align-items:start;margin-top:20px}.nf-notice-color>label{display:block;margin-bottom:8px;font-weight:600}.nf-notice-color-controls{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.nf-notice-color-controls input[type=color]{width:52px;height:36px;padding:3px;background:#fff;border:1px solid #8c8f94;border-radius:5px;cursor:pointer;flex:none}.nf-notice-color-value{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px;color:#50575e}.nf-notice-list__actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;flex:0 1 auto!important;min-width:0!important}.nf-notice-list__actions form{margin:0}.nf-notice-trash{border:1px solid #dce4de;border-radius:10px;background:#f8faf8;padding:16px;margin-bottom:22px;max-width:980px}.nf-notice-trash>summary{cursor:pointer;font-weight:600}.nf-notice-trash[open]>summary{margin-bottom:12px}.nf-notice-trash .nf-notice-list{margin-bottom:0}.nf-notice-trash .nf-notice-list__item>strong{flex:1;min-width:180px}
@media(max-width:700px){.nf-notice-appearance{grid-template-columns:1fr;gap:0}.nf-notice-list__actions{flex-basis:100%!important}.nf-notice-color-controls{gap:8px}.nf-notice-trash{padding:14px}}
/* Background and text colors are editable together; automatic text remains the default. */
.nf-notice-appearance{grid-template-columns:minmax(150px,.8fr) minmax(230px,1.1fr) minmax(230px,1.1fr);gap:18px}
.nf-notice-text-color-value{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px;color:#50575e}
@media(max-width:1000px){.nf-notice-appearance{grid-template-columns:repeat(2,minmax(0,1fr))}.nf-notice-appearance>.nf-notice-field:first-child{grid-column:1 / -1;margin-bottom:0}}
@media(max-width:700px){.nf-notice-appearance{grid-template-columns:1fr;gap:0}.nf-notice-appearance>.nf-notice-field:first-child{grid-column:auto;margin-bottom:18px}}
