.sh-root{color:var(--heart-ink);font-family:var(--heart-font-text), "Noto Naskh Arabic", serif;gap:10px;display:grid;position:relative}.sh-root button{font:inherit;color:inherit;cursor:pointer}.sh-root button:focus-visible,.sh-sheet button:focus-visible{outline:2px solid var(--heart-focus);outline-offset:2px}.sh-toolbar{justify-content:space-between;align-items:center;gap:8px;display:flex}.sh-segmented{border:1px solid var(--heart-ink-faint);background:var(--heart-paper-2);border-radius:999px;padding:3px;display:inline-flex}.sh-segmented button{min-block-size:38px;color:var(--heart-ink-soft);background:0 0;border:0;border-radius:999px;padding:2px 16px;font-size:19px;font-weight:500;transition:background-color .16s,color .16s}.sh-segmented button[aria-pressed=true]{background:var(--heart-surface);color:var(--heart-ink);box-shadow:0 1px 3px #0000001f}.sh-zoom-controls{gap:6px;display:inline-flex}.sh-icon-button{border:1px solid var(--heart-ink-faint);background:var(--heart-surface);border-radius:50%;place-items:center;block-size:40px;inline-size:40px;padding:0;display:grid}.sh-icon-button svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;block-size:20px;inline-size:20px}.sh-icon-button:disabled{opacity:.38;cursor:default}.sh-stage{position:relative}.sh-stage[hidden]{display:none}.sh-svg{aspect-ratio:600/940;touch-action:pan-y;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;block-size:auto;inline-size:100%;display:block;overflow:hidden}.sh-heart-shadow{fill:var(--heart-vessel-shadow);opacity:.55}.sh-halo{fill:none;stroke:var(--heart-halo);stroke-width:16px;stroke-linejoin:round}.sh-cell{stroke:none;cursor:pointer;outline:none;transition:fill .7s}.sh-patterns,.sh-lines,.sh-labels,.sh-vessels,.sh-blossoms,.sh-butterfly{pointer-events:none}.sh-hatch-line{stroke:var(--heart-hatch);stroke-width:1.15px}.sh-dot{fill:var(--heart-dot)}.sh-lines path{fill:none;stroke:var(--heart-ink);stroke-opacity:.72;stroke-width:1.05px;stroke-linejoin:round;vector-effect:non-scaling-stroke}.sh-labels text{font-family:var(--heart-font-text), serif;text-anchor:middle;paint-order:stroke fill;stroke-linejoin:round;direction:rtl;font-weight:500}.sh-callout{pointer-events:none}.sh-callout rect{fill:var(--heart-surface);stroke:var(--heart-ink-soft)}.sh-callout text{fill:var(--heart-ink);font-family:var(--heart-font-text), serif;text-anchor:middle;direction:rtl;font-weight:600}.sh-outline{fill:none;stroke:var(--heart-ink);stroke-width:2.4px;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.sh-outline-sketch{fill:none;stroke:var(--heart-ink);stroke-opacity:.32;stroke-width:.9px;vector-effect:non-scaling-stroke}.sh-vessel-inside{fill:var(--heart-vessel-shadow)}.sh-vessel-rim{fill:none;stroke:var(--heart-ink);stroke-width:2.2px;vector-effect:non-scaling-stroke}.sh-vessel-sketch{fill:none;stroke:var(--heart-ink);stroke-opacity:.3;stroke-width:.8px;vector-effect:non-scaling-stroke}.sh-selected{fill:none;stroke:var(--heart-accent);stroke-width:3px;stroke-linejoin:round;vector-effect:non-scaling-stroke;pointer-events:none}.sh-focus-ring{fill:none;stroke:var(--heart-focus);stroke-width:3px;stroke-dasharray:5 3;vector-effect:non-scaling-stroke;pointer-events:none}.sh-stems path{fill:none;stroke:var(--heart-branch);stroke-linecap:round}.sh-stem-highlights path{fill:none;stroke:var(--heart-paper);stroke-opacity:.35;stroke-width:.7px;stroke-linecap:round}.sh-petal{stroke:var(--heart-petal-edge);stroke-width:.55px;stroke-linejoin:round}.sh-stamens line{stroke:var(--heart-stamen);stroke-width:.55px}.sh-stamens circle{fill:var(--heart-stamen)}.sh-stamens .sh-pistil{fill:var(--heart-petal-0);opacity:.8}.sh-sepal{fill:var(--heart-leaf-dark)}.sh-bud-stalk{fill:none;stroke:var(--heart-branch);stroke-width:1.4px;stroke-linecap:round}.sh-leaf{fill:var(--heart-leaf);stroke:var(--heart-leaf-dark);stroke-width:.5px}.sh-leaf-rib{fill:none;stroke:var(--heart-leaf-dark);stroke-width:.7px;stroke-linecap:round}.sh-loose-petal{opacity:.85}.sh-wing{fill-opacity:.92;stroke:var(--heart-ink-soft);stroke-width:.8px;stroke-linejoin:round}.sh-wing-vein{fill:none;stroke:var(--heart-ink-soft);stroke-opacity:.45;stroke-width:.5px}.sh-wing-spot{fill:#fff;opacity:.6}.sh-butterfly-body{fill:var(--heart-ink)}.sh-antenna{fill:none;stroke:var(--heart-ink);stroke-width:.8px;stroke-linecap:round}.sh-wing-right,.sh-wing-left{transform-origin:0 0;animation:3.2s ease-in-out infinite flutter}.sh-butterfly-bob{animation:6s ease-in-out infinite bob}@keyframes flutter{0%,70%,to{transform:scaleX(1)}78%{transform:scaleX(.55)}86%{transform:scaleX(.95)}92%{transform:scaleX(.62)}}@keyframes bob{50%{transform:translateY(-5px)rotate(-3deg)}}@media (prefers-reduced-motion:reduce){.sh-wing-right,.sh-wing-left,.sh-butterfly-bob{animation:none}.sh-cell{transition:none}}.sh-hint{color:var(--heart-ink-soft);text-align:center;margin-block:4px 0;margin-inline:0;font-size:16px}.sh-caption-wrap{justify-items:center;gap:2px;display:grid}.sh-caption{font-family:var(--heart-font-calligraphy), serif;text-align:center;text-wrap:balance;margin:0;font-size:clamp(27px,7.6vw,40px);font-weight:700;line-height:1.55}.sh-caption-name{color:var(--heart-accent)}.sh-ornament{block-size:18px;inline-size:180px}.sh-ornament path{fill:none;stroke:var(--heart-ink-soft);stroke-width:1.1px;stroke-linecap:round}.sh-ornament ellipse{fill:var(--heart-petal-1);stroke:var(--heart-petal-edge);stroke-width:.6px}.sh-ornament circle{fill:var(--heart-stamen)}.sh-swatch{flex:none;block-size:26px;inline-size:36px;display:block}.sh-swatch-line{fill:none;stroke:var(--heart-ink);stroke-width:1.1px;stroke-linejoin:round}.sh-sheet{z-index:50;max-inline-size:520px;padding-block:8px calc(18px + env(safe-area-inset-bottom));border:1px solid var(--heart-ink-faint);background:var(--heart-surface);color:var(--heart-ink);font-family:var(--heart-font-text), serif;border-block-end:0;border-start-start-radius:24px;border-start-end-radius:24px;outline:none;margin-inline:auto;padding-inline:18px;animation:.28s cubic-bezier(.2,.8,.2,1) sheet-in;position:fixed;inset-block-end:0;inset-inline:0;box-shadow:0 -16px 44px -18px #3c142873}@keyframes sheet-in{0%{transform:translateY(100%)}}@media (prefers-reduced-motion:reduce){.sh-sheet{animation:none}}.sh-sheet button{font:inherit;color:inherit;cursor:pointer}.sh-sheet-grip{background:var(--heart-ink-faint);border-radius:4px;block-size:4px;inline-size:42px;margin-block:2px 10px;margin-inline:auto}.sh-sheet-head{align-items:center;gap:12px;display:flex}.sh-sheet-badge{flex:none;place-items:center;block-size:54px;inline-size:54px;display:grid;position:relative}.sh-sheet-badge svg{position:absolute;inset:0}.sh-sheet-badge path{fill:var(--heart-rose-1);stroke:var(--heart-accent);stroke-width:1.4px;stroke-linejoin:round}.sh-sheet-badge span{font-size:19px;font-weight:700;position:relative}.sh-sheet-titles{min-inline-size:0}.sh-sheet-name{font-family:var(--heart-font-calligraphy), serif;margin:0;font-size:32px;font-weight:700;line-height:1.35}.sh-sheet-meta{color:var(--heart-ink-soft);flex-wrap:wrap;align-items:center;gap:6px 14px;margin:0;font-size:18px;display:flex}.sh-status-chip{align-items:center;gap:6px;display:inline-flex}.sh-sheet-meta .sh-swatch{block-size:19px;inline-size:26px}.sh-sheet-close{border:1px solid var(--heart-ink-faint);background:0 0;border-radius:50%;flex:none;place-items:center;block-size:42px;inline-size:42px;margin-inline-start:auto;padding:0;display:grid}.sh-sheet-close svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;block-size:18px;inline-size:18px}.sh-meters{gap:12px;margin-block-start:14px;display:grid}.sh-meter-head{justify-content:space-between;align-items:baseline;font-size:19px;display:flex}.sh-meter-head strong{font-size:21px;font-weight:700}.sh-meter-track{border:1px solid var(--heart-ink-faint);background:var(--heart-paper-2);border-radius:99px;block-size:12px;overflow:hidden}.sh-meter-fill,.sh-meter-fill-deep{border-radius:inherit;block-size:100%;transition:inline-size .5s;display:block}.sh-meter-fill{background:var(--heart-rose-2)}.sh-meter-fill-deep{background:radial-gradient(circle, var(--heart-dot) 1.2px, transparent 1.6px) 0 0 / 7px 7px, var(--heart-rose-3)}.sh-neighbours{margin-block-start:14px}.sh-neighbours p{color:var(--heart-ink-soft);margin-block:0 8px;margin-inline:0;font-size:17px}.sh-neighbours ul{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.sh-neighbours button{border:1px solid var(--heart-ink-faint);background:var(--heart-paper);border-radius:999px;min-block-size:42px;padding:2px 14px;font-size:19px}.sh-neighbours button[aria-pressed=true]{border-color:var(--heart-accent);background:var(--heart-rose-1);font-weight:600}.sh-chip-num{color:var(--heart-ink-soft);font-size:16px}.sh-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:6px;margin:0;padding:0;list-style:none;display:grid}.sh-list-button{border:1px solid var(--heart-ink-faint);background:var(--heart-surface);text-align:start;border-radius:14px;grid-template-columns:36px 30px minmax(0,1fr) auto;align-items:center;gap:8px;min-block-size:50px;inline-size:100%;padding:6px 12px;display:grid}.sh-list-num{color:var(--heart-ink-soft);text-align:center;font-size:17px}.sh-list-name{font-size:21px;font-weight:600}.sh-list-status{color:var(--heart-ink-soft);text-align:end;font-size:16px;line-height:1.25;display:grid}.sh-list-status small{font-size:14px}.sh-legend{border:1px solid var(--heart-ink-faint);background:var(--heart-surface);color:var(--heart-ink);font-family:var(--heart-font-text), serif;border-radius:20px;margin:0;padding:16px 18px}.sh-legend-title{font-family:var(--heart-font-calligraphy), serif;margin-block-end:10px;font-size:23px;font-weight:700}.sh-legend ul{gap:12px;margin:0;padding:0;list-style:none;display:grid}.sh-legend li{grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.sh-legend .sh-swatch{block-size:29px;inline-size:40px}.sh-legend-text{line-height:1.3;display:grid}.sh-legend-text strong{font-size:20px;font-weight:600}.sh-legend-text small{color:var(--heart-ink-soft);font-size:16px}.sh-legend-count{color:var(--heart-ink-soft);white-space:nowrap;font-size:18px}.sh-nur-aura{fill:var(--heart-nur);stroke:var(--heart-nur);stroke-width:34px;stroke-linejoin:round;opacity:calc(var(--sh-glow,0) * .85);pointer-events:none;transform-box:fill-box;transform-origin:50%;transition:opacity .9s}.sh-nur-inner{opacity:calc(var(--sh-glow,0) * .32);pointer-events:none;transition:opacity .9s}.sh-nur-stop-core{stop-color:var(--heart-nur-soft);stop-opacity:.95}.sh-nur-stop-mid{stop-color:var(--heart-nur);stop-opacity:.4}.sh-nur-stop-edge{stop-color:var(--heart-nur);stop-opacity:0}.sh-root[data-glow=on] .sh-nur-aura{animation:7s ease-in-out infinite sh-breathe}@keyframes sh-breathe{0%,to{opacity:calc(var(--sh-glow,0) * .85);transform:scale(1)}50%{opacity:calc(var(--sh-glow,0) * .62);transform:scale(1.012)}}@media (prefers-reduced-motion:reduce){:root:not([data-motion=full]) .sh-root[data-glow=on] .sh-nur-aura{animation:none}:root:not([data-motion=full]) .sh-nur-aura,:root:not([data-motion=full]) .sh-nur-inner{transition:none}}:root[data-motion=reduce] .sh-root[data-glow=on] .sh-nur-aura{animation:none}
