/* V2 · Noir —— 深咖黑夜间精品店：暗底、香槟金、照片在暗场里发光 */
:root {
  --canvas: #15120F; --surface: #1F1B17; --ink: #F3EADF; --ink-2: #CFC4B7; --muted: #8F857A; --faint: #5E564E;
  --champagne: #D2AA7E; --champagne-2: #E9D2B4; --line: rgba(243, 234, 223, .08); --line-2: rgba(243, 234, 223, .16); --tint: rgba(243, 234, 223, .05);
  --on-ink: #15120F; --img-bg: #2A241F; --soft: #26211C; --soft-2: #2B251F; --dark: #0E0C0A; --ok-bg: #1E231E; --ink-hover: #FFF7EC;
  --glass: rgba(31, 27, 23, .72); --tab-bg: rgba(243, 234, 223, .1); --frame: linear-gradient(145deg, #4A4038, #0C0A08);
  --desk-bg: radial-gradient(900px 700px at 72% 45%, #2A221B, #110E0C 70%); --grain: .35;
  --shadow: 0 18px 40px -24px rgba(0, 0, 0, .7); --shadow-lg: 0 40px 80px -36px rgba(0, 0, 0, .9);
  --danger: #D9817B; --warn: #E0A866; --watch: #C9B391;
}
body::after { mix-blend-mode: screen; opacity: .06; }
.tabbar { box-shadow: inset 0 0 0 1px var(--line-2), 0 20px 40px -18px #000; }
.tabbar button { color: rgba(243, 234, 223, .5); }
.tabbar button.is-on { color: var(--ink); background: rgba(243, 234, 223, .1); }
.who.is-on, .chip--ink, .chip--btn.is-on, .opt__btn.is-on, .check input:checked + span, .toggle2 input:checked + span, .btn--ink, .cta--ink, .fab, .mark { background: var(--champagne); color: #15120F; }
.who.is-on small, .chip--btn.is-on span { color: #3A2C1E; }
.cta--ink i, .opt__btn.is-on .ico { background: rgba(0, 0, 0, .14); color: #15120F; }
.cta--light { background: var(--ink); color: #15120F; } .cta--light i { background: #15120F; color: var(--champagne-2); }
.tag { background: rgba(21, 18, 15, .82); }
.tag--expired { background: var(--danger); color: #15120F; }
.tag--soon, .tag--today { background: rgba(224, 168, 102, .12); }
.banner--danger { background: rgba(217, 129, 123, .12); color: #F0B9B4; } .banner--warn { background: rgba(224, 168, 102, .12); color: #F0CFA5; } .banner--note { background: rgba(140, 155, 140, .14); color: #C9D4C9; }
.form__errors, .preview--err, .preview--expired { background: rgba(217, 129, 123, .12); color: #F0B9B4; }
.reasons li { background: rgba(140, 155, 140, .16); color: #C3CFC3; }
.dr__fit p { background: linear-gradient(135deg, #2A211E, #231E19); }
.compare { background: linear-gradient(135deg, #2A221B, #1C1915); }
.look__head { box-shadow: inset 0 0 0 1px var(--line-2); }
.tips small { color: #9FAE9F; } .tips li > span { color: #9FAE9F; }
.drawer__scrim, .modal { background: rgba(0, 0, 0, .6); }
.pcard, .list, .steps, .panel, .basis, .quick__item, .sample, .scan, .kn__item { box-shadow: 0 0 0 1px var(--line); }
.pimg { filter: saturate(.92) brightness(.94); }
.hero__veil { background: linear-gradient(180deg, rgba(0,0,0,.2), rgba(0,0,0,0) 30%, rgba(0,0,0,.4) 55%, rgba(10,8,6,.92)); }
.switch { box-shadow: 0 0 0 1px var(--line-2), 0 12px 30px -18px #000; }
.field select, .select select { color-scheme: dark; }
.toast { background: rgba(243, 234, 223, .95); color: #15120F; }
