:root{--wine:#461220;--burgundy:#8c2f39;--rose:#b23a48;--pink:#fcb9b2;--peach:#fed0bb;--bg:#fff7f8;--bg2:rgba(252,185,178,0.35);--bg3:rgba(254,208,187,0.45);--text:rgba(70,18,32,0.92);--muted:rgba(70,18,32,0.62);--card:rgba(255,255,255,0.78);--cardStrong:rgba(255,255,255,0.92);--border:rgba(178,58,72,0.18);--shadow:0 18px 55px rgba(70,18,32,0.12);--shadowSoft:0 10px 26px rgba(70,18,32,0.10);--error:#b23a48}*{box-sizing:border-box}body{margin:0;color:var(--text);background:var(--bg);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,Apple Color Emoji,Segoe UI Emoji}.planner-bg{min-height:100vh;display:grid;place-items:center;padding:28px;background:radial-gradient(900px circle at 18% 18%,rgba(178,58,72,.14),transparent 58%),radial-gradient(900px circle at 82% 22%,rgba(252,185,178,.26),transparent 58%),radial-gradient(900px circle at 60% 80%,rgba(254,208,187,.28),transparent 60%),linear-gradient(180deg,var(--bg),rgba(254,208,187,.18))}.card{width:min(760px,100%);background:var(--card);border:1px solid var(--border);border-radius:18px;padding:18px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.step{padding:12px 8px 8px}.title{font-size:34px;margin:0 0 8px;letter-spacing:-.2px}.subtitle{font-size:22px;margin:0 0 8px;letter-spacing:-.1px}.muted{color:var(--muted);margin:6px 0}.small{font-size:13px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.error{color:var(--error)}.row{display:flex;gap:10px;align-items:center;margin:10px 0}.space-between{justify-content:space-between}.input{height:42px;padding:0 12px;border:1px solid rgba(178,58,72,.22);border-radius:12px}.input,.textarea{background:rgba(255,255,255,.72);color:var(--text)}.textarea{width:100%;min-height:96px;padding:12px;border:1px solid rgba(178,58,72,.22);border-radius:14px;resize:vertical}.actions{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}.btn{height:42px;padding:0 16px;border-radius:12px;border:1px solid rgba(70,18,32,.14);background:rgba(255,255,255,.72);color:var(--text);cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,background .14s ease,border-color .14s ease}.btn:hover{transform:translateY(-1px);box-shadow:var(--shadowSoft);border-color:rgba(178,58,72,.28)}.btn:active{transform:translateY(0) scale(.99)}.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.primary{background:linear-gradient(180deg,rgba(178,58,72,.18),rgba(252,185,178,.25));border-color:rgba(178,58,72,.3)}.primary:hover{background:linear-gradient(180deg,rgba(178,58,72,.22),rgba(252,185,178,.3));border-color:rgba(178,58,72,.38)}.chips{margin-top:10px;display:flex;flex-wrap:wrap;gap:8px;min-height:36px;align-items:center}.chip{border:1px solid rgba(178,58,72,.22);background:rgba(255,255,255,.74);color:var(--text);border-radius:999px;padding:8px 12px;cursor:pointer;transition:transform .14s ease,box-shadow .14s ease}.chip:hover{transform:translateY(-1px);box-shadow:var(--shadowSoft)}.chip-x{margin-left:8px;opacity:.7}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}@media (max-width:560px){.grid{grid-template-columns:1fr}}.vibe{display:flex;align-items:center;gap:10px;padding:14px;border-radius:16px;border:1px solid rgba(178,58,72,.18);background:rgba(255,255,255,.74);color:var(--text);cursor:pointer;text-align:left;position:relative;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease,background .14s ease}.vibe:hover{transform:translateY(-1px);box-shadow:var(--shadowSoft);border-color:rgba(178,58,72,.28)}.vibe:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}.vibe.selected{border-color:rgba(178,58,72,.4);background:linear-gradient(180deg,rgba(252,185,178,.25),rgba(255,255,255,.72))}.vibe-emoji{font-size:20px}.vibe-label{font-weight:650}.vibe-check{position:absolute;right:12px;top:10px;font-weight:900;color:var(--burgundy)}.summary{display:grid;gap:10px;margin-top:12px}.summary-block{border:1px solid rgba(178,58,72,.18);background:rgba(255,255,255,.78);border-radius:16px;padding:12px}.summary-label{font-size:13px;color:var(--muted);margin-bottom:6px}.summary-value{font-weight:650;line-height:1.4}.intro .title{margin-bottom:0}.intro-actions{justify-content:flex-end;margin-top:18px}