.wfm-plan{--wfm-bg:#f7f7f7;--wfm-panel:#fff;--wfm-ink:#1d1a19;--wfm-muted:#7c7370;--wfm-line:#e2dcd7;--wfm-accent:#ee5b1c;--wfm-accent-soft:rgba(238,91,28,.1);--wfm-hover:rgba(238,91,28,.35);--wfm-sel:rgba(238,91,28,.3);display:flex;gap:14px;min-height:min(78vh,820px);height:min(78vh,820px);background:var(--wfm-bg);color:var(--wfm-ink);font:15px/1.45 system-ui,-apple-system,Segoe UI,sans-serif}.wfm-plan-side{width:330px;flex:0 0 330px;display:flex;flex-direction:column;background:var(--wfm-panel);border:1px solid var(--wfm-line);overflow:hidden}.wfm-plan-brand{padding:16px 18px 12px;border-bottom:1px solid var(--wfm-line)}.wfm-plan-brand-title{margin:0;font-size:17px;font-weight:650;letter-spacing:-.2px}.wfm-plan-brand-sub{margin:3px 0 0;font-size:12.5px;color:var(--wfm-muted)}.wfm-plan-chips{margin-top:8px;display:flex;gap:6px;flex-wrap:wrap}.wfm-plan-chips span{font-size:11.5px;padding:3px 8px;background:var(--wfm-accent-soft);color:var(--wfm-accent);font-weight:600}.wfm-plan-search{padding:12px 14px;border-bottom:1px solid var(--wfm-line);position:relative}.wfm-plan-search input{width:100%;padding:9px 30px 9px 12px;font:inherit;font-size:14px;color:var(--wfm-ink);background:#faf8f7;border:1px solid var(--wfm-line);outline:none}.wfm-plan-search input:focus{border-color:var(--wfm-accent);background:#fff;box-shadow:0 0 0 3px var(--wfm-accent-soft)}.wfm-plan-clear{position:absolute;right:22px;top:50%;transform:translateY(-50%);border:0;background:none;cursor:pointer;color:var(--wfm-muted);font-size:17px;line-height:1;padding:4px}.wfm-plan-count{padding:8px 18px;font-size:12px;color:var(--wfm-muted);border-bottom:1px solid var(--wfm-line);background:#fbfaf9}.wfm-plan-list{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:6px 8px 16px}.wfm-plan-ghdr{padding:12px 10px 5px;font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--wfm-muted)}.wfm-plan-item{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:8px 10px;border:0;background:none;cursor:pointer;font:inherit;color:inherit}.wfm-plan-item:hover{background:#f6f2f0}.wfm-plan-item.active{background:var(--wfm-accent);color:#fff}.wfm-plan-item.active .wfm-plan-code{background:hsla(0,0%,100%,.22);color:#fff}.wfm-plan-item.active .wfm-plan-alt{color:hsla(0,0%,100%,.8)}.wfm-plan-item.active mark{background:hsla(0,0%,100%,.35);color:#fff}.wfm-plan-code{flex:0 0 auto;min-width:34px;text-align:center;padding:3px 6px;background:#efe9e5;color:#6a5f5a;font-size:11.5px;font-weight:700}.wfm-plan-code.blank{background:transparent;color:#bcb3ae}.wfm-plan-nm{flex:1;min-width:0}.wfm-plan-nm b{font-weight:550;font-size:14px}.wfm-plan-alt,.wfm-plan-nm b{display:block;overflow-wrap:anywhere}.wfm-plan-alt{font-size:11.5px;color:var(--wfm-muted)}.wfm-plan mark{background:#ffe08a;color:inherit;border-radius:3px;padding:0 1px}.wfm-plan-empty{padding:26px 16px;text-align:center;color:var(--wfm-muted);font-size:13px}.wfm-plan-map{flex:1;min-width:0;position:relative;background:var(--wfm-panel);border:1px solid var(--wfm-line);overflow:hidden}.wfm-plan-viewport{position:absolute;inset:0;overflow:hidden;background:#fff}.wfm-plan-stage{position:absolute;transform-origin:0 0}.wfm-plan-stage img{display:block;width:100%;height:100%;-webkit-user-drag:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none}.wfm-plan-stage svg{position:absolute;inset:0;width:100%;height:100%}.wfm-plan-z{fill:transparent;stroke:transparent;stroke-width:2;vector-effect:non-scaling-stroke;cursor:pointer;transition:fill .15s,stroke .15s,opacity .15s}.wfm-plan-z:hover{fill:var(--wfm-hover);stroke:var(--wfm-accent)}.wfm-plan-z.on{fill:var(--wfm-sel);stroke:var(--wfm-accent);stroke-width:3}.wfm-plan-z.dim{opacity:.2}.wfm-plan-badge{position:absolute;left:14px;top:14px;z-index:5;display:flex;align-items:center;gap:9px;padding:8px 13px;background:hsla(0,0%,100%,.96);border:1px solid var(--wfm-line);max-width:min(60%,420px)}.wfm-plan-badge b{font-size:14px;font-weight:600}.wfm-plan-badge>div span{display:block;font-size:11.5px;color:var(--wfm-muted)}.wfm-plan-badge>button{border:0;background:none;cursor:pointer;color:var(--wfm-muted);font-size:17px;padding:0 0 0 4px}.wfm-plan-badge>button:hover{color:var(--wfm-accent)}.wfm-plan .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.wfm-plan-mobile-hint{display:none}@media (max-width:860px){.wfm-plan{flex-direction:column;gap:0;width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);border-top:1px solid var(--wfm-line);border-bottom:1px solid var(--wfm-line);background:var(--wfm-panel)}.wfm-plan,.wfm-plan-map{height:auto;min-height:0}.wfm-plan-map{order:-1;flex:0 0 auto;width:100%;aspect-ratio:1601.62/1010;max-height:min(58dvh,420px);border:0;border-bottom:1px solid var(--wfm-line)}.wfm-plan-brand{display:none}.wfm-plan-side{order:1;width:auto;flex:0 0 auto;max-height:none;border:0;border-top:0}.wfm-plan-search{position:sticky;top:0;z-index:2;background:var(--wfm-panel);padding:10px 12px}.wfm-plan-search input{font-size:16px;padding:11px 34px 11px 12px}.wfm-plan-count{padding:6px 14px}.wfm-plan-list{flex:none;max-height:min(48dvh,380px);padding:4px 6px 20px;-webkit-overflow-scrolling:touch}.wfm-plan-item{padding:11px 10px;min-height:48px}.wfm-plan-ghdr{padding:14px 10px 4px}.wfm-plan-badge{left:8px;right:8px;top:auto;bottom:8px;max-width:none;padding:10px 12px;box-shadow:0 4px 16px rgba(29,26,25,.12)}.wfm-plan-badge b{font-size:15px}.wfm-plan-z{stroke-width:3}.wfm-plan-z.on{stroke-width:4}.wfm-plan-z:hover{fill:transparent;stroke:transparent}.wfm-plan-z.on:hover,.wfm-plan-z:active{fill:var(--wfm-sel);stroke:var(--wfm-accent)}.wfm-plan-mobile-hint{display:block;position:absolute;left:8px;right:8px;bottom:8px;z-index:4;margin:0;padding:7px 10px;font-size:12px;text-align:center;color:var(--wfm-muted);background:hsla(0,0%,100%,.92);border:1px solid var(--wfm-line);pointer-events:none}}@media (max-width:420px){.wfm-plan-map{max-height:min(50dvh,280px)}.wfm-plan-list{max-height:min(52dvh,420px)}}