/* 我要結婚了｜花瓣玫瑰。保留核定玫瑰主色，以花瓣粉、香檳和玫瑰霧面拉開明度。 */
:root {
  --ink:#3B2B30; --ink-soft:#57454B; --pink:#B55360; --pink-ink:#71313C;
  --pink-soft:#F8E8EB; --lime:#F3A0AC; --sky:#E4BDD0; --peach:#F2C1AA;
  --violet:#EBD1DC; --paper:#FFF9FA; --muted:#78666C; --white:#FFFFFF;
  --line:rgba(59,43,48,.16); --shadow:0 24px 70px rgba(86,39,51,.14);
  --price-canvas:#F4E8E9; --price-surface:#FFFFFF; --price-surface-warm:#F8EEF0;
  --price-wine:#B55360; --price-wine-deep:#873D49; --price-olive:#F2DCE1;
  --price-slate:#E4D7E5; --price-sand:#F4E0D8; --price-muted:#74636A;
  --accent-rgb:181,83,96; --hero-rgb:54,28,39; --wall-rgb:181,83,96;
  --button-text:#FFFFFF; --plan-highlight-text:#FFFFFF; --contact-text:#FFFFFF;
  --wall-surface:#F6E1E5; --wall-card:#512B36;
  --hero-glow:rgba(246,137,151,.76); --hero-glow-secondary:rgba(245,210,123,.54);
  --toggle-start:#F3A0AC; --toggle-middle:#F9D9DE; --toggle-hover:#FFF0E5;
  --toggle-end:#F3D5B2; --sale-mark:#B55360;
  --package-handle:#CF7A88; --package-rim-top:#C66B7A; --package-rim-bottom:#873D49;
  --package-front-start:#F3A0AC; --package-front-end:#F2C1AA;
  --package-media-start:#F7E1E5; --package-media-middle:#BF7582; --package-media-end:#39222A;
}
body { background-color: var(--paper); color: var(--ink); }
.scenario-output-rule > div > p { color: var(--ink); }
.site-header { background: linear-gradient(135deg, rgba(255,255,255,.17), rgba(255,255,255,.04) 48%, rgba(var(--accent-rgb),.22)), rgba(var(--hero-rgb),.82); }
.site-header::before { background: linear-gradient(115deg, rgba(255,255,255,.18), transparent 34%, rgba(var(--accent-rgb),.25)); }
.site-header[class~="is-scrolled"] { background: linear-gradient(135deg, rgba(255,255,255,.12), rgba(var(--accent-rgb),.22)), rgba(var(--hero-rgb),.92); }
.site-nav a[class~="is-layer-active"] { border-color: rgba(var(--accent-rgb),.45); background: var(--lime); color: var(--ink); box-shadow: 0 5px 18px var(--hero-glow-secondary); }
.site-header:has(.site-nav a[class~="is-layer-active"]) .site-nav a[class~="is-layer-active"] { border-color: rgba(var(--accent-rgb),.45); background: var(--lime); }
.site-header:has(.site-nav a[class~="is-layer-active"]) .header-cta { background: var(--pink); color: var(--button-text); }
.hero-cover-scene, .hero-cover-layer::before { background: rgb(var(--hero-rgb)); }
.hero-scrim { background: linear-gradient(90deg, rgba(var(--hero-rgb),.96) 0%, rgba(var(--hero-rgb),.84) 46%, rgba(var(--hero-rgb),.42) 100%), linear-gradient(0deg, rgba(var(--hero-rgb),.92) 0%, transparent 34%); }
.hero-orb-one { background: radial-gradient(circle, var(--hero-glow), transparent 68%); }
.hero-orb-two { background: radial-gradient(circle, var(--hero-glow-secondary), transparent 70%); }
.hero .eyebrow, .hero h1 em { color: var(--lime); }
.button-primary, .header-cta, .button-plan-hot { background: var(--pink); color: var(--button-text); box-shadow: 0 10px 28px rgba(var(--accent-rgb),.28); }
.route-strip { background: var(--pink); color: var(--button-text); }
.route-strip span { color: inherit; }
.product-wall { background: var(--wall-surface); color: var(--ink); }
.product-wall::before { background-image: radial-gradient(rgba(var(--wall-rgb),.12) 1px, transparent 1px); }
.light-heading h2 { color: var(--ink); }
.light-heading > p:last-child { color: var(--muted); }
.product-wall .light-heading .section-index { color: var(--pink-ink); }
[class~="wall-card"] { border-color: rgba(var(--wall-rgb),.22); background: var(--wall-card); }
[class~="wall-card"]::after { background: linear-gradient(180deg, transparent 20%, rgba(var(--hero-rgb),.94) 100%); }
[class~="wall-card"] p { color: var(--lime); }
[class~="wall-note"] { color: var(--muted); }
.plan-price-original { color: var(--price-muted); }
.plan-price-original > strong::after { background: linear-gradient(176deg, transparent 0 11%, var(--sale-mark) 13% 62%, var(--pink-ink) 68% 81%, transparent 84%); }
.plan-price-opening > strong { color: var(--pink-ink); }
.plan-list li::before { color: var(--pink); }
.package-toggle { background: linear-gradient(112deg, var(--toggle-start), var(--toggle-middle) 48%, var(--toggle-end)); box-shadow: 0 0 0 1px rgba(var(--accent-rgb),.2), 0 7px 18px rgba(var(--accent-rgb),.18), 3px 3px 0 rgba(var(--hero-rgb),.15); }
.package-toggle:hover, .package-toggle:focus-visible { background: linear-gradient(112deg, var(--toggle-start), var(--toggle-hover) 42%, var(--toggle-middle)); box-shadow: 0 0 0 2px rgba(var(--accent-rgb),.25), 0 10px 24px rgba(var(--accent-rgb),.23), 3px 4px 0 rgba(var(--hero-rgb),.18); }
.plan-ribbon { background: var(--ink); color: var(--lime); }
.plan-advanced { box-shadow: 8px 9px 0 var(--pink); }
.plan-advanced .plan-price-opening, .plan-advanced .plan-total { background: var(--pink); }
.plan-advanced .plan-price-opening > span, .plan-advanced .plan-price-opening > strong, .plan-advanced .plan-total { color: var(--plan-highlight-text); }
[class~="product-media"], [class~="missing-media"], [class~="product-view-stack"], [class~="product-view-mosaic"], [class~="product-media"] > figure img { background-color: var(--price-surface-warm); }
[class~="media-label"] { background: rgba(var(--hero-rgb),.9); }
[class~="missing-media"] { border-color: var(--pink); background: var(--pink-soft); }
[class~="product-detail-main"][class~="is-video"], [class~="product-detail-main"][class~="is-video"] > video { background: rgb(var(--hero-rgb)); }
[class~="product-detail-main"][class~="is-embed"], [class~="product-detail-main"][class~="is-embed"] > iframe { background: var(--price-surface-warm); }
.package-modal { background: rgba(var(--hero-rgb),.68); }
.package-modal-backdrop { background: rgba(var(--hero-rgb),.58); }
.package-modal-card, .package-display, .package-modal[class~="is-advanced"] .package-display, .package-modal[class~="is-flagship"] .package-display { border-color: rgba(var(--accent-rgb),.48); background: rgb(var(--hero-rgb)); }
.package-modal-card { box-shadow: 0 30px 90px rgba(var(--hero-rgb),.56), 9px 11px 0 rgba(var(--hero-rgb),.72); }
.package-display-halo { background: radial-gradient(ellipse, var(--hero-glow), var(--hero-glow-secondary) 44%, transparent 74%); }
.package-display-glint { box-shadow: 0 0 18px var(--hero-glow-secondary); }
.package-display-glint-two { border-color: var(--pink); box-shadow: 0 0 18px var(--hero-glow); }
.package-kit { border-color: rgba(var(--accent-rgb),.48); }
.package-kit::before { border-color: rgba(var(--accent-rgb),.28); }
.package-kit-handle { border-color: var(--package-handle); box-shadow: 0 0 0 2px rgba(var(--accent-rgb),.26), inset 0 5px rgba(255,255,255,.1); }
.package-kit-rim { border-color: rgba(var(--accent-rgb),.56); background: linear-gradient(180deg, var(--package-rim-top), var(--package-rim-bottom)); }
.package-kit-front { border-color: rgba(var(--accent-rgb),.42); background: linear-gradient(105deg, var(--package-front-start), var(--package-front-end)); color: var(--ink); box-shadow: 0 8px 0 rgba(var(--hero-rgb),.2), inset 0 0 0 3px rgba(255,255,255,.2); }
.package-kit-tape { border-color: rgba(var(--hero-rgb),.22); background: var(--lime); box-shadow: 2px 3px 0 rgba(var(--hero-rgb),.24); }
.package-display-choice-note { border-color: rgba(var(--accent-rgb),.5); background: rgba(var(--hero-rgb),.88); color: rgba(255,255,255,.86); }
.package-display-choice-badge { background: var(--pink); color: var(--button-text); }
.package-motion-list button { border-color: rgba(255,255,255,.25); background: rgba(var(--hero-rgb),.82); }
[class~="package-motion-choice"] { background: var(--pink); color: var(--button-text); }
[class~="package-piece-media"] { background: linear-gradient(135deg, var(--package-media-start), var(--package-media-middle) 55%, var(--package-media-end)); }
[class~="package-piece-media"]::before { background: linear-gradient(135deg, rgba(255,255,255,.24), transparent 35%, rgba(var(--hero-rgb),.2)); }
[class~="package-piece-meta"] { color: var(--muted); }
[class~="package-piece-meta"] b { color: var(--pink-ink); }
[class~="package-piece-choice"] { background: var(--pink-soft); color: var(--pink-ink); }
[class~="package-piece"][class~="is-choice"] { border-color: rgba(var(--accent-rgb),.6); }
.package-modal-kicker-mark { border-color: var(--lime); }
.package-modal-prefix, .package-motion-copy small, .package-modal-foot-mark { color: var(--lime); }
.package-motion-list button[class~="is-active"] { border-color: var(--lime); background: var(--lime); color: var(--ink); }
.package-modal-close-action { border-color: var(--lime); background: var(--lime); color: var(--ink); }
.package-modal-close-action:hover, .package-modal-close-action:focus-visible { outline-color: var(--pink); background: var(--pink); border-color: var(--pink); color: var(--button-text); }
[class~="is-package-open"] .package-toggle-mark { background: var(--pink); color: var(--button-text); }
[class~="product-dialog-close"]:focus-visible, [class~="product-detail-thumb"]:focus-visible, .package-toggle:focus-visible, .plan-list-title:focus-visible, [class~="scenario-output-rule-back"]:focus-visible { color: var(--pink-ink); outline-color: var(--pink-ink); }
.contact { background: var(--pink); color: var(--contact-text); }
.contact .section-index { color: inherit; }
