/* IceCreamVibes Sundae Planner v1.0 — styles scoped to planner */
.icv-app{--ink:#312846;--purple:#6c48ae;--light:#fff8f9;--border:#e9dbe9;--pink:#fddee9;--accent:#df5d94;--mint:#d8f4eb;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);max-width:1100px;margin:0 auto;line-height:1.5;font-size:16px}
.icv-app *{box-sizing:border-box}.icv-app button,.icv-app input{font:inherit}.icv-app button{cursor:pointer}.icv-app button:focus-visible,.icv-app input:focus-visible{outline:3px solid #b280f7;outline-offset:3px}.icv-hero{border-radius:26px;padding:clamp(26px,5vw,54px);background:radial-gradient(circle at 95% 10%,#fbd7e6 0,transparent 35%),linear-gradient(125deg,#f9ebff,#fff2ef 70%,#fef6e6);position:relative;overflow:hidden}.icv-eyebrow{color:#875da4;font-size:12px;letter-spacing:2px;text-transform:uppercase;font-weight:800}.icv-hero h1{font-size:clamp(34px,5vw,64px);max-width:740px;line-height:1.04;letter-spacing:-2px;margin:10px 0 12px}.icv-hero p{max-width:630px;color:#6b597b;font-size:18px;margin:0}.icv-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.icv-chip{border-radius:40px;padding:7px 12px;background:#ffffffc9;color:#775780;font-size:13px;font-weight:700}.icv-layout{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}.icv-panel{border:1px solid var(--border);border-radius:22px;background:#fff;padding:clamp(20px,3vw,30px);box-shadow:0 8px 24px rgba(69,35,75,.045)}.icv-panel h2{font-size:24px;letter-spacing:-.7px;margin:0 0 4px}.icv-subtle{color:#7b7084;font-size:14px;margin:0 0 18px}.icv-field{margin:20px 0}.icv-field>label,.icv-label{display:block;font-weight:700;margin-bottom:9px;font-size:14px}.icv-inline{display:flex;gap:10px;align-items:center}.icv-input{border:1px solid #d9cbdc;border-radius:11px;padding:12px 14px;width:100%;color:var(--ink);background:#fff;min-height:46px}.icv-small{max-width:150px}.icv-options{display:flex;flex-wrap:wrap;gap:8px}.icv-option{border:1px solid var(--border);border-radius:999px;background:#fff;padding:9px 13px;color:#5b4c68;transition:.15s}.icv-option[aria-pressed="true"]{background:#663ba4;color:#fff;border-color:#663ba4}.icv-note{color:#776e7a;font-size:12px;margin-top:7px}.icv-btn{border:0;border-radius:13px;background:#673caa;color:white;padding:12px 18px;font-weight:800}.icv-btn:hover{filter:brightness(1.08)}.icv-btn.secondary{border:1px solid #d7c5dc;background:#fff;color:#664390}.icv-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.icv-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:18px 0}.icv-stat{border-radius:15px;background:#f9f2fb;padding:13px 10px}.icv-stat strong{display:block;font-size:24px;line-height:1.2}.icv-stat span{display:block;color:#76697d;font-size:12px;margin-top:4px}.icv-alert{border-radius:12px;background:#fff1de;padding:11px 13px;font-size:13px;color:#795221}.icv-alert.good{background:#e7f8f0;color:#25654f}.icv-output{margin-top:20px}.icv-output h2{font-size:26px;margin:0}.icv-check-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}.icv-progress{font-size:14px;color:#795c8d;font-weight:700}.icv-category{margin-top:18px}.icv-category h3{font-size:17px;margin:0 0 8px}.icv-item{display:grid;grid-template-columns:22px 1fr auto;align-items:start;gap:10px;border-bottom:1px solid #f1eaf1;padding:11px 0}.icv-item input{accent-color:#7045a6;width:18px;height:18px;margin:4px 0 0}.icv-item .icv-item-name{font-weight:650}.icv-item .icv-detail{font-size:13px;color:#776a7f}.icv-item .icv-price{font-size:14px;font-weight:700;color:#795e85}.icv-item.is-done .icv-item-name{text-decoration:line-through;opacity:.5}.icv-disclaimer{font-size:12px;color:#776e7a;margin-top:15px}.icv-footer{margin:18px 0 5px;font-size:12px;color:#81788a;text-align:center}.icv-hidden{display:none!important}@media(max-width:760px){.icv-layout{grid-template-columns:1fr}.icv-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.icv-stat strong{font-size:20px}.icv-hero h1{letter-spacing:-1px}}@media print{body{background:white!important}.icv-app{max-width:none;color:#000}.icv-hero{background:#fff!important;padding:0 0 15px}.icv-hero h1{font-size:27px}.icv-chips,.icv-settings,.icv-actions,.icv-footer,.icv-no-print{display:none!important}.icv-layout{display:block}.icv-results{padding:0!important;border:0!important;box-shadow:none!important}.icv-output{margin-top:0}.icv-item{break-inside:avoid}.icv-app .icv-alert{border:1px solid #ccc;background:white!important}.icv-app .icv-item input{appearance:auto}}
