.toosukun-shell-header,.toosukun-shell-footer{box-sizing:border-box;color:#222622;background:#fff;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP",sans-serif}
/* No dialog: a full-viewport bootstrap veil, independent of Review/Rewrite locks. */
body.security-loading{overflow:hidden}
body.security-loading > [inert]{filter:blur(5px);pointer-events:none;user-select:none}
.security-loading-overlay{position:fixed;inset:0;z-index:10000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:24px;background:rgba(245,245,241,.65);color:#202427;text-align:center;outline:none;box-sizing:border-box;font:500 15px/1.6 system-ui,sans-serif}
.security-loading-overlay p{margin:0;max-width:32em}
.security-loading-overlay button{padding:10px 18px;min-height:44px;border:1px solid #69706a;border-radius:10px;background:#fff;color:#202427;cursor:pointer}
.security-loading-ring{width:40px;height:40px;border:4px solid #ced8f0;border-top-color:#3f64c9;border-radius:50%;animation:security-loading-spin 1s linear infinite;box-sizing:border-box}
@keyframes security-loading-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.security-loading-ring{animation:none}}
.toosukun-shell-header *,.toosukun-shell-footer *{box-sizing:border-box}
.toosukun-shell-header a,.toosukun-shell-footer a{color:inherit;text-decoration:none}
.toosukun-shell-header{position:relative;z-index:30;min-height:68px;padding:10px max(20px,calc((100vw - 1180px)/2));display:flex;align-items:center;gap:24px;border-bottom:1px solid #d8dcd4}
.toosukun-shell-brand{display:inline-flex;flex:0 0 auto;align-items:center;gap:9px;font-weight:900;white-space:nowrap}
.toosukun-shell-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#222622;color:#fff}
.toosukun-shell-desktop{display:flex;align-items:center;gap:20px;margin-left:auto}
.toosukun-shell-desktop a,.toosukun-shell-actions a,.toosukun-shell-menu summary{font-size:14px;font-weight:750;white-space:nowrap}
.toosukun-shell-actions{display:flex;align-items:center;gap:12px}
.toosukun-shell-cta{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 14px;border-radius:10px;background:#222622;color:#fff!important}
.toosukun-shell-header a[data-current-page]{opacity:.5;cursor:default;text-decoration:none}
/* Shared public popup entrance. Visibility and busy locks remain immediate. */
@keyframes toosukun-popup-enter{from{opacity:0;filter:blur(5px)}to{opacity:1;filter:blur(0)}}
@keyframes toosukun-backdrop-enter{from{opacity:0}to{opacity:1}}
.modal-wrap.open,.dev-modal.is-open,.rewrite-modal.is-open,dialog[open],.toast.show{animation:toosukun-popup-enter .5s ease-out}
dialog[open]::backdrop{animation:toosukun-backdrop-enter .5s ease-out}
.toosukun-confirm{width:min(460px,calc(100% - 32px));border:1px solid #d8dcd4;border-radius:18px;padding:24px;color:#202427;background:#fff}
.toosukun-confirm p{line-height:1.8;margin:0 0 20px}
.toosukun-confirm .confirm-actions{display:flex;justify-content:flex-end;gap:12px;flex-wrap:wrap}
.toosukun-confirm button{min-height:44px;padding:8px 16px;border:1px solid #b9c1bb;border-radius:10px;cursor:pointer}
.toosukun-confirm::backdrop{background:#171b1d66;backdrop-filter:blur(5px)}
@media(prefers-reduced-motion:reduce){.modal-wrap.open,.dev-modal.is-open,.rewrite-modal.is-open,dialog[open],dialog[open]::backdrop,.toast.show{animation:none!important;transition:none!important}}
.toosukun-shell-mobile-mypage,.toosukun-shell-menu{display:none}
.toosukun-shell-menu{padding:0;border:0;border-radius:0;background:transparent}
.toosukun-shell-footer{border-top:1px solid #d8dcd4;padding:28px 20px;text-align:center}
.toosukun-shell-footer nav{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 22px}
.toosukun-shell-footer a{font-size:14px}
.toosukun-shell-footer p{margin:16px 0 0;color:#69706a;font-size:13px}
@media(max-width:900px){.toosukun-shell-header{padding:10px 16px;gap:10px}.toosukun-shell-desktop{display:none}.toosukun-shell-actions{margin-left:auto;gap:8px}.toosukun-shell-mobile-mypage,.toosukun-shell-menu{display:inline-block}.toosukun-shell-menu{position:relative}.toosukun-shell-menu summary{cursor:pointer;list-style:none;border:1px solid #d8dcd4;border-radius:10px;padding:7px 9px}.toosukun-shell-menu summary::-webkit-details-marker{display:none}.toosukun-shell-menu nav{position:absolute;right:0;top:calc(100% + 7px);display:grid;gap:3px;min-width:150px;padding:8px;border:1px solid #d8dcd4;border-radius:12px;background:#fff;box-shadow:0 12px 28px #0002}.toosukun-shell-menu nav a{padding:7px 9px;font-size:14px}}
@media(max-width:420px){.toosukun-shell-header{padding:8px 9px;gap:6px}.toosukun-shell-brand{gap:5px;font-size:13px}.toosukun-shell-mark{width:29px;height:29px}.toosukun-shell-actions{gap:5px}.toosukun-shell-actions a,.toosukun-shell-menu summary{font-size:12px}.toosukun-shell-cta{min-height:33px;padding:0 8px}.toosukun-shell-menu summary{padding:6px}}
