:root{--accent:#bd693d;--accent-2:#f5b46e;--ink:#2d2724;--muted:#7d716a;--paper:#fffdf9;--soft:#f8eee3;--line:#ead8c7;font-family:-apple-system,BlinkMacSystemFont,"Noto Sans TC","PingFang TC",sans-serif;color:var(--ink);background:#f6eee5}*{box-sizing:border-box}body{margin:0;min-height:100dvh;background:radial-gradient(circle at 15% 2%,#fff7e9 0,transparent 30%),linear-gradient(160deg,#fdf7ef,#f4e8dc)}button,a,input,textarea{font:inherit}.line-app{width:min(100%,620px);min-height:100dvh;margin:auto;background:rgba(255,253,249,.88);box-shadow:0 0 50px #69402b17}.app-head{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:12px;min-height:72px;padding:calc(10px + env(safe-area-inset-top)) 16px 10px;background:rgba(255,253,249,.92);border-bottom:1px solid #ead8c7aa;backdrop-filter:blur(16px)}.app-head>button{width:40px;height:40px;border:1px solid var(--line);border-radius:14px;background:white;color:var(--accent);font-size:24px}.identity{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.identity img{width:42px;height:42px;object-fit:contain;border-radius:12px;padding:6px;background:linear-gradient(145deg,var(--accent),#713d29)}.identity div{display:flex;flex-direction:column;min-width:0}.identity strong{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.identity small{font-size:11px;color:var(--muted)}.streak{padding:7px 10px;border-radius:999px;background:#fff1d6;color:#a34e25;font-size:11px;font-weight:800}.content{padding:20px 16px calc(36px + env(safe-area-inset-bottom))}.loading,.state-card{min-height:65dvh;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;gap:10px}.loading span{width:44px;height:44px;border:4px solid #efd9c7;border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.loading small,.state-card p{color:var(--muted);line-height:1.7}.state-card>span{font-size:48px}.state-card button,.primary{border:0;border-radius:17px;background:linear-gradient(135deg,var(--accent),#e88443);color:white;font-weight:900;padding:15px 18px;box-shadow:0 12px 24px #a44f2530}.hero{padding:18px 4px 22px}.hero .eyebrow{margin:0;color:var(--accent);font-size:11px;font-weight:900;letter-spacing:.18em}.hero h1{font-size:30px;line-height:1.18;margin:8px 0}.hero p{margin:0;color:var(--muted);line-height:1.7}.surface{background:rgba(255,255,255,.92);border:1px solid var(--line);border-radius:26px;padding:20px;margin-bottom:16px;box-shadow:0 18px 42px #78543b12}.menu-welcome{padding:16px 5px 22px}.menu-welcome strong{display:block;font-size:27px;margin:5px 0}.menu-welcome span{color:var(--muted);font-size:14px}.feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.feature-card{min-height:148px;border:1px solid var(--line);border-radius:25px;background:white;color:var(--ink);padding:18px 15px;text-align:left;box-shadow:0 14px 30px #74533e10;position:relative;overflow:hidden}.feature-card:after{content:"";position:absolute;width:90px;height:90px;border-radius:50%;background:var(--glow,#f9e5d4);right:-30px;bottom:-36px}.feature-card .icon{display:flex;width:48px;height:48px;border-radius:18px;align-items:center;justify-content:center;background:var(--glow,#f9e5d4);font-size:25px}.feature-card strong,.feature-card small{display:block;position:relative;z-index:1}.feature-card strong{font-size:17px;margin-top:16px}.feature-card small{color:var(--muted);margin-top:4px}.today-card{text-align:center;padding:28px 22px}.date-pill,.category-pill{display:inline-flex;padding:7px 12px;border-radius:999px;background:var(--soft);color:var(--accent);font-size:11px;font-weight:900}.today-card h2{font-size:23px;margin:20px 0 8px}.scripture{font-family:"Noto Serif TC",serif;font-weight:800;font-size:22px;line-height:1.8;margin:25px 0 10px}.reference{color:var(--muted);font-size:13px}.blessing{margin:25px 0;padding:17px;text-align:left;background:linear-gradient(145deg,#fff8eb,#f6eadf);border-radius:18px;line-height:1.75}.response{margin-top:14px;color:var(--accent);font-weight:800}.mood-list,.category-list{display:flex;gap:9px;padding:2px 0 12px;scrollbar-width:none}.mood-list{overflow:auto}.category-list{flex-wrap:wrap;overflow:visible;white-space:normal}.category-list button{white-space:normal;max-width:100%;line-height:1.35}.mood-list button,.category-list button{white-space:nowrap;padding:11px 15px;border:1px solid var(--line);border-radius:999px;background:white;color:var(--ink);font-weight:800}.mood-list button.active,.category-list button.active{background:var(--accent);color:white;border-color:var(--accent)}.help-card{transition:.2s}.help-card blockquote{font-size:19px;line-height:1.8;margin:18px 0}.gathering{display:grid;grid-template-columns:58px 1fr;gap:14px;align-items:start}.day-tile{border-radius:18px;background:linear-gradient(145deg,var(--accent),#e99355);color:white;text-align:center;padding:9px 4px}.day-tile b{display:block;font-size:20px}.gathering h2{font-size:18px;margin:2px 0 7px}.gathering p{color:var(--muted);font-size:13px;line-height:1.7;margin:3px 0}.map-link{display:inline-flex;margin-top:10px;color:var(--accent);font-weight:800;text-decoration:none}.love-builder{display:grid;gap:16px}.love-preview{padding:0;overflow:hidden}.love-canvas-wrap{aspect-ratio:4/5;position:relative;background:linear-gradient(145deg,#d9a475,#744835);overflow:hidden}.love-canvas-wrap>img.bg{width:100%;height:100%;object-fit:cover}.love-canvas-wrap:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#00000018,#00000070)}.love-copy{position:absolute;z-index:2;inset:20px;display:flex;flex-direction:column;padding:10px 8px;color:white;text-shadow:0 2px 15px #0008}.love-copy img{width:70px;height:55px;object-fit:contain;align-self:center;margin-bottom:10px}.love-copy .to{font-size:13px;text-align:center}.love-copy-panel{width:100%;flex:1;min-height:0;display:flex;flex-direction:column;justify-content:center;overflow:hidden;margin:14px auto 12px;padding:18px 18px;border-radius:20px;background:rgba(255,253,248,.94);color:#19483f;text-shadow:none;box-shadow:0 10px 28px #112f2920}.love-copy-panel .love-verse{margin:0;font-family:'Noto Serif TC',serif;font-size:clamp(15px,4.7vw,20px);font-weight:700;line-height:1.7}.love-copy-panel .love-reference{display:block;margin-top:8px;text-align:right;color:#73847e;font-size:11px}.love-copy-panel .love-blessing{margin:12px 0 0;padding-top:12px;border-top:1px solid #dbe9e3;color:#46675e;font-size:12px;line-height:1.7}.love-copy .church{font-size:13px;text-align:center;margin-top:auto;font-weight:800}.love-copy .from{text-align:right;font-size:11px;margin-top:6px}.scene-strip{display:flex;gap:10px;overflow:auto}.scene-strip button{width:76px;height:76px;flex:0 0 auto;border:3px solid transparent;border-radius:18px;padding:0;overflow:hidden;background:#eee}.scene-strip button.active{border-color:var(--accent)}.scene-strip img{width:100%;height:100%;object-fit:cover}.field{display:grid;gap:7px;margin:12px 0;font-size:13px;font-weight:800}.field input,.field textarea{width:100%;border:1px solid var(--line);border-radius:16px;padding:13px;background:#fffdfb;color:var(--ink)}.field textarea{min-height:110px;resize:vertical}.action-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.secondary{border:1px solid var(--line);border-radius:17px;background:white;color:var(--ink);font-weight:900;padding:14px}.share-status{text-align:center;color:var(--muted);font-size:12px;min-height:18px}.newcomer-callout{text-align:center;padding:35px 20px}.newcomer-callout>span{font-size:52px}.newcomer-callout h2{font-size:25px}.newcomer-callout p{color:var(--muted);line-height:1.8}.newcomer-callout a{display:block;text-decoration:none}.empty{padding:30px;text-align:center;color:var(--muted)}@keyframes spin{to{transform:rotate(360deg)}}@media(min-width:700px){body{padding:24px}.line-app{min-height:calc(100dvh - 48px);border-radius:30px;overflow:hidden}.app-head{top:24px}.content{padding:28px}.feature-grid{gap:16px}}

/* Readable action text across both church themes. */
.state-card button,.primary{background:linear-gradient(135deg,#a84b26,#913c1b);color:#fff}
