.kasekiru-interactive-embed{box-sizing:border-box;width:100%;max-width:100%;min-width:0;margin-block:1.5em;clear:both}
.kasekiru-interactive-frame{box-sizing:border-box;display:block;width:100%;max-width:100%;min-width:0;height:var(--kasekiru-experience-height,720px);border:0}
.kasekiru-interactive-toolbar{display:flex;justify-content:flex-end;margin-block-end:.5em}
.kasekiru-interactive-fullscreen{font:inherit;line-height:1.4;cursor:pointer;padding:.45em .85em}
.kasekiru-interactive-fullscreen[hidden]{display:none}
.kasekiru-interactive-embed:fullscreen{display:flex;flex-direction:column;margin:0;padding:.5rem;background:Canvas;color:CanvasText}
.kasekiru-interactive-embed:fullscreen .kasekiru-interactive-frame{height:auto;flex:1;min-height:0}
.kasekiru-interactive-archive{box-sizing:border-box;max-width:var(--wp--style--global--wide-size,1120px);margin-inline:auto;padding:clamp(1rem,4vw,3rem) 1rem}
.kasekiru-interactive-intro{margin-block-end:2rem}
.kasekiru-interactive-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:2rem}
.kasekiru-interactive-card{min-width:0;margin:0}
.kasekiru-interactive-card img{display:block;max-width:100%;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover}
.kasekiru-interactive-card h2{font-size:1.5em;line-height:1.3;margin-block:.8em .4em}
.kasekiru-interactive-card .entry-summary{margin-block:.75em}
.kasekiru-interactive-archive .navigation{margin-block-start:2rem}
.kasekiru-interactive-inline[hidden]{display:none}
.kasekiru-interactive-inline{margin-top:1.5rem;padding:1rem 0;scroll-margin-top:5rem;overflow-wrap:anywhere}
.kasekiru-interactive-overlay{box-sizing:border-box;position:fixed;inset:0;margin:auto;padding:0;border:1px solid color-mix(in srgb,currentColor 20%,transparent);border-radius:.4rem;width:min(94vw,960px);max-width:94vw;max-height:92vh;max-height:92dvh;background:var(--wp--preset--color--base,Canvas);color:var(--wp--preset--color--contrast,CanvasText);font-family:inherit;font-size:inherit;line-height:1.65;z-index:2147483640;overflow:hidden;box-shadow:0 1rem 4rem #0004}
.kasekiru-interactive-overlay[open]{display:flex;flex-direction:column}
.kasekiru-interactive-overlay::backdrop{background:#0006}
.kasekiru-interactive-overlay[data-mode=small]{width:min(92vw,480px);max-height:80vh;max-height:80dvh}
.kasekiru-interactive-overlay[data-mode=large]{height:86vh;height:86dvh}
.kasekiru-interactive-overlay[data-mode=overlay]{width:96vw;max-width:96vw;height:94vh;height:94dvh;max-height:94vh;max-height:94dvh}
.kasekiru-interactive-overlay[data-mode=panel]{inset:0 0 0 auto;margin:0;width:min(92vw,520px);max-width:92vw;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;border-radius:0}
.kasekiru-interactive-overlay-header{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 1rem;border-bottom:1px solid color-mix(in srgb,currentColor 20%,transparent)}
.kasekiru-interactive-overlay-header h2{font-size:1.3em;line-height:1.4;margin:0;overflow-wrap:anywhere;color:inherit}
.kasekiru-interactive-close{font:inherit;line-height:1.3;flex-shrink:0;cursor:pointer;padding:.5rem .75rem}
.kasekiru-interactive-close:focus-visible,.kasekiru-interactive-overlay a:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.kasekiru-interactive-overlay-body{min-height:0;overflow:auto;overscroll-behavior:contain;padding:1rem;flex:1}
.kasekiru-interactive-tool{display:block;box-sizing:border-box;width:100%;max-width:100%;height:100%;min-height:360px;border:0}
.kasekiru-interactive-overlay[data-mode=small] .kasekiru-interactive-tool{height:55vh;height:55dvh;min-height:200px}
.kasekiru-interactive-story{overflow-wrap:anywhere}
.kasekiru-interactive-story img,.kasekiru-interactive-story video{max-width:100%;height:auto}
.kasekiru-interactive-story pre,.kasekiru-interactive-story table{max-width:100%;overflow:auto}
@media(max-width:600px){.kasekiru-interactive-overlay-header,.kasekiru-interactive-overlay-body{padding:.75rem}.kasekiru-interactive-tool{min-height:220px}}

.kasekiru-interactive-story-loading{margin:0;color:color-mix(in srgb,currentColor 62%,transparent)}
.kasekiru-interactive-story-error{display:grid;gap:.75rem}
.kasekiru-interactive-story-error p{margin:0}
