/* This root confines all styles to the shortcode. */
.wac-root{width:100%;height:100vh;height:100dvh;overflow:hidden;position:relative}
body.admin-bar .wac-root{height:calc(100vh - 32px);height:calc(100dvh - 32px)}
@media(max-width:782px){body.admin-bar .wac-root{height:calc(100vh - 46px);height:calc(100dvh - 46px)}}
.wac-root{
 --base:#fff;--bg:#eaf0f5;--main:#1e3a5f;--main2:#2d5a8f;--main3:#0f1e3a;
 --accent:#d4af37;--accent2:#f4cf5f;--text:#2c3e50;--muted:#718294;
 --border:#d6e0e8;--ocean:#dceefa;--land:#f4f4ee;--landline:#a9bdc8;
}
.wac-root, .wac-root *{box-sizing:border-box;margin:0;padding:0}
.wac-root{
 font-family:"BIZ UDGothic","Noto Sans JP",system-ui,sans-serif;
 background:var(--bg);color:var(--text);
 display:flex;flex-direction:column;height:100vh;height:100dvh;
}
.wac-root button{font:inherit}
.wac-root canvas{display:block;touch-action:none}
.wac-root #mapCanvas{cursor:grab}
.wac-root .mk-stage{flex:1;min-height:0;position:relative;background:var(--ocean)}
.wac-root .mk-info-card{
 position:absolute;left:10px;top:10px;z-index:15;max-width:min(78vw,320px);
 background:rgba(255,255,255,.95);border:1px solid #d4dee6;border-radius:12px;
 padding:9px 12px;box-shadow:0 4px 14px rgba(15,30,58,.14);pointer-events:none;
 transition:opacity .15s
}
.wac-root .mk-info-card.hidden{opacity:0}
.wac-root .mk-info-flag{font-size:1.3rem;margin-right:5px}
.wac-root .mk-info-name{font-size:.86rem;font-weight:900;color:var(--main);display:inline-block}
.wac-root .mk-info-row{font-size:.74rem;color:var(--text);margin-top:3px;line-height:1.5}
.wac-root .mk-info-row b{color:var(--main2)}
.wac-root .mk-hint{
 position:absolute;left:50%;top:12px;transform:translateX(-50%);z-index:14;
 background:rgba(15,30,58,.82);color:#fff;border-radius:999px;padding:6px 14px;
 font-size:.72rem;font-weight:700;white-space:nowrap;pointer-events:none;transition:opacity .3s
}
.wac-root .mk-hint.hidden{opacity:0}
.wac-root .mk-fabs{position:absolute;right:14px;bottom:14px;z-index:20;display:flex;flex-direction:column;gap:8px;align-items:flex-end}
.wac-root .mk-fab{
 width:52px;height:52px;border:none;border-radius:50%;background:var(--main);color:#fff;
 display:flex;align-items:center;justify-content:center;cursor:pointer;
 box-shadow:0 5px 14px rgba(15,30,58,.28)
}
.wac-root .mk-fab svg{width:24px;height:24px;fill:currentColor}
.wac-root .mk-fab{position:relative}
.wac-root .mk-fab::after{content:attr(data-tooltip);position:absolute;right:calc(100% + 9px);top:50%;
 transform:translateY(-50%);padding:6px 10px;border-radius:7px;background:#203b5d;color:#fff;
 white-space:nowrap;font-size:.75rem;font-weight:700;opacity:0;pointer-events:none;
 transition:opacity .12s;box-shadow:0 3px 10px #0f1e3a44}
.wac-root .mk-fab:hover::after, .wac-root .mk-fab:focus-visible::after{opacity:1}
.wac-root .mk-fab:active{transform:translateY(1px)}
.wac-root .mk-fab.active{background:#e6ad4c;color:#263a50}
@media(max-height:650px){
.wac-root .mk-fabs{gap:5px}
.wac-root .mk-fab{width:44px;height:44px}
.wac-root .mk-fab svg{width:21px;height:21px}
}
.wac-root .mk-settings{
 position:absolute;bottom:80px;right:78px;z-index:35;width:220px;background:#fff;border:1px solid var(--border);
 border-radius:14px;padding:12px;box-shadow:0 12px 32px rgba(15,30,58,.22);display:none
}
.wac-root .mk-settings.open{display:block}
.wac-root .mk-settings h3{font-size:.78rem;color:var(--main);margin-bottom:8px;border-left:4px solid var(--accent);padding-left:7px}
.wac-root .mk-row{display:flex;align-items:center;gap:8px;padding:5px 0;font-size:.76rem}
.wac-root .mk-row input{accent-color:var(--main)}
.wac-root .mk-settings-help{width:100%;margin-top:8px;border:1px solid var(--border);border-radius:8px;
 background:#f5f8fb;color:var(--main);padding:7px;font-size:.75rem;font-weight:800;cursor:pointer}
.wac-root .mk-country-panel{position:absolute;right:78px;bottom:78px;z-index:35;
 width:min(380px,calc(100vw - 95px));max-height:min(65vh,560px);overflow:auto;
 display:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;
 padding:10px;background:#fff;border:1px solid var(--border);border-radius:14px;
 box-shadow:0 12px 32px rgba(15,30,58,.22)}
.wac-root .mk-country-panel.open{display:grid}
.wac-root .mk-country-option{border:1px solid var(--border);border-radius:9px;background:#f5f8fb;
 color:var(--main);padding:8px 6px;font-size:.8rem;font-weight:700;cursor:pointer}
.wac-root .mk-country-option.selected{background:#fff2d1;border-color:#d49a38}
.wac-root .mk-toast{
 position:absolute;left:50%;bottom:16px;transform:translateX(-50%);z-index:100;
 background:rgba(15,30,58,.94);color:#fff;border:1px solid rgba(212,175,55,.5);
 border-radius:10px;padding:8px 13px;font-size:.78rem;opacity:0;pointer-events:none;transition:.18s
}
.wac-root .mk-toast.show{opacity:1}
.wac-root .mk-intro-modal{position:fixed;inset:0;z-index:120;display:flex;align-items:center;justify-content:center;
 padding:16px;background:rgba(15,30,58,.68)}
.wac-root .mk-intro-modal[hidden]{display:none}
.wac-root .mk-intro-card{width:min(480px,100%);padding:24px;border-radius:18px;background:#fff;
 box-shadow:0 18px 60px #0f1e3a55;color:var(--main)}
.wac-root .mk-intro-card h2{font-size:1.25rem;margin-bottom:14px}
.wac-root .mk-intro-card p{font-size:.9rem;line-height:1.75;margin-bottom:10px}
.wac-root .mk-intro-card button{display:block;margin:20px 0 0 auto;border:0;border-radius:10px;
 padding:11px 25px;background:var(--main);color:#fff;font-weight:800;cursor:pointer}
.wac-root .mk-gore-modal{position:fixed;inset:0;z-index:125;display:flex;align-items:center;justify-content:center;
 padding:12px;background:rgba(15,30,58,.72)}
.wac-root .mk-gore-modal[hidden]{display:none}
.wac-root .mk-gore-card{width:100%;height:100%;min-height:0;display:flex;flex-direction:column;gap:10px;
 padding:16px 18px;border-radius:18px;background:#fff;box-shadow:0 18px 60px #0f1e3a66;color:var(--main)}
.wac-root .mk-gore-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;flex:none}
.wac-root .mk-gore-heading h2{font-size:1.15rem;margin-bottom:3px}
.wac-root .mk-gore-heading p{font-size:.78rem;color:var(--muted)}
.wac-root .mk-gore-close{width:44px;height:44px;flex:none;border:1px solid var(--border);border-radius:50%;
 background:#f4f8fb;color:var(--main);font-size:1.4rem;cursor:pointer}
.wac-root .mk-gore-canvas-wrap{flex:1;min-height:0;border:1px solid var(--border);border-radius:14px;
 overflow:hidden;background:#eaf4fb}
.wac-root #goreCanvas{width:100%;height:100%}
.wac-root .mk-gore-controls{display:flex;align-items:center;gap:10px;flex:none;color:var(--main);font-size:.74rem;font-weight:800}
.wac-root .mk-gore-controls button{border:0;border-radius:10px;background:var(--main);color:#fff;padding:9px 15px;
 font-weight:900;cursor:pointer;white-space:nowrap}
.wac-root .mk-gore-controls input{flex:1;accent-color:var(--accent)}
.wac-root .mk-compare-modal{
 position:fixed;inset:0;z-index:90;background:rgba(15,30,58,.65);
 display:flex;align-items:center;justify-content:center;padding:12px;
}
.wac-root .mk-compare-modal[hidden]{display:none}
.wac-root .mk-compare-panel{
 width:100%;height:100%;min-height:0;
 display:flex;flex-direction:column;gap:9px;padding:16px 20px;
 background:#fff;border:1px solid var(--border);border-radius:18px;
 box-shadow:0 18px 60px #0f1e3a55;
}
.wac-root .mk-compare-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.wac-root .mk-compare-title{font-weight:900;font-size:1.13rem;color:var(--main)}
.wac-root .mk-compare-actions{display:flex;align-items:center;gap:8px}
.wac-root .mk-compare-rearrange{border:1px solid var(--border);border-radius:10px;padding:8px 12px;background:#f4f8fb;color:var(--main);font-size:.76rem;font-weight:800;cursor:pointer}
.wac-root .mk-compare-close{width:42px;height:42px;flex:none;border:1px solid var(--border);border-radius:50%;background:#f4f8fb;color:var(--main);cursor:pointer;font-size:1.4rem}
.wac-root .mk-compare-help{font-size:.78rem;color:var(--muted)}
.wac-root .mk-compare-workspace{width:100%;flex:1;min-height:0;display:block;background:#f4f8fb;border:1px solid var(--border);border-radius:14px;touch-action:none}
.wac-root .mk-compare-shape{cursor:grab}
.wac-root .mk-compare-shape:active{cursor:grabbing}
.wac-root .mk-compare-pair{display:flex;justify-content:center;gap:12px;min-height:32px;flex:none}
.wac-root .mk-compare-item{display:flex;align-items:center;gap:7px;min-width:0;padding:6px 10px;border:1px solid var(--border);border-radius:999px;background:#f4f8fb;color:var(--main);font-size:.8rem;white-space:nowrap}
.wac-root .mk-compare-item strong{overflow:hidden;text-overflow:ellipsis}
.wac-root .mk-compare-item small{font-size:.72rem;color:var(--muted)}
.wac-root .mk-compare-swatch{width:14px;height:14px;flex:none;border:1px solid #6689a1;border-radius:4px}
.wac-root .mk-compare-ratio{text-align:center;min-height:1.5em;font-size:.98rem;font-weight:800;color:var(--main)}
.wac-root .mk-compare-choices{display:flex;gap:6px;overflow-x:auto;flex:none;padding:4px 3px 7px;min-height:48px}
.wac-root .mk-compare-choice{flex:none;min-width:76px;min-height:38px;display:flex;align-items:center;justify-content:center;padding:5px 9px;border:1.5px solid var(--border);border-radius:9px;background:#f5f8fb;color:var(--text);font-size:.74rem;font-weight:800;cursor:pointer;white-space:nowrap}
.wac-root .mk-compare-choice.selected{border-color:#c68c28;outline:2px solid #f3d384;background:#fff8e9}
@media(max-width:760px){
.wac-root .mk-info-card{max-width:70vw}
.wac-root .mk-compare-modal{padding:5px}
.wac-root .mk-compare-panel{padding:10px;gap:6px;border-radius:12px}
.wac-root .mk-compare-pair{gap:5px}
.wac-root .mk-compare-item{padding:4px 6px;font-size:.67rem;gap:4px}
.wac-root .mk-compare-item small{display:none}
.wac-root .mk-compare-rearrange{padding:7px 9px;font-size:.69rem}
.wac-root .mk-compare-choices{min-height:42px}
.wac-root .mk-compare-choice{min-height:34px;font-size:.68rem}
.wac-root .mk-hint{max-width:calc(100% - 20px);white-space:normal;text-align:center}
}
.wac-root{box-sizing:border-box;min-height:0}
