body.generator-embedded { min-height:100vh; background:#faf9f4; color:#193c44; }
.embed-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; max-width:640px; margin:auto; padding:16px 18px 10px; }
.embed-heading h1 { font-size:1.15rem; line-height:1.3; margin:4px 0 0; }
.embed-heading>span { flex-shrink:0; font-size:.75rem; background:#e7efea; border-radius:99px; padding:7px 10px; }
body.generator-embedded .generator-page-main { padding:0; min-height:0; }
body.generator-embedded .generator-app { display:flex; flex-direction:column; min-height:0; gap:0; }
body.generator-embedded .control-panel { width:100%!important; max-width:640px; margin:auto; padding:4px 18px; min-height:0!important; max-height:none; overflow:visible; border:0; box-shadow:none; background:transparent; }
body.generator-embedded .control-stack { gap:8px; }
body.generator-embedded .primary-actions { display:grid; grid-template-columns:1fr 1fr 1fr; gap:8px; margin:0!important; }
body.generator-embedded .primary-actions button { min-height:44px; padding:8px; font-size:.85rem; }
body.generator-embedded .map-tools { display:block!important; margin:0; padding:0; }
body.generator-embedded .map-loader { display:flex; gap:6px; flex-wrap:nowrap; padding:8px; }
body.generator-embedded .map-loader>label { font-size:.75rem; flex:0 0 auto; }
body.generator-embedded .map-code-entry { display:flex; flex:1 1 120px; min-width:0; width:auto; gap:6px; }
body.generator-embedded #hashInput { min-width:0; width:100%; font-size:.9rem; padding:6px 8px; min-height:36px; }
body.generator-embedded .load-map-button,body.generator-embedded .shareMapUrl { width:auto; min-width:0; min-height:44px; font-size:.75rem; padding:6px 9px; flex:0 0 auto; white-space:nowrap; }
body.generator-embedded .generator-save-status,body.generator-embedded .generator-share-status { font-size:.75rem; margin:4px 0 0; line-height:1.4; }
body.generator-embedded .generator-share-status:empty { display:none; }
body.generator-embedded .board-stage { --board-size:min(calc(100vw - 24px),max(250px,calc(100vh - 350px)),560px); display:flex; justify-content:center; min-height:0; padding:8px 12px; }
body.generator-embedded #board { flex:0 0 auto; margin:0!important; }
body.generator-embedded .font-size-wrap { font-size:calc(var(--board-size) * .037); }
body.generator-embedded .prob-dots-base { font-size:calc(var(--board-size) * .0235); }
body.generator-embedded #interactiveIntersectionsLayer { display:none; }
.embed-credit { display:block; margin:0 auto; padding:10px 12px 16px; max-width:640px; text-align:center; font-size:.8rem; line-height:1.6; }
.embed-credit>a { font-weight:700; text-underline-offset:3px; }
.embed-credit p { margin:5px 0; }
.embed-credit p span { color:#d62828; }
.embed-credit small { font-size:.7rem; color:#53696d; }
.embed-credit a:hover { color:#b8462e; }
body.generator-embedded #popmenu { max-height:calc(100vh - 24px); overflow:auto; max-width:calc(100vw - 24px); }
body.generator-embedded #popmenu .menu-row { min-height:40px; }
body.generator-embedded #popmenu input[type=checkbox] { width:22px; height:22px; flex:none; }
body.generator-embedded .mapCapture { overflow:auto; }
body.generator-embedded .canva-wrapper { width:min(90vw,520px); margin:10px auto 24px; }
body.generator-embedded .canvas-map { display:block; max-width:100%; height:auto; max-height:none; }
@media(max-width:360px) { .embed-heading { padding-inline:12px; } body.generator-embedded .control-panel { padding-inline:12px; } body.generator-embedded .map-loader>label { display:none; } }
