.sapub .sapub-board-topbar.sapub-has-search{display:grid;grid-template-columns:minmax(0,1fr) 48px auto;gap:10px}
.sapub .sapub-has-search>.sapub-board-action-top{grid-column:1;padding:10px 12px;min-width:0;white-space:nowrap;overflow-wrap:normal;flex-wrap:nowrap}
.sapub .sapub-has-search>.sapub-site-menu{grid-column:3;margin-left:0;min-width:0}
.sapub .sapub-has-search>.sapub-site-menu>summary{padding:10px 18px}
.sapub .sapub-search-trigger{grid-column:2;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:48px;height:48px;padding:0;border:1px solid #e5c0d9;border-radius:50%;background:linear-gradient(135deg,#fff9fc,#efdbef);color:#763751;box-shadow:inset 0 1px 0 #fff,0 3px 12px #0002;cursor:pointer;touch-action:manipulation}
.sapub .sapub-search-trigger:hover{background:#fff3fa}
.sapub-search-trigger:focus-visible,.sapub-search-close:focus-visible,.sapub-search-result:focus-visible{outline:3px solid #ba6b99;outline-offset:3px}
.sapub-person-search{box-sizing:border-box;width:min(540px,calc(100vw - 28px));max-height:85vh;max-height:85dvh;margin:auto;padding:0;background:#fff;color:#493340;border:1px solid #e3cddc;border-radius:24px;box-shadow:0 24px 80px #25151e66;overflow:auto;font-family:inherit;text-align:left}
.sapub-person-search:not([open]){display:none}
.sapub-person-search::backdrop{background:#24182299;backdrop-filter:blur(4px)}
.sapub-search-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:24px;background:linear-gradient(120deg,#faedf5,#efedfc);border-bottom:1px solid #ecdfeb}
.sapub-person-search .sapub-search-header p{margin:0 0 6px;color:#8b617b;font-size:13px;line-height:1.5}
.sapub-person-search .sapub-search-header h2{margin:0;color:#63354e;font-size:24px;line-height:1.5;font-weight:700;text-align:left}
.sapub-search-close{display:flex;align-items:center;justify-content:center;flex-shrink:0;box-sizing:border-box;width:40px;height:40px;padding:0;border:1px solid #e0cdda;border-radius:50%;background:#ffffffc9;color:#795a70;font-size:26px;line-height:1;cursor:pointer}
.sapub-search-content{padding:22px 24px 24px}
.sapub-search-label{display:block;margin-bottom:8px;color:#6e4b61;font-size:14px;font-weight:600}
.sapub-search-input-wrap{display:flex;align-items:center;gap:10px;padding:0 14px;min-height:50px;border:1px solid #d9bed0;border-radius:14px;background:#fffbfd;color:#945675}
.sapub-search-input-wrap:focus-within{border-color:#ad5d8e;box-shadow:0 0 0 3px #b7679520}
.sapub-person-search .sapub-search-input-wrap input{box-sizing:border-box;min-width:0;width:100%;margin:0;padding:13px 0;border:0;border-radius:0;background:transparent;color:#402936;font:inherit;font-size:16px;line-height:1.5;outline:0;box-shadow:none}
.sapub-search-input-wrap>svg{flex-shrink:0}
.sapub-person-search .sapub-search-status{margin:15px 0;color:#8b7182;font-size:14px;line-height:1.6}
.sapub-person-search .sapub-search-results{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.sapub-person-search .sapub-search-result{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border:1px solid #e9d9e6;border-radius:14px;background:linear-gradient(120deg,#fffafd,#f6f2fc);color:#5f354e;text-decoration:none;font-size:17px;line-height:1.7}
.sapub-search-result:hover{border-color:#c494b4;background:#f9edf5}
.sapub-search-result-label{min-width:0;overflow-wrap:anywhere}
.sapub-search-name{font-weight:700}.sapub-search-region{color:#89657c;font-size:14px}
.sapub-search-arrow{flex-shrink:0;color:#9f6188;font-size:26px;line-height:1}
.sapub-person-search.sapub-search-fallback[open]{position:fixed;z-index:99999;inset:50% auto auto 50%;margin:0;transform:translate(-50%,-50%);box-shadow:0 0 0 100vmax #24182299}
@media(max-width:480px){.sapub .sapub-board-topbar.sapub-has-search{gap:8px}.sapub .sapub-has-search>.sapub-site-menu>summary{padding:10px 12px;font-size:16px}.sapub .sapub-has-search>.sapub-board-action-top{font-size:16px}.sapub-person-search{border-radius:20px}.sapub-search-header{padding:20px}.sapub-search-content{padding:20px}.sapub-person-search .sapub-search-header h2{font-size:22px}.sapub-person-search .sapub-search-result{padding:13px 14px;font-size:16px}}
/* Keep the full price-list label on one line beside search and menu. */
.sapub .sapub-has-search>.sapub-board-action-top>span{white-space:nowrap;overflow-wrap:normal;word-break:normal}
@media(max-width:480px){
 .sapub .sapub-board-topbar.sapub-has-search{grid-template-columns:minmax(0,1fr) 44px auto;gap:6px}
 .sapub .sapub-has-search>.sapub-board-action-top{padding:10px 8px;gap:4px;font-size:16px}
 .sapub .sapub-has-search>.sapub-search-trigger{width:44px;height:48px}
 .sapub .sapub-board-topbar.sapub-has-search>.sapub-site-menu>summary,
 .sapub .sapub-board-topbar.sapub-has-search>.sapub-site-menu>.sapub-menu-trigger{padding:10px 12px;gap:6px;font-size:16px;white-space:nowrap}
 .sapub .sapub-has-search>.sapub-site-menu>.sapub-menu-trigger>span{white-space:nowrap;overflow-wrap:normal}
}
@media(max-width:360px){
 .sapub .sapub-board-topbar.sapub-has-search{gap:4px}
 .sapub .sapub-has-search>.sapub-board-action-top{padding:10px 6px;font-size:14px}
 .sapub .sapub-board-topbar.sapub-has-search>.sapub-site-menu>summary,
 .sapub .sapub-board-topbar.sapub-has-search>.sapub-site-menu>.sapub-menu-trigger{padding:10px 8px;gap:4px;font-size:14px}
}

/* Availability is communicated by text as well as muted surfaces. */
.sapub-search-availability{display:block;margin-top:5px;font-size:13px;line-height:1.5;color:#82526f}
.sapub-person-search .sapub-search-result-off{background:#f2f3f4;border-color:#d9dde1;color:#4c535b}
.sapub-search-result-off .sapub-search-region,.sapub-search-result-off .sapub-search-availability,.sapub-search-result-off .sapub-search-arrow{color:#626b75}
.sapub-person-search .sapub-search-result-off:hover{background:#e9edf0;border-color:#a9b2ba}
.sapub .sapub-tokyo-notice{margin:0 0 16px;padding:16px 20px;border:1px solid #e8c8da;border-radius:18px;background:linear-gradient(115deg,#fff4f8,#f5edf7);color:#754358;text-align:left}
.sapub .sapub-tokyo-notice h3{margin:0 0 8px;color:#763950;font-size:17px;line-height:1.5}
.sapub .sapub-tokyo-notice p{margin:5px 0;font-size:14px;line-height:1.75;color:inherit}
.sapub .sapub-tokyo-notice .sapub-tokyo-waiting{margin-top:10px;padding-top:10px;border-top:1px solid #e8ccda}
.sapub .sapub-other-people{margin:32px 0 0;padding-top:22px;border-top:2px solid #d9dfe4;color:#46515c}
.sapub .sapub-other-heading{padding:16px 18px;margin-bottom:18px;border:1px solid #d7dce0;border-radius:16px;background:#f0f2f4}
.sapub .sapub-other-heading h3{margin:0 0 7px;font-size:20px;line-height:1.5}.sapub-other-count{font-size:15px;font-weight:400}
.sapub .sapub-other-heading p:last-child{display:block;margin:0;color:#53606b;font-size:14px;line-height:1.7}
.sapub .sapub-other-region{margin:22px 0 0}.sapub .sapub-other-region h4{margin:0 0 12px;font-size:17px;color:#4f5a64}
.sapub .sapub-card.sapub-card-off{background:#edf0f2;border-color:#cbd3da;box-shadow:0 3px 12px #1e30430c}
.sapub .sapub-card-off .sapub-card-brief{background:#edf0f2;color:#46515c}
.sapub .sapub-card-off .sapub-card-region,.sapub .sapub-card-off .sapub-card-name,.sapub .sapub-card-off .sapub-card-open{color:#4d5a66}
.sapub .sapub-card-off .sapub-placeholder{background:#e1e5e9;color:#6b7681}
.sapub .sapub-off-status{grid-column:1/-1;justify-self:start;margin:7px 0 3px;padding:4px 8px;border:1px solid #c3ccd4;border-radius:8px;background:#e1e6ea;color:#45525e;font-size:12px;line-height:1.5;font-weight:700}
.sapub .sapub-off-booking-note{grid-column:1/-1;margin:3px 0 7px;color:#596674;font-size:12px;line-height:1.5}
.sapub .sapub-card-off .sapub-card-summary:hover .sapub-card-brief{background:#e5e9ed}
.sapub .sapub-card-off .sapub-avatar{filter:grayscale(1);opacity:1}
.sapub .sapub-card-off .sapub-stars svg{filter:drop-shadow(0 1px 1px #59636e26)}
.sapub .sapub-card-off .sapub-stars path{fill:#7b848d;stroke:#59636e}
.sapub .sapub-card-off .sapub-stars path+path{fill:#cfd5da;stroke:none}
.sapub .sapub-person-availability{margin:14px 0;padding:16px 20px;border:1px solid #e8c8da;border-radius:14px;background:linear-gradient(115deg,#fff4f8,#f5edf7);color:#754358;font-size:17px;line-height:1.6}.sapub .sapub-person-availability p{margin:5px 0 0;font-size:14px;color:inherit}
.sapub-person-off .sapub-person-head>img,.sapub-person-off .sapub-photo-grid img{filter:none;opacity:1}
@media(max-width:480px){.sapub .sapub-tokyo-notice{padding:14px 16px}.sapub .sapub-other-heading{padding:14px}.sapub .sapub-other-heading h3{font-size:18px}.sapub .sapub-off-status{font-size:11px;padding:3px 6px}.sapub .sapub-off-booking-note{font-size:11px}}
