/* Hosting Command Center: its own "evening dinner party" palette on the shared Polish and Plan base.
   Shared with the Gift app: cream paper, gold accents, serif headings, layout. Different: midnight navy + terracotta. */
:root{
  --pine-950:#151e31;
  --pine-900:#22304d;
  --pine-700:#3a4d73;
  --pine-500:#7486a8;
  --cranberry:#b45f45;
  --cranberry-dark:#8f4733;
  --sage:#e3e8f1;
  --blush:#f6e4dc;
  --gold-soft:#ecd9a8;
  --shadow:0 14px 40px rgba(21,30,49,.10);
}
.pine-card{background:linear-gradient(145deg,var(--pine-900),#33466b)}
.budget-ring:before{background:#33466b}
.primary-button{box-shadow:0 9px 24px rgba(34,48,77,.22)}
.primary-small{box-shadow:0 7px 20px rgba(34,48,77,.2)}
.floating-add{box-shadow:0 12px 27px rgba(143,71,51,.3)}
.status-badge.good{background:#e1e9e3;color:#2f5a48}
.status-badge.warn{background:#f6ead6;color:#7a5520}
.status-badge.alert{background:var(--blush);color:#8f4733}
.progress-track span{background:linear-gradient(90deg,var(--cranberry),#cf8463)}
.budget-card.over-budget{background:linear-gradient(145deg,#6b2f22,var(--cranberry))}
.budget-card.over-budget .budget-ring:before{background:#83402e}
.save-status:before{background:#a9d3df}
.app-header{background:linear-gradient(135deg,var(--pine-950),#33466b)}

/* Two-line title: "Hosting" / "Command Center" */
.app-header h1{font-size:1.95rem}
.h1-line{display:block;white-space:nowrap}
.header-copy{max-width:290px}
.compact-header .h1-line{display:inline}
.compact-header .app-header h1{font-size:1.2rem}

/* Back buttons on every section (bottom menu still works too) */
.view-back{display:inline-flex!important;align-items:center}

.bottom-nav.five{grid-template-columns:repeat(5,1fr);padding-left:8px;padding-right:8px}
.bottom-nav.five .nav-item{font-size:.6rem}

/* Install screen: instructions first, then the button */
.install-lead{background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 14px;font-size:.8rem!important;color:var(--ink)!important;text-align:left;line-height:1.5;margin:4px 0 12px!important}
#welcome-install-instructions .welcome-primary-action{margin:6px 0 12px}

/* Event summary card and info cards */
.event-card,.info-card{width:100%;display:grid;grid-template-columns:40px 1fr 18px;align-items:center;gap:12px;border:1px solid var(--line);background:var(--paper);border-radius:var(--radius-lg);padding:13px 14px;margin-bottom:12px;text-align:left;cursor:pointer;color:var(--ink);box-shadow:0 7px 20px rgba(21,30,49,.045)}
.event-card-icon,.info-icon{width:40px;height:40px;border-radius:13px;background:#f3ede0;display:grid;place-items:center;font-size:1.05rem}
.event-card-copy strong,.info-copy strong{display:block;font-size:.88rem}
.event-card-copy small,.info-copy small{display:block;color:var(--muted);font-size:.72rem;margin-top:3px;line-height:1.4}
.event-card>svg,.info-card>svg{width:18px;height:18px;color:#8a958f}
.info-card.vendor{border-color:#d9c4a8;background:#fffaf2}
.info-card.vision-empty{border-style:dashed;border-color:#d8b98f;background:#fffaf3}
.pre{white-space:pre-wrap}

/* Decor vision board */
.vision-card{border:1px solid #d9c4a8;background:#fffaf2;border-radius:var(--radius-lg);padding:14px 16px;margin-bottom:12px}
.vision-head{display:flex;align-items:center;justify-content:space-between}
.vision-head strong{font-family:Georgia,serif;font-size:1rem;color:var(--pine-900)}
.vision-who{display:block;color:var(--muted);font-size:.72rem;margin-top:2px}
.vision-card p{font-size:.82rem;line-height:1.55;color:var(--ink);margin:10px 0 0}
.vision-links{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px}
.vision-links a{font-size:.72rem;font-weight:800;color:var(--cranberry-dark);background:var(--blush);border-radius:999px;padding:6px 10px;text-decoration:none}

/* Segmented tabs and filters */
.segmented{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin:0 0 14px;padding:4px;background:#ece7de;border-radius:999px}
.segmented::-webkit-scrollbar{display:none}
.segmented button{flex:1 0 auto;border:0;background:transparent;border-radius:999px;padding:9px 12px;font-size:.76rem;font-weight:800;color:#5c6577;cursor:pointer;white-space:nowrap;min-height:38px}
.segmented button.active{background:var(--paper);color:var(--pine-900);box-shadow:0 3px 10px rgba(21,30,49,.1)}
.segmented.two button,.segmented.three button{flex:1 1 0;padding-left:6px;padding-right:6px}

/* Add item / add a list row */
.add-row{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:2px 0 14px}
.add-row .primary-small{width:100%}
.secondary-small{border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--pine-900);font-weight:800;font-size:.82rem;padding:11px 15px;min-height:44px;cursor:pointer;white-space:nowrap}
.single-link{display:block;margin:4px auto 0;text-decoration:underline}

/* Card extras */
.card-line{display:block;margin-top:10px;font-size:.74rem;color:#5d6577;line-height:1.5}
.dietary-box{border:1px solid #c9d3e3;background:#eef2f8;border-radius:var(--radius-lg);padding:14px 16px;margin-bottom:12px}
.dietary-box strong{font-size:.82rem;color:var(--pine-900)}
.dietary-box ul{margin:8px 0 0;padding-left:18px;font-size:.76rem;color:#45506a;line-height:1.55}

/* Grouped checklists (shopping, setup, tasks) */
.group-block{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);padding:6px 14px;margin-bottom:12px}
.group-title{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--cranberry);margin:10px 0 4px}
.check-row{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--line)}
.group-title+.check-row{border-top:0}
.check-toggle{width:30px;height:30px;border-radius:50%;border:2px solid #cdbfa6;background:#fff;display:grid;place-items:center;cursor:pointer;padding:0;color:transparent}
.check-toggle svg{width:16px;height:16px;stroke-width:3}
.check-row.is-done .check-toggle{background:var(--pine-700);border-color:var(--pine-700);color:#fff}
.check-body{border:0;background:transparent;text-align:left;padding:0;cursor:pointer;min-width:0;color:var(--ink)}
.check-body strong{display:block;font-size:.86rem;overflow:hidden;text-overflow:ellipsis}
.check-body small{display:block;font-size:.7rem;color:var(--muted);margin-top:2px}
.check-row.is-done .check-body strong{text-decoration:line-through;color:#8a8f99}
.check-right{font:600 .84rem Georgia,serif;color:var(--ink);white-space:nowrap}
.time-pill{display:inline-block;font:800 .7rem -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--sage);color:var(--pine-900);border-radius:999px;padding:5px 9px}
.timeline{border-left:4px solid var(--gold-soft)}

/* Add chooser */
.add-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-bottom:calc(20px + var(--safe-bottom))}
.add-grid button{border:1px solid var(--line);background:var(--paper);border-radius:18px;padding:16px 10px;display:grid;justify-items:center;gap:7px;font-size:.8rem;font-weight:800;color:var(--pine-900);cursor:pointer;min-height:92px}
.add-grid button span{font-size:1.5rem}

/* Forms */
.field.check-field{display:flex;align-items:flex-start;gap:10px;min-height:48px;margin-bottom:15px}
.field.check-field input{width:24px;height:24px;min-height:0;accent-color:var(--pine-700);margin:2px 0 0;flex:0 0 24px}
.field.check-field span{font-size:.84rem;font-weight:800;color:var(--ink)}
.field.check-field span small{display:block;font-weight:600;font-size:.7rem;color:var(--muted);margin-top:3px;line-height:1.4}
.field-pair .check-field{align-self:end}
.field-note{margin:-6px 2px 14px}
.form-subhead{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--cranberry);margin:22px 2px 12px}
.field-group-label{font-size:.72rem;font-weight:800;color:#56645e;margin:4px 0 8px}
.field-group-label small{display:block;font-weight:600;color:var(--muted);margin-top:2px}
.link-input,.member-row input{width:100%;border:1px solid #dcd4c7;background:var(--paper);color:var(--ink);border-radius:13px;min-height:46px;padding:10px 12px;font-size:16px;margin-bottom:8px}
.members-editor{display:grid;gap:10px;margin:-4px 0 16px}
.member-row{border:1px solid var(--line);background:#fffefb;border-radius:14px;padding:10px 12px 4px}
.member-title{margin:0 0 7px;font-size:.68rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em;color:var(--cranberry)}
.member-row .field-pair{display:grid;grid-template-columns:1fr 1fr;gap:8px}

/* "Coming up" titles wrap instead of being cut off */
.attention-copy strong{white-space:normal;overflow:visible;line-height:1.3}

@media(max-width:380px){.app-header h1{font-size:1.7rem}.segmented button{font-size:.7rem}}
.header-art{right:14px}
