.tt-world-wrap{
  --tt-bg:#050b18;
  --tt-line:rgba(255,255,255,.16);
  position:relative;
  background:radial-gradient(circle at 35% 20%,var(--tt-bg-1,#10274c) 0,var(--tt-bg-2,#071224) 42%,var(--tt-bg-3,#020610) 100%);
  color:var(--tt-text,#fff);
  border-radius:24px;
  overflow:hidden;
  padding:22px;
  font-family:var(--tt-font,Inter,system-ui,-apple-system,Segoe UI,sans-serif);
  box-shadow:0 30px 90px rgba(0,0,0,.35);
}
.tt-world-wrap h1,.tt-world-wrap h2,.tt-world-wrap h3{font-family:var(--tt-heading-font,inherit)}
.tt-world-header{display:flex;justify-content:space-between;gap:16px;align-items:center;position:relative;z-index:3}
.tt-world-header h2{margin:0;font-size:clamp(28px,4vw,48px);line-height:1;color:var(--tt-text,#fff)}
.tt-world-header p,.tt-muted{margin:.5rem 0 0;color:var(--tt-muted-text,rgba(255,255,255,.72))}
.tt-world-open-form,.tt-submit-story{border:1px solid rgba(255,255,255,.22);background:var(--tt-button-bg,#0a84ff);color:var(--tt-button-text,#fff);border-radius:14px;padding:12px 18px;font-weight:800;cursor:pointer;box-shadow:0 12px 30px rgba(10,132,255,.25)}
.tt-world-stage{position:relative;min-height:var(--tt-world-height,680px)}
.tt-world-canvas{position:absolute;inset:0;cursor:grab}
.tt-world-canvas:active{cursor:grabbing}
.tt-world-help{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);background:rgba(8,14,28,.78);border:1px solid var(--tt-line);border-radius:999px;padding:10px 16px;color:var(--tt-text,#fff);backdrop-filter:blur(10px);z-index:2;white-space:nowrap}
.tt-world-popup{position:absolute;right:18px;top:80px;width:min(360px,calc(100% - 36px));background:var(--tt-popup-bg,rgba(8,14,28,.88));border:1px solid var(--tt-line);border-radius:22px;padding:14px;box-shadow:0 30px 80px rgba(0,0,0,.5);backdrop-filter:blur(14px);z-index:5;display:none;color:var(--tt-text,#fff)}
.tt-world-popup.is-open{display:block}
.tt-world-close,.tt-world-form-close{position:absolute;right:12px;top:10px;border:0;background:rgba(255,255,255,.12);color:#fff;border-radius:50%;width:36px;height:36px;font-size:24px;cursor:pointer}
.tt-world-popup-img{width:100%;height:210px;object-fit:cover;border-radius:16px}
.tt-world-popup h3{margin:14px 0 4px;color:var(--tt-text,#fff)}
.tt-world-popup-place{color:var(--tt-muted-text,rgba(255,255,255,.65));margin:0 0 12px}
.tt-world-popup-story{color:var(--tt-text,rgba(255,255,255,.88));line-height:1.55}
.tt-world-form-modal{position:relative;background:var(--tt-form-bg,rgba(8,14,28,.96));z-index:4;display:none;margin-top:18px;padding:0;border:1px solid var(--tt-line);border-radius:22px;overflow:hidden;color:var(--tt-text,#fff)}
.tt-world-form-modal.is-open{display:block}
.tt-world-form-card{position:relative;max-width:760px;margin:0 auto;background:transparent;border:0;border-radius:0;padding:24px;box-shadow:none}
.tt-world-story-form{display:grid;gap:14px}
.tt-world-story-form label{display:grid;gap:6px;font-weight:700;color:var(--tt-text,#fff)}
.tt-world-story-form input,.tt-world-story-form textarea{width:100%;box-sizing:border-box;border:1px solid var(--tt-field-border,#93c5fd);background:var(--tt-field-bg,#fff);color:var(--tt-field-text,#111827);border-radius:12px;padding:11px 12px;font:inherit}
.tt-world-story-form input::placeholder,.tt-world-story-form textarea::placeholder{color:color-mix(in srgb,var(--tt-field-text,#111827) 55%,transparent)}
.tt-world-story-form textarea{resize:vertical}
.tt-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.tt-pin-picker{border:1px dashed rgba(255,255,255,.28);border-radius:16px;padding:12px;background:rgba(255,255,255,.05)}
.tt-pin-picker p{margin:.35rem 0;color:var(--tt-muted-text,rgba(255,255,255,.7))}
.tt-picker-status,.tt-form-message{color:#7dd3fc;font-weight:800}
.tt-world-standalone-form{background:var(--tt-form-bg,#071224);color:var(--tt-text,#fff);border-radius:20px;padding:22px;font-family:var(--tt-font,inherit)}
.tt-world-standalone-form .tt-pin-picker{display:none}
.tt-world-wrap.tt-picking-location .tt-world-canvas{cursor:crosshair}
.tt-world-wrap.tt-picking-location .tt-world-help{background:var(--tt-button-bg,#0a84ff);color:var(--tt-button-text,#fff)}
.tt-world-form-modal .tt-world-form-close{top:14px;right:14px}
@media(max-width:760px){.tt-world-wrap{padding:16px;border-radius:16px}.tt-world-header{display:block}.tt-world-open-form{margin-top:12px;width:100%}.tt-world-stage{min-height:560px}.tt-world-popup{top:110px}.tt-two{grid-template-columns:1fr}.tt-world-help{font-size:13px;bottom:10px}}
