/* ===== 加入主畫面提示（st-add-to-home.js + _AddToHomeModal.cshtml）=====
   限手機顯示（JS 端已用 UA 擋，這裡不再下 media query），底部 slide-up sheet。
   editorial 變數不一定載入（子站 layout 無 editorial-base.css），故所有 var() 皆帶 fallback 值。 */
.st-a2hs {
    position: fixed;
    inset: 0;
    z-index: 1080; /* 高於 sticky header 與 cookie banner */
}
.st-a2hs__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(26, 21, 48, .55); /* --ink-deep 半透明 */
    opacity: 0;
    transition: opacity .25s ease;
}
.st-a2hs__sheet {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    max-height: 82vh;
    display: flex;
    flex-direction: column;
    background: var(--paper, #F8F4ED);
    border-radius: 20px 20px 0 0;
    box-shadow: 0 -8px 32px rgba(26, 21, 48, .25);
    transform: translateY(100%);
    transition: transform .25s ease;
    padding-bottom: env(safe-area-inset-bottom, 0);
}
.st-a2hs.is-open .st-a2hs__backdrop { opacity: 1; }
.st-a2hs.is-open .st-a2hs__sheet    { transform: translateY(0); }

.st-a2hs__head {
    padding: 18px 20px 10px;
    border-bottom: 1px solid var(--paper-edge, #E2D9C4);
}
.st-a2hs__title {
    margin: 0;
    font-family: var(--font-display, serif);
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--ink-deep, #1A1530);
}
.st-a2hs__sub {
    margin: 4px 0 0;
    font-size: .85rem;
    color: var(--ink-mute, #6E6388);
}
.st-a2hs__body {
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    padding: 14px 20px 4px;
}
.st-a2hs__steps {
    list-style: none;
    margin: 0;
    padding: 0;
}
.st-a2hs__steps li { margin: 0 0 18px; }
.st-a2hs__steps p {
    display: flex;
    align-items: baseline;
    gap: 8px;
    margin: 0 0 8px;
    font-size: .95rem;
    color: var(--ink, #2A2240);
}
.st-a2hs__num {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: var(--gold, #C8A45C);
    color: #fff;
    font-size: .8rem;
    font-weight: 700;
    align-self: flex-start;
}
.st-a2hs__steps img {
    display: block;
    max-width: 100%;
    border: 1px solid var(--paper-edge, #E2D9C4);
    border-radius: 10px;
}
.st-a2hs__done img { max-width: 140px; }
.st-a2hs__done .st-a2hs__num { background: var(--leaf, #5B7C5A); }

.st-a2hs__actions {
    display: flex;
    gap: 10px;
    padding: 12px 20px 16px;
    border-top: 1px solid var(--paper-edge, #E2D9C4);
}
.st-a2hs__btn {
    flex: 1;
    min-height: 48px; /* 行動端觸控目標 */
    padding: 12px 14px;
    border-radius: 12px;
    font-size: 1.05rem;
    font-weight: 500;
    cursor: pointer;
}
.st-a2hs__btn--primary {
    border: none;
    background: var(--ink-deep, #1A1530);
    color: #fff;
}
.st-a2hs__btn--mute {
    border: 1px solid var(--paper-edge, #E2D9C4);
    background: transparent;
    color: var(--ink-mute, #6E6388);
}
