/* React/Lucide compatibility + relationship picker polish */
.life-grid article>svg{width:23px;height:23px;color:#ff80b5;filter:drop-shadow(0 0 10px rgba(255,96,164,.2))}
.side-menu button>svg{width:38px;height:38px;padding:9px;border-radius:50%;color:#ffe4c4;background:linear-gradient(145deg,rgba(30,25,38,.72),rgba(9,9,14,.45));border:1px solid rgba(255,227,191,.18);backdrop-filter:blur(11px);box-shadow:0 7px 20px rgba(0,0,0,.25),inset 0 1px rgba(255,255,255,.07)}
.side-menu button:hover>svg{border-color:rgba(255,204,163,.46);filter:drop-shadow(0 0 12px rgba(229,169,111,.18))}
.task>svg{width:18px;height:18px;color:#ff9fc7;filter:drop-shadow(0 0 8px rgba(255,87,156,.2))}
.module-grid button>svg{position:absolute;right:9px;top:9px;width:48px;height:48px;opacity:.18;stroke-width:1.4;filter:drop-shadow(0 0 18px currentColor)}
.quick-actions button>svg{width:19px;height:19px;margin-bottom:5px;color:#ffacd0}
.composer button{display:inline-flex;align-items:center;gap:6px}.composer button svg{width:14px;height:14px}
.bottom-nav button>svg{width:20px;height:20px;transition:transform .2s ease,filter .2s ease}
.bottom-nav .active>svg{transform:translateY(-1px);filter:drop-shadow(0 0 9px rgba(255,104,170,.62))}
.node>svg{width:58px;height:58px;padding:16px;border-radius:50%;background:linear-gradient(145deg,#26222f,#17151e);border:1px solid rgba(255,255,255,.12);box-shadow:0 9px 24px rgba(0,0,0,.25);flex:0 0 auto}
.node.current>svg{background:radial-gradient(circle at 35% 30%,#ff83bc,#c13278 44%,#6d2b63 100%);border-color:rgba(255,153,202,.44);box-shadow:0 0 20px rgba(231,64,139,.5),0 0 55px rgba(231,64,139,.18);animation:nodeGlow 2.6s ease-in-out infinite}

.picker{padding:22px 22px 110px;background:radial-gradient(circle at 50% 0,rgba(123,49,111,.22),transparent 34%),linear-gradient(180deg,#0a0b13,#070810 76%);color:#fff8fb}
.picker::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 10% 55%,rgba(61,91,160,.12),transparent 32%)}
.picker>*{position:relative;z-index:1}
.picker .back{border:1px solid rgba(255,255,255,.09);background:rgba(13,12,20,.58);backdrop-filter:blur(15px);border-radius:999px;padding:8px 12px;display:inline-flex;align-items:center;gap:5px;color:#cfc5d1}
.picker .back svg{width:17px;height:17px}
.picker>h1{font-size:38px;margin:34px 0 8px;letter-spacing:-.035em}
.picker>p{color:#9e96a5;margin:0 0 22px}
.picker-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:760px;margin:0 auto 20px}
.picker-grid article{min-height:520px;position:relative;overflow:hidden;border-radius:24px;border:1px solid rgba(255,255,255,.11);background-size:cover;background-position:center 6%;box-shadow:0 26px 70px rgba(0,0,0,.35);display:flex;flex-direction:column;justify-content:space-between;padding:16px;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.picker-grid article::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.025),transparent 40%,rgba(7,8,14,.82) 92%);pointer-events:none}
.picker-grid article>*{position:relative;z-index:1}
.picker-grid article>span{align-self:flex-start;padding:6px 9px;border-radius:999px;font-size:11px;background:rgba(9,9,15,.6);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(12px)}
.picker-grid article h2{font-size:30px;margin:0 0 4px}.picker-grid article p{margin:0;color:#d4c6d1}
.picker-grid article:hover{transform:translateY(-4px);border-color:rgba(255,143,195,.28)}
.picker-grid article.selected{border-color:rgba(255,122,181,.68);box-shadow:0 0 0 1px rgba(255,96,164,.22),0 28px 80px rgba(0,0,0,.42),0 0 50px rgba(220,61,139,.12)}
.picker-grid article.selected::after{content:"已选择";position:absolute;right:14px;top:14px;z-index:2;padding:6px 10px;border-radius:999px;font-size:10px;background:linear-gradient(135deg,#ef5b9b,#87366f);box-shadow:0 8px 22px rgba(220,61,139,.3)}
.picker>.wide{display:flex;justify-content:center;width:min(420px,100%);margin:18px auto 0}

@media(max-width:700px){
  .hero-photo{bottom:108px!important}
  .side-menu button>svg{width:33px;height:33px;padding:8px}
  .module-grid button>svg{width:40px;height:40px;right:6px;top:7px}
  .bottom-nav button>svg{width:19px;height:19px}
  .node>svg{width:48px;height:48px;padding:13px}
  .picker{padding:18px 14px 100px}.picker>h1{font-size:31px;margin-top:26px}.picker>p{font-size:13px}
  .picker-grid{gap:9px}.picker-grid article{min-height:430px;border-radius:19px;padding:12px}.picker-grid article h2{font-size:25px}.picker-grid article p{font-size:11px}.picker-grid article>span{font-size:9px;padding:5px 7px}
}

@media(max-width:390px){.picker-grid article{min-height:390px}.picker-grid{gap:7px}.picker{padding-left:10px;padding-right:10px}}
