/* LoveBlazer: story start badge and tarot label safe areas — v2. */
/* A JS class on the story panel avoids depending on dynamically replaced icon markup. */
.ls-card.lb-story-before-start .ls-illustration {
    display: block !important;
    position: relative;
    width: 96px !important;
    height: 96px !important;
    min-width: 96px;
    flex: 0 0 96px;
    margin-inline: auto;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font-size: 0 !important;
    line-height: 0 !important;
}
.ls-card.lb-story-before-start .ls-illustration > * { visibility: hidden !important; }
.ls-card.lb-story-before-start .ls-illustration::after {
    content: "";
    display: block;
    position: absolute;
    inset: 0;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 96 96'%3E%3Cdefs%3E%3ClinearGradient id='a' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop stop-color='%23fffdf8'/%3E%3Cstop offset='1' stop-color='%23fce6ee'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M27 12h40q9 0 9 9v57q0 8-9 8H27q-10 0-10-10V22q0-10 10-10Z' fill='%23b97099' stroke='%239a4b7d' stroke-width='2'/%3E%3Cpath d='M28 17h39q5 0 5 5v57q0 3-5 3H28q-6 0-6-7V25q0-8 6-8Z' fill='url(%23a)' stroke='%23ad6689' stroke-width='1.7'/%3E%3Cpath d='M28 18v63' stroke='%23d39bb7' stroke-width='2.5'/%3E%3Crect x='34' y='26' width='30' height='43' rx='3' fill='none' stroke='%23d3ac7c' stroke-width='1.6'/%3E%3Cpath d='M43 17h9v21l-4.5-4-4.5 4Z' fill='%23d8ac69'/%3E%3Cpath d='M48 55C32 46 39 36 45 39q3 1 3 4c3-6 13-6 13 2q0 5-13 10Z' fill='%23b96690'/%3E%3Cpath d='M38 73h22' stroke='%23dfc6ae' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center/contain no-repeat;
    pointer-events: none;
}
/* Leave the completed open-book illustration entirely untouched. */
/* Reserve sufficient horizontal breathing room at every viewport width. */
.pt-panel .pt-deck .pt-card,
.pt-panel .pt-deck .pt-card-face { min-width: 0; }
.pt-panel .pt-deck .pt-card-label {
    display: block;
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    padding-inline: 10px !important;
    margin-inline: auto;
    font-size: clamp(10px, 0.85vw, 12px) !important;
    letter-spacing: 0.01em !important;
    line-height: 1.3 !important;
    overflow-wrap: break-word;
    word-break: normal;
    hyphens: none;
    text-align: center;
}
@media(max-width: 650px) {
  .pt-panel .pt-deck .pt-card-label {
    font-size: clamp(8px, 2.3vw, 11px) !important;
    padding-inline: 6px !important;
    letter-spacing: 0 !important;
    line-height: 1.25 !important;
  }
}
@media(max-width: 360px) {
  .pt-panel .pt-deck .pt-card-label {font-size: 8px !important; padding-inline: 5px !important;}
}
