.quick-card.planning{background:var(--teal)}
.planning-lock{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;text-align:center}
.planning-lock p{color:var(--muted);margin:0 0 16px}
.planning-lock input{width:160px;height:58px;text-align:center;font:700 28px/1 "DM Sans",sans-serif;letter-spacing:.4em;border:1px solid var(--line);border-radius:14px;background:var(--paper)}
.planning-lock .primary{display:block;margin:16px auto 0;min-width:160px}
.planning-lock small{display:block;color:#b83f28;margin-top:10px}
#planningContent .detail-card .text-action{display:block;padding:4px 0;text-decoration:none}
.planning-ask{background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px}
.planning-examples{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}
.planning-examples button{border:1px solid var(--line);background:var(--paper);border-radius:99px;padding:8px 12px;font-size:13px;text-align:left;cursor:pointer}
.planning-ask textarea{width:100%;border:1px solid var(--line);border-radius:14px;padding:12px;font-size:16px;resize:vertical;background:var(--paper)}
.planning-check{display:flex;gap:9px;align-items:flex-start;font-size:14px;margin:12px 0 4px;color:var(--ink)}
.planning-check input{width:20px;height:20px;margin-top:1px;flex:0 0 20px}
.planning-ask .primary.full{margin:12px 0 6px}
.planning-ask .primary:disabled{opacity:.6;cursor:wait}
.planning-note{color:var(--muted);font-size:13px;margin:6px 2px}
.planning-answer{background:var(--sky);border-radius:20px;padding:18px;margin-top:12px;line-height:1.55;white-space:pre-wrap;word-break:break-word}
.planning-answer.error{background:#fbe2dd;color:#b83f28}
.planning-answer a,.planning-item a{color:var(--sea);font-weight:700}
.planning-item{background:#fff;border:1px solid var(--line);border-radius:18px;margin-bottom:10px}
.planning-item summary{padding:15px 16px;cursor:pointer;font-weight:700;list-style:none}
.planning-item summary small{display:block;font-weight:400;color:var(--muted);margin-top:4px;font-size:12px}
.planning-item div{padding:0 16px 16px;line-height:1.55;white-space:pre-wrap;word-break:break-word;color:var(--ink)}
a.planning-watch{display:block;padding:14px 16px;text-decoration:none;color:var(--ink)}
a.planning-watch small{display:block;color:var(--muted);font-size:12px;margin-top:4px}
.planning-lock small[hidden]{display:none}
.planning-lock[hidden],#planningContent[hidden]{display:none}
.planning-thread{display:flex;flex-direction:column;gap:8px;margin-bottom:12px;max-height:60vh;overflow:auto}
.planning-msg{padding:12px 14px;border-radius:16px;line-height:1.5;white-space:pre-wrap;word-break:break-word;font-size:15px}
.planning-msg.user{background:var(--paper);align-self:flex-end;max-width:88%}
.planning-msg.assistant{background:var(--sky);max-width:96%}
.planning-msg.error{background:#fbe2dd;color:#b83f28}
.planning-msg a{color:var(--sea);font-weight:700}
.planning-place{position:relative;display:flex;gap:6px;margin-bottom:8px}
.planning-place[hidden]{display:none}
.planning-place input{flex:1;min-width:0;border:1px solid var(--line);border-radius:12px;padding:10px 12px;font-size:16px;background:var(--paper)}
.planning-mapbtn,.planning-new{border:1px solid var(--line);background:var(--paper);border-radius:12px;padding:8px 10px;font-size:13px;cursor:pointer}
.planning-new{display:block;margin:0 auto 6px}
.planning-new[hidden],.planning-addrlist[hidden],.planning-map[hidden],.planning-thread[hidden]{display:none}
.planning-addrlist{position:absolute;top:100%;left:0;right:0;z-index:500;background:#fff;border:1px solid var(--line);border-radius:12px;list-style:none;margin:4px 0 0;padding:4px;box-shadow:0 8px 20px rgba(0,0,0,.12)}
.planning-addrlist li{padding:10px;border-radius:8px;cursor:pointer;font-size:14px}
.planning-addrlist li:hover{background:var(--paper)}
.planning-map{height:260px;border-radius:14px;margin-bottom:8px;border:1px solid var(--line)}
