#plan .plan-img[role="button"]{cursor:zoom-in}
#plan .plan-img[role="button"]:focus-visible{outline:2px solid #a64e2d;outline-offset:4px}
#plan .sw-plan-hint{font:13px/1.7 var(--tc, sans-serif);letter-spacing:.02em;margin:10px 0;color:inherit;opacity:.85}
.sw-plan-viewer{box-sizing:border-box;width:100vw;max-width:none;height:100dvh;max-height:none;inset:0;margin:0;padding:0;border:0;background:#f5f2eb;color:#29251f;font-family:var(--tc,sans-serif);overflow:hidden}
.sw-plan-viewer[open]{display:flex;flex-direction:column}
.sw-plan-viewer::backdrop{background:rgba(15,14,13,.7)}
.sw-plan-toolbar{position:static!important;pointer-events:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:max(12px,env(safe-area-inset-top)) 16px 12px;border-bottom:1px solid #cfc7ba;flex:none;width:100%;box-sizing:border-box;background:#f5f2eb}
.sw-plan-toolbar h2{margin:0;font-size:18px;font-weight:500;line-height:1.5;letter-spacing:.03em}
.sw-plan-viewer button{min-width:44px;min-height:44px;padding:8px 12px;border:1px solid #b6aa98;border-radius:4px;background:#f5f2eb;color:#29251f;font-family:inherit;font-size:14px;line-height:1.4;cursor:pointer}
.sw-plan-viewer button:focus-visible,.sw-plan-pan:focus-visible{outline:2px solid #a64e2d;outline-offset:-3px}
.sw-plan-viewer button:disabled{opacity:.4;cursor:default}
.sw-plan-pan{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;background:#f5f2eb}
.sw-plan-canvas{position:relative;max-width:none;max-height:none;margin:auto}
.sw-plan-canvas img{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain}
.sw-plan-tools{display:flex;align-items:center;justify-content:center;gap:10px;padding:12px 16px max(12px,env(safe-area-inset-bottom));border-top:1px solid #cfc7ba;flex:none}
.sw-plan-tools output{min-width:48px;text-align:center;font-size:13px}
#box .nav{display:flex;align-items:center;justify-content:center;width:44px;height:44px;box-sizing:border-box;padding:0;border:1px solid rgba(255,255,255,.55);border-radius:4px;background:rgba(15,14,13,.78);color:#fff;opacity:1;font-size:28px;line-height:1}
#box .nav:hover{background:rgba(15,14,13,.95)}
#box .x{min-height:44px;box-sizing:border-box;display:flex;align-items:center;justify-content:center}
@media(max-width:800px){#box #prev{left:12px}#box #next{right:12px}}
