/* SEMBLANZIA — GLOBAL FREEFORM SHAPES */
.freeform-add-shape{margin:0;padding:10px 14px;border:1px solid #b58a35;border-radius:26px;background:#fffdf8;color:#5d3b4a;font:600 10px/1 Montserrat,sans-serif;box-shadow:0 7px 24px rgba(0,0,0,.14);cursor:pointer;pointer-events:auto}.semblanzia-shape-visual-layer{position:absolute;inset:0;z-index:auto!important;pointer-events:none;overflow:visible}.semblanzia-shape-hit-layer{position:absolute;inset:0;z-index:88;pointer-events:none;overflow:visible}.semblanzia-shape-item,.semblanzia-shape-hit{position:absolute;box-sizing:border-box;transform-origin:center}.semblanzia-shape-item{pointer-events:none}.semblanzia-shape-core{position:absolute;inset:0;box-sizing:border-box}.shape-line{top:50%;bottom:auto;transform:translateY(-50%)}.semblanzia-shape-hit{pointer-events:auto;touch-action:pan-y}.semblanzia-shape-hit.selected{outline:2px solid #b58a35;outline-offset:5px}.shape-handle,.shape-item-toolbar{display:none}.semblanzia-shape-hit.selected .shape-handle,.semblanzia-shape-hit.selected .shape-item-toolbar{display:flex}.shape-handle{position:absolute;z-index:6;align-items:center;justify-content:center;width:32px;height:32px;touch-action:none}.shape-handle.resize{right:-18px;bottom:-18px;border:2px solid #fff;border-radius:8px;background:#b58a35;box-shadow:0 3px 10px rgba(0,0,0,.26);cursor:nwse-resize}.shape-handle.resize:after{content:'↘';color:#fff;font:700 15px/1 sans-serif}.shape-handle.rotate{left:50%;top:-48px;transform:translateX(-50%);border:2px solid #b58a35;border-radius:50%;background:#fff;color:#b58a35;box-shadow:0 3px 10px rgba(0,0,0,.24);font:700 14px/1 sans-serif;cursor:grab}.shape-item-toolbar{position:absolute;left:50%;top:-88px;transform:translateX(-50%);z-index:8;align-items:center;gap:6px;padding:6px;border:1px solid rgba(181,138,53,.35);border-radius:999px;background:rgba(255,253,247,.98);box-shadow:0 8px 22px rgba(0,0,0,.18);white-space:nowrap}.shape-item-toolbar button{height:30px;border:0;border-radius:999px;padding:0 10px;background:#fff;color:#5d3b4a;font:600 9px/1 Montserrat,sans-serif;box-shadow:inset 0 0 0 1px rgba(181,138,53,.22)}.shape-item-toolbar .shape-close{width:30px;padding:0;background:#5d3b4a;color:#fff;box-shadow:none;font-size:18px}.shape-properties{position:fixed;left:50%;bottom:12px;transform:translateX(-50%);z-index:10035;width:min(94vw,520px);max-height:52vh;overflow:auto;margin:0!important}.shape-palette{position:fixed;left:50%;top:60px;transform:translateX(-50%);z-index:10040;width:min(92vw,380px);padding:12px;border:1px solid rgba(181,138,53,.25);border-radius:18px;background:rgba(255,253,248,.99);box-shadow:0 14px 38px rgba(0,0,0,.22);font-family:Montserrat,sans-serif}.shape-palette[hidden]{display:none}.shape-palette-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;color:#5d3b4a}.shape-palette-head strong{font-size:12px}.shape-palette-head button{width:30px;height:30px;border:0;border-radius:50%;background:#5d3b4a;color:#fff;font-size:19px}.shape-palette-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.shape-palette-grid>button{min-height:94px;border:1px solid #e3d8c8;border-radius:13px;background:#fff;color:#5d3b4a;font:600 9px Montserrat,sans-serif}.shape-thumb{display:block;width:70px;height:42px;margin:0 auto 7px;background:#d9c8b8;border:2px solid #5d3b4a}.shape-thumb.rounded{border-radius:14px}.shape-thumb.ellipse{border-radius:50%}.shape-thumb.circle{width:46px;height:46px;border-radius:50%}.shape-thumb.arch{width:54px;height:58px;border-radius:999px 999px 0 0}.shape-thumb.line{height:3px;margin-top:20px;margin-bottom:25px;border:0;background:#5d3b4a}.shape-properties label{display:block;margin:8px 0;color:#5d3b4a;font:600 9px Montserrat,sans-serif}.shape-properties select,.shape-properties input[type="color"]{width:100%;margin-top:5px}.shape-properties input[type="range"]{width:100%;margin-top:7px}.shape-properties .shape-no-fill{display:flex;align-items:center;gap:7px;margin-top:5px;padding:8px 10px;border:1px solid #e3d8c8;border-radius:10px;background:#fff}.shape-properties .shape-no-fill input{margin:0}.shape-properties input[type="color"]:disabled{opacity:.38}@media(max-width:600px){.freeform-add-shape{padding:9px 10px;font-size:9px}.shape-properties{bottom:6px;width:96vw;max-height:48vh}.shape-palette{top:54px;width:94vw}.shape-handle{width:36px;height:36px}.shape-handle.resize{right:-20px;bottom:-20px}.shape-handle.rotate{top:-52px}.shape-item-toolbar{top:-94px}.shape-item-toolbar button{height:32px;padding:0 9px;font-size:8px}.shape-item-toolbar .shape-close{width:32px;font-size:19px}}