/* Mobile first task spaces. Keeps the lounge's tea-purple and quiet gold palette. */
.spaces-view15 { background:#090b15; min-height:100dvh; padding-bottom:24px; }
.space-hero15 { position:relative; height:360px; overflow:hidden; }
.space-hero15>img { width:100%; height:100%; object-fit:cover; display:block; }
.space-hero15::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(5,7,15,.2),rgba(6,8,17,.22) 30%,#090b15); pointer-events:none; }
.space-back15 { position:absolute; z-index:2; top:70px; left:19px; min-height:42px; padding:9px 13px; border:1px solid rgba(240,226,202,.24); border-radius:14px; background:rgba(9,11,23,.7); color:#f6eee5; font-size:13px; backdrop-filter:blur(14px); }
.space-hero-copy15 { position:absolute; z-index:1; left:26px; right:26px; bottom:23px; }
.space-kicker15 { color:#d5b997; font-size:10px; font-weight:700; letter-spacing:.12em; line-height:1.6; margin:0 0 10px; }
.space-hero-copy15 h1 { white-space:pre-line; font-size:34px; line-height:1.32; font-weight:700; letter-spacing:-.025em; margin:0 0 13px; text-shadow:0 2px 15px #000; }
.space-hero-copy15>p:last-child { font-size:14px; line-height:1.8; color:#d0cbd4; margin:0; max-width:480px; }
.space-body15 { padding:0 24px; }
.space-nav15 { display:flex; gap:7px; padding:14px 0 12px; border-bottom:1px solid rgba(227,209,183,.12); flex-wrap:wrap; }
.space-nav15 button { flex:1; min-height:42px; padding:8px 7px; font-size:12px; white-space:nowrap; }
.space-secondary15 { border:1px solid rgba(206,188,164,.22); color:#e5d6c2; border-radius:13px; padding:11px 13px; font-size:13px; background:rgba(33,31,51,.65); min-height:44px; cursor:pointer; }
.space-primary15 { background:linear-gradient(115deg,#6d4d9b,#635389 50%,#94785f); color:white; border:1px solid rgba(226,199,168,.35); border-radius:15px; min-height:49px; padding:13px 18px; font-size:15px; font-weight:700; cursor:pointer; box-shadow:0 8px 28px rgba(71,46,101,.25); }
.spaces-view15 button:disabled { opacity:.6; cursor:wait; }
.spaces-view15 button:focus-visible,.space-archive15 button:focus-visible { outline:2px solid #dec097; outline-offset:3px; }
.space-guide-section15,.space-reading15,.space-form-section15 { padding-top:30px; scroll-margin-top:18px; }
.spaces-view15 h2 { font-size:24px; line-height:1.4; margin:5px 0 18px; letter-spacing:-.02em; }
.space-guide-grid15 { display:grid; gap:12px; }
.space-guide-card15 { display:grid; grid-template-columns:128px minmax(0,1fr); gap:18px; padding:14px; background:linear-gradient(130deg,#201d31,#111626); border:1px solid rgba(219,192,157,.18); border-radius:20px; }
.space-guide-card15>img { width:128px; height:100%; min-height:130px; object-fit:cover; border-radius:13px; }
.space-guide-card15 h3 { font-size:19px; line-height:1.3; margin:4px 0 8px; }
.space-guide-card15 p { font-size:13px; color:#bcb8c9; line-height:1.8; margin:0 0 12px; }
.space-guide-card15 .space-kicker15 { display:block; font-size:10px; letter-spacing:.04em; margin:0; }
.space-guide-card15 button { border:none; min-height:44px; background:none; color:#e0c59f; padding:0; text-align:left; font-size:12px; }
.space-reading-item15 { border-bottom:1px solid rgba(209,193,172,.15); padding:0; }
.space-reading-item15 summary { font-size:14px; color:#e2d9cf; padding:17px 8px; cursor:pointer; line-height:1.6; }
.space-reading-item15 p { padding:0 8px 17px; margin:0; font-size:14px; color:#b7b6c6; line-height:1.9; }
.space-section-intro15 { color:#bdb8c8; font-size:14px; line-height:1.8; margin:-7px 0 19px; }
.space-form15 { border:1px solid rgba(209,190,164,.22); background:linear-gradient(150deg,#1f1c32,#111524); border-radius:23px; padding:23px; }
.space-form-grid15 { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:17px 12px; margin-bottom:18px; }
.space-field15 { display:flex; flex-direction:column; gap:8px; color:#ddd5d0; font-size:13px; line-height:1.6; min-width:0; }
.space-field15 input,.space-field15 select,.space-field15 textarea { width:100%; min-height:46px; background:#0d1020; color:#f1eae2; border:1px solid rgba(180,170,199,.25); border-radius:12px; padding:11px; font-family:inherit; font-size:15px; box-sizing:border-box; color-scheme:dark; min-width:0; }
.space-field15 textarea { font-size:14px; line-height:1.75; resize:vertical; margin-bottom:15px; }
.space-field15 select { padding-right:24px; }
.space-field15 input:focus,.space-field15 select:focus,.space-field15 textarea:focus { outline:2px solid rgba(184,142,226,.55); outline-offset:1px; }
.space-checks15 { border:0; padding:0; margin:20px 0; min-width:0; }
.space-checks15 legend { font-size:13px; color:#ddd5d0; margin-bottom:10px; }
.space-checks15>div { display:flex; flex-wrap:wrap; gap:8px; }
.space-checks15 label { cursor:pointer; padding:9px 11px; display:flex; gap:6px; align-items:center; font-size:13px; border-radius:12px; border:1px solid rgba(181,166,205,.2); background:#131628; }
.space-checks15 input { accent-color:#ae87d3; width:16px; height:16px; }
.space-live-preview15 { padding:17px; margin:3px 0 19px; border-radius:16px; border:1px solid rgba(220,190,143,.28); background:linear-gradient(120deg,rgba(102,76,120,.35),rgba(89,71,38,.18)); position:relative; overflow:hidden; }
.space-live-preview15 strong { display:block; font-size:18px; line-height:1.5; margin:4px 0 7px; }
.space-live-preview15 p { font-size:13px; line-height:1.7; color:#cec6cf; margin:0 0 6px; }
.space-live-preview15>span { font-size:12px; color:#e0c49c; line-height:1.7; }
.space-kind-teagift .space-live-preview15 { padding-right:102px; min-height:130px; }
.space-kind-teagift .space-live-preview15::after { content:""; position:absolute; right:10px; top:15px; bottom:15px; width:82px; border-radius:12px; background:url('/assets/tea-pack-scene-20261010-v1.jpg') center/cover; opacity:.85; }
.space-kind-salon .space-live-preview15 { border-color:rgba(165,197,164,.3); background:linear-gradient(135deg,rgba(67,99,80,.22),rgba(102,75,121,.2)); }
.space-form15>.space-primary15 { width:100%; }
.space-status15 { font-size:13px; line-height:1.75; color:#dfc5a3; margin:12px 0 8px; }
.space-muted15 { display:block; font-size:12px; color:#9e9bac; line-height:1.85; margin:10px 0; }
.space-result15 { margin-top:30px; padding:23px; background:linear-gradient(145deg,#242034,#111726); border:1px solid rgba(222,194,155,.38); border-radius:24px; scroll-margin-top:18px; }
.space-result15[hidden] { display:none; }
.space-result15>h2 { font-size:25px; margin-bottom:11px; }
.space-plan-intro15 { color:#cbc3cd; font-size:14px; line-height:1.8; margin:0 0 20px; }
.space-metrics15 { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; margin-bottom:23px; }
.space-metrics15>div { background:rgba(7,10,22,.46); border-radius:13px; border:1px solid rgba(233,207,171,.12); padding:13px 10px; min-width:0; }
.space-metrics15 small { color:#a9a2b7; font-size:11px; display:block; line-height:1.6; }
.space-metrics15 b { display:block; font-size:17px; color:#e3caa6; line-height:1.5; margin-top:5px; overflow-wrap:anywhere; }
.space-plan-section15 { margin-top:24px; }
.space-plan-section15 h3,.space-insights15 h3 { font-size:18px; line-height:1.4; margin:0 0 13px; }
.space-plan-list15,.space-timeline15 { display:grid; gap:11px; }
.space-plan-row15 { padding:15px; background:rgba(38,39,57,.66); border:1px solid rgba(200,182,213,.12); border-radius:14px; }
.space-plan-row15 strong { display:block; font-size:14px; color:#e8ddd0; line-height:1.6; }
.space-plan-row15 p { font-size:14px; line-height:1.85; color:#bcb6c6; margin:6px 0 0; }
.space-timeline15 .space-plan-row15 { border-left:2px solid #c4a179; }
.space-insights15 { padding:20px 0 3px; margin-top:23px; border-top:1px solid rgba(220,197,168,.16); }
.space-insights15 article { padding:14px 0; border-bottom:1px solid rgba(220,197,168,.1); }
.space-insights15 h4 { color:#dbc3a5; font-size:15px; margin:0 0 8px; }
.space-insights15 p { color:#c1b9ca; font-size:14px; line-height:1.85; margin:0; }
.space-insights15 .space-kicker15 { color:#d5b997; font-size:10px; margin-bottom:9px; }
.space-actions15 { display:flex; flex-wrap:wrap; gap:9px; margin-top:22px; }
.space-actions15>button { flex:1 1 42%; }
.space-next15 { margin-top:27px; padding-top:20px; border-top:1px solid rgba(215,199,179,.15); }
.space-next15>p { font-size:14px; color:#c4bbcc; line-height:1.75; }
.space-next15 button { display:block; width:100%; margin-top:10px; }
.space-notice15 { font-size:13px; color:#ddc6a7; padding:12px; border:1px solid rgba(212,184,146,.23); border-radius:12px; line-height:1.8; }
.space-deliver15 { padding:23px 16px; margin-top:26px; border-radius:16px; background:rgba(63,47,80,.22); border:1px solid rgba(220,193,158,.12); }
.space-deliver15 small { font-size:11px; color:#a59aaf; }
.space-deliver15 p { color:#d5bea0; font-size:13px; line-height:1.8; margin:8px 0 0; }
.space-foot15 { font-size:11px; color:#807b90; line-height:1.85; padding:23px 4px 9px; margin:0; }
.space-archive15 { width:min(660px,calc(100vw - 32px)); max-height:85dvh; box-sizing:border-box; background:#131626; color:#eee5df; border:1px solid rgba(206,184,162,.35); border-radius:23px; padding:23px; overflow:auto; }
.space-archive15::backdrop { background:rgba(4,6,12,.84); backdrop-filter:blur(8px); }
.space-archive15>header { display:flex; justify-content:space-between; align-items:center; gap:15px; font-size:20px; font-weight:700; }
.space-archive15>header button { padding:6px 13px; font-weight:400; font-size:12px; }
.space-archive-list15 { display:grid; gap:13px; margin:18px 0; }
.space-card15 { background:#1d2032; border:1px solid rgba(227,202,170,.19); border-radius:17px; padding:17px; }
.space-card15 h3 { font-size:17px; margin:8px 0; line-height:1.5; }
.space-card15 p { color:#afa7bd; font-size:13px; line-height:1.8; }
@media(max-width:560px) {
 .space-hero15 { height:355px; }
 .space-hero-copy15 { left:21px; right:21px; bottom:20px; }
 .space-hero-copy15 h1 { font-size:31px; }
 .space-hero-copy15>p:last-child { font-size:13px; }
 .space-body15 { padding:0 16px; }
 .spaces-view15 h2 { font-size:22px; }
 .space-guide-card15 { grid-template-columns:91px minmax(0,1fr); gap:13px; padding:12px; }
 .space-guide-card15>img { width:91px; min-height:132px; }
 .space-guide-card15 h3 { font-size:17px; }
 .space-guide-card15 p { font-size:12px; line-height:1.8; margin-bottom:7px; }
 .space-guide-card15 button { font-size:11px; }
 .space-form15,.space-result15 { padding:18px; }
 .space-form-grid15 { gap:15px 10px; }
 .space-field15 { font-size:12px; }
 .space-field15 input,.space-field15 select,.space-field15 textarea { padding:10px 8px; font-size:16px; }
 .space-field15 input[type=date] { font-size:12px; }
 .space-metrics15>div { padding:11px 8px; }
 .space-metrics15 b { font-size:15px; }
 .space-plan-row15 { padding:13px; }
 .space-plan-row15 p { font-size:13px; }
 .space-actions15>button { font-size:12px; padding:12px 9px; }
 .space-nav15 button { font-size:11px; }
 .space-archive15 { padding:19px; }
}
@media(max-width:350px) {
 .space-guide-card15 { grid-template-columns:73px minmax(0,1fr); gap:10px; }
 .space-guide-card15>img { width:73px; }
 .space-guide-card15 h3 { font-size:16px; }
 .space-form15,.space-result15 { padding:14px; }
 .space-form-grid15 { grid-template-columns:1fr; }
 .space-hero-copy15 h1 { font-size:28px; }
 .space-kind-teagift .space-live-preview15 { padding:14px; padding-right:14px; }
 .space-kind-teagift .space-live-preview15::after { display:none; }
}
@media(prefers-reduced-motion:reduce) { .spaces-view15 * { scroll-behavior:auto; } }

