/* ChuckIn Prototype - all selectors are scoped to .chuckin-app */
.chuckin-app {
  --ci-black: #090909;
  --ci-ink: #171717;
  --ci-muted: #62666d;
  --ci-white: #ffffff;
  --ci-paper: #fbfcfd;
  --ci-soft: #f2f7fa;
  --ci-blue: #FFC400;
  --ci-blue-dark: #E2A900;
  --ci-aqua: #FFF0A8;
  --ci-line: #dfe5e8;
  --ci-red: #d71920;
  --ci-green: #117a4f;
  --ci-warning: #a85f00;
  --ci-radius: 24px;
  --ci-shadow: 0 24px 70px rgba(0, 0, 0, 0.09);
  width: min(1160px, calc(100% - 28px));
  margin: 30px auto 70px;
  color: var(--ci-ink);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.55;
}

.chuckin-app *, .chuckin-app *::before, .chuckin-app *::after { box-sizing: border-box; }
.chuckin-app img { max-width: 100%; height: auto; display: block; }
.chuckin-app a { color: inherit; }
.chuckin-app button,
.chuckin-app input,
.chuckin-app textarea { font: inherit; }

.ci-demo-banner {
  margin-bottom: 22px;
  padding: 11px 16px;
  border: 1px solid #b6e0f4;
  border-radius: 14px;
  background: #eefaff;
  color: #185d7a;
  text-align: center;
  font-size: 0.88rem;
}

.ci-hero {
  position: relative;
  display: grid;
  grid-template-columns: 1.08fr 0.92fr;
  gap: 42px;
  align-items: center;
  min-height: 620px;
  padding: clamp(38px, 7vw, 82px);
  overflow: hidden;
  border: 1px solid var(--ci-line);
  border-radius: 36px;
  background:
    radial-gradient(circle at 85% 18%, rgba(141, 228, 225, 0.44), transparent 25%),
    radial-gradient(circle at 25% 88%, rgba(40, 169, 226, 0.14), transparent 30%),
    var(--ci-white);
  box-shadow: var(--ci-shadow);
}

.ci-hero::before {
  content: "";
  position: absolute;
  inset: auto -55px -70px auto;
  width: 290px;
  height: 290px;
  border-radius: 50%;
  border: 28px solid rgba(40, 169, 226, 0.08);
}

.ci-hero-copy { position: relative; z-index: 2; }
.ci-kicker {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 7px 11px;
  border-radius: 999px;
  background: #fff7d6;
  color: #111111;
  font-weight: 850;
  font-size: 0.78rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.ci-kicker-light { background: rgba(255, 255, 255, 0.13); color: #d5f7ff; }

.ci-hero h1,
.ci-page-header h1,
.ci-dashboard-heading h1,
.ci-public-card h1 {
  margin: 18px 0 16px;
  color: var(--ci-black);
  font-size: clamp(2.5rem, 6.8vw, 5.8rem);
  line-height: 0.95;
  letter-spacing: -0.075em;
  font-weight: 950;
}
.ci-hero h1 span { color: #111111; }
.ci-hero-copy > p {
  max-width: 660px;
  margin: 0;
  color: var(--ci-muted);
  font-size: clamp(1.03rem, 1.5vw, 1.25rem);
}

.ci-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.ci-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 18px;
  border: 1px solid var(--ci-black);
  border-radius: 14px;
  text-decoration: none !important;
  font-weight: 850;
  line-height: 1.2;
  cursor: pointer;
  transition: transform 0.16s ease, box-shadow 0.16s ease, background 0.16s ease;
}
.ci-button:hover { transform: translateY(-1px); box-shadow: 0 10px 26px rgba(0, 0, 0, 0.13); }
.ci-button-primary { background: var(--ci-black); color: var(--ci-white) !important; }
.ci-button-primary:hover { background: #292929; }
.ci-button-secondary { background: var(--ci-white); color: var(--ci-black) !important; }
.ci-button-danger { border-color: #f3b9bb; background: #fff4f4; color: #a71318 !important; }
.ci-button-full { width: 100%; }

.ci-trust-row { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 25px; }
.ci-trust-row span {
  padding: 7px 10px;
  border: 1px solid var(--ci-line);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.85);
  color: var(--ci-muted);
  font-size: 0.82rem;
  font-weight: 750;
}

.ci-hero-logo-card {
  position: relative;
  z-index: 1;
  display: grid;
  place-items: center;
  min-height: 420px;
  padding: 34px;
  border: 1px solid rgba(40, 169, 226, 0.35);
  border-radius: 32px;
  background:
    repeating-radial-gradient(circle at 70% 26%, rgba(40, 169, 226, 0.11) 0 2px, transparent 2px 7px),
    rgba(255, 255, 255, 0.9);
  box-shadow: 0 18px 60px rgba(0, 0, 0, 0.08);
}
.ci-hero-logo-card img { width: min(440px, 100%); filter: drop-shadow(0 16px 16px rgba(0, 0, 0, 0.09)); }

.ci-section { padding: 82px 12px; }
.ci-section-heading { max-width: 760px; margin-bottom: 30px; }
.ci-section-heading h2,
.ci-pricing-panel h2,
.ci-panel h2,
.ci-contribute-form h2 {
  margin: 13px 0 0;
  color: var(--ci-black);
  font-size: clamp(1.85rem, 4vw, 3.3rem);
  line-height: 1.05;
  letter-spacing: -0.055em;
  font-weight: 920;
}

.ci-step-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 15px; }
.ci-step-card {
  min-height: 230px;
  padding: 23px;
  border: 1px solid var(--ci-line);
  border-radius: 22px;
  background: var(--ci-white);
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.045);
}
.ci-step-number {
  display: inline-grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: var(--ci-black);
  color: var(--ci-white);
  font-size: 0.78rem;
  font-weight: 900;
}
.ci-step-card h3 { margin: 24px 0 8px; font-size: 1.45rem; letter-spacing: -0.035em; }
.ci-step-card p { margin: 0; color: var(--ci-muted); }

.ci-section-dark {
  margin: 0 -1px;
  padding-inline: clamp(24px, 6vw, 72px);
  border-radius: 32px;
  background: var(--ci-black);
  color: var(--ci-white);
  box-shadow: var(--ci-shadow);
}
.ci-section-dark h2 { color: var(--ci-white); }
.ci-use-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 13px; }
.ci-use-grid span {
  padding: 20px;
  border: 1px solid rgba(255, 255, 255, 0.13);
  border-radius: 17px;
  background: rgba(255, 255, 255, 0.06);
  font-weight: 780;
}
.ci-vision { margin: 34px 0 0; font-size: clamp(1.5rem, 4vw, 3.25rem); letter-spacing: -0.055em; }
.ci-vision strong { color: var(--ci-aqua); }

.ci-pricing-panel {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 30px;
  margin-top: 34px;
  padding-inline: clamp(25px, 5vw, 60px);
  border: 1px solid var(--ci-line);
  border-radius: 28px;
  background: var(--ci-paper);
}
.ci-pricing-panel p { max-width: 710px; color: var(--ci-muted); }

.ci-page-shell, .ci-public-shell { max-width: 1040px; }
.ci-page-header,
.ci-dashboard-heading {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 28px;
  margin: 22px 0 28px;
}
.ci-page-header h1, .ci-dashboard-heading h1 { font-size: clamp(2.3rem, 6vw, 4.8rem); }
.ci-page-header p, .ci-dashboard-heading p { margin: 0; color: var(--ci-muted); }
.ci-header-logo { width: 150px; max-height: 145px; object-fit: contain; }

.ci-form-card,
.ci-panel,
.ci-public-card,
.ci-empty-state {
  border: 1px solid var(--ci-line);
  border-radius: var(--ci-radius);
  background: var(--ci-white);
  box-shadow: var(--ci-shadow);
}
.ci-form-card { display: grid; gap: 18px; padding: clamp(23px, 4vw, 42px); }
.ci-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.ci-form-card label > span,
.ci-contribute-form label > span {
  display: block;
  margin: 0 0 7px;
  color: var(--ci-ink);
  font-size: 0.9rem;
  font-weight: 820;
}
.chuckin-app input,
.chuckin-app textarea {
  width: 100%;
  min-height: 48px;
  padding: 12px 14px;
  border: 1px solid #cbd3d8;
  border-radius: 13px;
  background: var(--ci-white);
  color: var(--ci-black);
  outline: none;
}
.chuckin-app textarea { min-height: 118px; resize: vertical; }
.chuckin-app input:focus,
.chuckin-app textarea:focus { border-color: var(--ci-blue); box-shadow: 0 0 0 4px rgba(40, 169, 226, 0.12); }
.ci-money-input { position: relative; }
.ci-money-input b { position: absolute; left: 14px; top: 50%; transform: translateY(-50%); color: var(--ci-muted); }
.ci-money-input input { padding-left: 32px; }

.ci-fee-preview,
.ci-contributor-fee {
  display: grid;
  gap: 8px;
  padding: 18px;
  border: 1px solid #b9e4f5;
  border-radius: 16px;
  background: #f0fbff;
}
.ci-fee-preview span,
.ci-contributor-fee span { display: flex; justify-content: space-between; gap: 18px; color: #3f5965; }
.ci-fee-preview strong,
.ci-contributor-fee strong { color: var(--ci-black); }
.ci-fee-preview .ci-fee-total,
.ci-contributor-fee .ci-fee-total { padding-top: 9px; border-top: 1px solid #cbe8f2; font-size: 1.06rem; font-weight: 820; }
.ci-checkbox { display: flex; gap: 10px; align-items: flex-start; }
.ci-checkbox input { width: 18px; min-height: 18px; margin-top: 3px; }
.ci-checkbox span { margin: 0 !important; color: var(--ci-muted) !important; font-weight: 650 !important; }

.ci-alert { margin: 18px 0; padding: 13px 15px; border-radius: 13px; }
.ci-alert-error { border: 1px solid #f1b7b9; background: #fff3f3; color: #9d1116; }
.ci-alert-success { border: 1px solid #a6d8c3; background: #effaf5; color: #0d6945; }

.ci-dashboard-heading { align-items: center; }
.ci-dashboard-grid { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(290px, 0.72fr); gap: 22px; align-items: start; }
.ci-dashboard-main, .ci-dashboard-side { display: grid; gap: 22px; }
.ci-dashboard-side { position: sticky; top: 20px; }
.ci-panel { padding: 24px; box-shadow: 0 10px 38px rgba(0, 0, 0, 0.055); }
.ci-panel h2 { margin: 0 0 16px; font-size: 1.55rem; }
.ci-panel-topline { display: flex; justify-content: space-between; align-items: center; gap: 20px; }
.ci-panel-topline strong { font-size: 1.25rem; }
.ci-progress { height: 12px; margin: 15px 0 21px; overflow: hidden; border-radius: 999px; background: #e7edf0; }
.ci-progress span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #e2ad00, #f7cf4b); }
.ci-progress-large { height: 16px; margin-top: 28px; }
.ci-stat-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.ci-stat-grid > div { padding: 14px; border-radius: 14px; background: var(--ci-soft); }
.ci-stat-grid span { display: block; color: var(--ci-muted); font-size: 0.78rem; }
.ci-stat-grid strong { display: block; margin-top: 5px; color: var(--ci-black); font-size: 1.03rem; }

.ci-status {
  display: inline-flex;
  width: fit-content;
  padding: 6px 10px;
  border-radius: 999px;
  background: #e9edf0;
  color: #3d4448;
  font-size: 0.75rem;
  font-weight: 880;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.ci-status-live { background: #e6f7ef; color: var(--ci-green); }
.ci-status-funded, .ci-status-release_pending, .ci-status-released { background: #e8f7fd; color: #086c96; }
.ci-status-refunding, .ci-status-refunded { background: #fff5e6; color: var(--ci-warning); }
.ci-status-expired, .ci-status-cancelled { background: #fff0f0; color: #a31419; }

.ci-copy-field { display: flex; gap: 8px; }
.ci-copy-field input { min-width: 0; font-size: 0.82rem; background: var(--ci-soft); }
.ci-details-list { display: grid; gap: 12px; margin: 0; }
.ci-details-list > div { padding-bottom: 12px; border-bottom: 1px solid var(--ci-line); }
.ci-details-list > div:last-child { border-bottom: 0; padding-bottom: 0; }
.ci-details-list dt { color: var(--ci-muted); font-size: 0.78rem; }
.ci-details-list dd { margin: 4px 0 0; color: var(--ci-black); font-weight: 760; }
.ci-action-form + .ci-action-form { margin-top: 10px; }

.ci-contribution-list { display: grid; gap: 9px; }
.ci-contribution-row { display: flex; justify-content: space-between; gap: 18px; padding: 14px 0; border-bottom: 1px solid var(--ci-line); }
.ci-contribution-row:last-child { border-bottom: 0; }
.ci-contribution-row span { display: block; margin-top: 3px; color: var(--ci-muted); font-size: 0.76rem; }
.ci-contribution-amount { text-align: right; }
.ci-muted { color: var(--ci-muted); }

.ci-public-shell { max-width: 780px; }
.ci-public-brand { display: flex; align-items: center; justify-content: center; gap: 12px; margin: 10px 0 20px; }
.ci-public-brand img { width: 94px; }
.ci-public-brand span { font-weight: 900; }
.ci-public-card { padding: clamp(25px, 6vw, 54px); }
.ci-public-card h1 { max-width: 690px; margin-top: 16px; font-size: clamp(2.35rem, 8vw, 5.3rem); }
.ci-public-purpose { margin: 0; color: var(--ci-muted); font-size: 1.08rem; }
.ci-organiser-line { color: var(--ci-muted); }
.ci-public-money { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.ci-public-money > div { padding: 18px; border-radius: 16px; background: var(--ci-soft); }
.ci-public-money span { display: block; color: var(--ci-muted); font-size: 0.82rem; }
.ci-public-money strong { display: block; margin-top: 3px; color: var(--ci-black); font-size: 1.5rem; }
.ci-deadline { color: var(--ci-muted); text-align: center; }
.ci-contribute-form { display: grid; gap: 16px; margin-top: 28px; padding-top: 28px; border-top: 2px solid var(--ci-black); }
.ci-contribute-form h2 { margin: 0; }
.ci-fine-print { margin: -4px 0 0; color: var(--ci-muted); text-align: center; font-size: 0.78rem; }
.ci-outcome-box { margin-top: 28px; padding: 25px; border-radius: 18px; background: var(--ci-soft); text-align: center; }
.ci-outcome-box h2 { margin: 0 0 8px; }
.ci-outcome-box p { margin: 0; color: var(--ci-muted); }

.ci-empty-state { max-width: 680px; margin: 60px auto; padding: 50px; text-align: center; }
.ci-empty-state h1 { margin: 0; font-size: clamp(2rem, 6vw, 4rem); letter-spacing: -0.055em; }
.ci-empty-state p { color: var(--ci-muted); }

@media (max-width: 900px) {
  .ci-hero { grid-template-columns: 1fr; min-height: auto; }
  .ci-hero-logo-card { min-height: 330px; }
  .ci-step-grid { grid-template-columns: repeat(2, 1fr); }
  .ci-dashboard-grid { grid-template-columns: 1fr; }
  .ci-dashboard-side { position: static; }
  .ci-stat-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 640px) {
  .chuckin-app { width: min(100% - 18px, 1160px); margin-top: 12px; }
  .ci-hero { padding: 28px 20px; border-radius: 25px; }
  .ci-hero h1 { font-size: clamp(2.65rem, 15vw, 4.3rem); }
  .ci-hero-logo-card { min-height: 250px; padding: 18px; }
  .ci-actions, .ci-pricing-panel { align-items: stretch; flex-direction: column; }
  .ci-button { width: 100%; }
  .ci-section { padding: 55px 5px; }
  .ci-section-dark { padding-inline: 21px; }
  .ci-step-grid, .ci-use-grid, .ci-form-grid, .ci-public-money { grid-template-columns: 1fr; }
  .ci-step-card { min-height: auto; }
  .ci-page-header, .ci-dashboard-heading { align-items: flex-start; flex-direction: column; }
  .ci-header-logo { width: 115px; }
  .ci-form-card, .ci-public-card { padding: 22px 17px; }
  .ci-stat-grid { grid-template-columns: 1fr 1fr; }
  .ci-copy-field { flex-direction: column; }
  .ci-contribution-row { align-items: flex-start; }
}

/* ChuckIn market-ready prototype refresh v0.2 */
.chuckin-app {
  --ci-black: #111111;
  --ci-ink: #151515;
  --ci-muted: #666666;
  --ci-white: #ffffff;
  --ci-paper: #ffffff;
  --ci-soft: #f7f7f5;
  --ci-blue: #FFC400;
  --ci-blue-dark: #d49f00;
  --ci-aqua: #FFC400;
  --ci-line: #e7e7e3;
  --ci-shadow: 0 18px 55px rgba(17,17,17,.08);
  width: min(1240px, calc(100% - 24px));
  margin-top: 16px;
}
/* ChuckIn application header */
.ci-appbar {
  position: sticky;
  top: 14px;
  z-index: 1000;
  display: grid;
  grid-template-columns: minmax(190px, 1fr) auto minmax(190px, 1fr);
  align-items: center;
  gap: 28px;
  min-height: 82px;
  margin: 0 0 34px;
  padding: 12px 16px 12px 14px;
  border: 1px solid #e8e6df;
  border-radius: 24px;
  background: rgba(255,255,255,.96);
  box-shadow: 0 18px 55px rgba(0,0,0,.10);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}
.ci-brand {
  display:flex;
  align-items:center;
  gap:13px;
  width:fit-content;
  color:#111!important;
  text-decoration:none!important;
  font-weight:950;
  font-size:1.35rem;
  letter-spacing:-.045em;
}
.ci-brand img {
  width:58px;
  height:58px;
  padding:2px;
  object-fit:contain;
  border-radius:15px;
  background:#fff;
  box-shadow:0 8px 20px rgba(0,0,0,.10);
}
.ci-main-nav {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
}
.ci-main-nav a {
  padding:10px 13px;
  border-radius:10px;
  color:#444!important;
  text-decoration:none!important;
  font-size:.9rem;
  font-weight:760;
  white-space:nowrap;
  transition:background .16s ease,color .16s ease;
}
.ci-main-nav a:hover { background:#f5f3ec; color:#000!important; }
.ci-header-cta {
  justify-self:end;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:54px;
  padding:13px 19px;
  border:1px solid #E2A900;
  border-radius:15px;
  background:#FFC400;
  color:#111!important;
  text-decoration:none!important;
  font-weight:900;
  box-shadow:0 10px 24px rgba(210,160,0,.20);
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease;
}
.ci-header-cta:hover { transform:translateY(-1px); background:#FFD84D; box-shadow:0 13px 30px rgba(210,160,0,.26); }
.ci-header-cta span { font-size:1.2rem; line-height:1; }
.ci-prototype-badge {
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:10000;
  display:flex;
  align-items:center;
  gap:8px;
  padding:10px 14px;
  border:1px solid #d8d5ca;
  border-radius:999px;
  background:rgba(255,255,255,.96);
  color:#424242;
  box-shadow:0 12px 32px rgba(0,0,0,.12);
  font-size:.78rem;
  font-weight:750;
  backdrop-filter:blur(12px);
}
.ci-prototype-badge span { width:8px;height:8px;border-radius:50%;background:#FFC400;box-shadow:0 0 0 4px rgba(242,201,76,.18); }

.ci-public-shell { padding-bottom:20px; }
.ci-page-header,.ci-dashboard-heading,.ci-public-card,.ci-form-card,.ci-panel,.ci-empty-state {
  border-color:#e8e8e4;
  background:#fff;
}
.ci-page-header { padding:34px; border-radius:24px; box-shadow:var(--ci-shadow); }
.ci-page-header h1 { font-size:clamp(2.2rem,5vw,4.5rem); }
.ci-header-logo { width:150px; border-radius:18px; }
.ci-form-card { max-width:980px; padding:34px; border-radius:24px; }
.ci-form-card input,.ci-form-card textarea,.ci-contribute-form input { border-radius:12px; border-color:#dcdcd7; background:#fff; }
.ci-form-card input:focus,.ci-form-card textarea:focus,.ci-contribute-form input:focus { outline:3px solid rgba(242,201,76,.28); border-color:#d5a900; }
.ci-dashboard-heading { padding:28px; border:1px solid var(--ci-line); border-radius:22px; background:#fff; box-shadow:var(--ci-shadow); }
.ci-dashboard-heading h1 { font-size:clamp(2rem,5vw,4rem); }
.ci-panel { border-radius:20px; }
.ci-public-shell { max-width:1120px; }
.ci-public-brand { display:none; }
.ci-public-card { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(340px,.75fr); column-gap:38px; align-items:start; max-width:none; }
.ci-public-card > .ci-status,.ci-public-card > h1,.ci-public-card > .ci-public-purpose,.ci-public-card > .ci-organiser-line,.ci-public-card > .ci-progress,.ci-public-card > .ci-public-money,.ci-public-card > .ci-deadline { grid-column:1; }
.ci-public-card > .ci-contribute-form,.ci-public-card > .ci-outcome-box { grid-column:2; grid-row:1 / span 7; margin-top:0; padding:26px; border:1px solid var(--ci-line); border-radius:20px; background:#fff; box-shadow:0 10px 35px rgba(17,17,17,.07); }
.ci-public-card h1 { font-size:clamp(2.8rem,7vw,5.6rem); }
.ci-public-purpose { font-size:1.15rem; }
.ci-public-money > div { background:#faf9f5; }
.ci-status-live { background:#eff9ef; color:#286e38; }
.ci-trust-row span::before { content:'✓'; margin-right:6px; color:#8c6a00; font-weight:950; }

@media(max-width:900px){
  .ci-appbar { grid-template-columns:1fr auto; gap:16px; }
  .ci-main-nav { display:none; }
  .ci-header-cta { justify-self:end; }
  .ci-public-card { grid-template-columns:1fr; }
  .ci-public-card > .ci-contribute-form,.ci-public-card > .ci-outcome-box { grid-column:1; grid-row:auto; margin-top:28px; }
}
@media(max-width:640px){
  .ci-appbar { top:8px; min-height:68px; padding:9px 10px; border-radius:18px; }
  .ci-brand { gap:9px; font-size:1.05rem; }
  .ci-brand img { width:46px; height:46px; border-radius:12px; }
  .ci-header-cta { min-height:46px; padding:10px 12px; font-size:.78rem; }
  .ci-prototype-badge { right:10px; bottom:10px; font-size:.7rem; }
  .ci-page-header { padding:24px 19px; }
  .ci-public-card > .ci-contribute-form { padding:20px 16px; }
}


/* v0.4 market-ready create experience */
.ci-button-yellow{background:#FFC400!important;color:#111!important;border-color:#E2A900!important;box-shadow:0 12px 28px rgba(255,196,0,.25)}
.ci-create-layout{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.65fr);gap:34px;align-items:start}
.ci-create-intro{position:sticky;top:126px;padding:48px 12px 20px}
.ci-create-intro h1{margin:18px 0;color:#FFC400;font-size:clamp(3.2rem,7vw,6rem);line-height:.88;letter-spacing:-.075em;font-weight:950}
.ci-create-intro>p{max-width:390px;color:#31343a;font-size:1.12rem}
.ci-reassurance-card{display:grid;gap:8px;margin-top:32px;padding:22px;border:1px solid #F3D979;border-radius:18px;background:#FFFDF4}
.ci-reassurance-card span{color:var(--ci-muted);font-size:.9rem}
.ci-create-main{min-width:0}
.ci-create-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px;padding:22px;border:1px solid var(--ci-line);border-radius:22px;background:#fff;box-shadow:0 10px 34px rgba(0,0,0,.05)}
.ci-create-steps span{display:grid;place-items:center;gap:5px;color:#777;text-align:center;font-size:.78rem;font-weight:760}
.ci-create-steps b{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#eee;color:#555}
.ci-create-steps .is-active{color:#B48300}.ci-create-steps .is-active b{background:#FFC400;color:#111}
.ci-market-form{max-width:none!important}
.ci-form-content{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:26px;align-items:start}
.ci-form-content h2{margin:0;font-size:2rem;letter-spacing:-.04em}
.ci-split-summary{position:sticky;top:126px;display:grid;gap:0;padding:22px;border:1px solid #F0D16A;border-radius:20px;background:linear-gradient(145deg,#FFFDF7,#FFF7D9);box-shadow:0 12px 35px rgba(160,120,0,.08)}
.ci-split-summary>div{display:grid;grid-template-columns:1fr auto;gap:10px;padding:14px 0;border-bottom:1px solid #F1D981}
.ci-split-summary>div:last-child{border:0}.ci-split-summary span{color:#5d6066;font-size:.86rem}.ci-split-summary strong{color:#111;font-size:1.05rem}
.ci-split-summary .ci-each-person{display:block;padding-top:20px}.ci-split-summary .ci-each-person span,.ci-split-summary .ci-each-person small{display:block}.ci-split-summary .ci-each-person strong{display:block;margin:5px 0;font-size:2.6rem;line-height:1}.ci-split-summary small{color:#777}
.ci-people-line{margin:18px 0 0;padding:13px 16px;border-radius:14px;background:#FFF8DB;color:#423600}
.ci-brand img{background:transparent!important;box-shadow:none!important;padding:0!important}
@media(max-width:900px){.ci-create-layout{grid-template-columns:1fr}.ci-create-intro{position:static;padding:20px 4px}.ci-form-content{grid-template-columns:1fr}.ci-split-summary{position:static}.ci-create-steps{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.ci-create-steps{display:none}.ci-create-intro h1{font-size:3.6rem}.ci-form-content{display:block}.ci-split-summary{margin-top:20px}}


/* v0.4.1 — uniform header, larger logo and roomier create flow */
.chuckin-app {
  width: min(1380px, calc(100% - 28px));
}
.ci-appbar {
  grid-template-columns: minmax(260px, 1fr) auto minmax(230px, 1fr);
  min-height: 92px;
  padding: 10px 18px 10px 12px;
  border-radius: 26px;
}
.admin-bar .ci-appbar { top: 46px; }
.ci-brand { gap: 15px; font-size: 1.55rem; }
.ci-brand img {
  width: 76px;
  height: 76px;
  padding: 0;
  object-fit: contain;
  border-radius: 17px;
  background: transparent;
  box-shadow: none;
}
.ci-main-nav { gap: 12px; }
.ci-main-nav a { padding: 11px 15px; font-size: .96rem; }
.ci-header-cta {
  min-height: 50px;
  padding: 11px 17px;
  border-radius: 14px;
  font-size: .92rem;
}

.ci-create-experience { max-width: 1380px; }
.ci-create-layout {
  grid-template-columns: minmax(280px, .58fr) minmax(720px, 1.72fr);
  gap: 48px;
}
.ci-create-intro { top: 162px; padding: 58px 12px 20px; }
.ci-create-intro h1 { font-size: clamp(3.6rem, 7.4vw, 6.7rem); }
.ci-create-main { padding-top: 14px; }
.ci-market-form {
  padding: clamp(36px, 4.4vw, 58px) !important;
  border-radius: 30px !important;
}
.ci-form-content {
  grid-template-columns: minmax(0, 1fr) minmax(310px, 350px);
  gap: 42px;
}
.ci-form-content > div { display: grid; gap: 20px; }
.ci-form-content h2 {
  max-width: 720px;
  margin: 0;
  font-size: clamp(2rem, 3.2vw, 3.15rem);
  line-height: 1.02;
}
.ci-form-eyebrow {
  display: inline-flex;
  width: fit-content;
  padding: 7px 11px;
  border-radius: 999px;
  background: #fff5c7;
  color: #765900;
  font-size: .76rem;
  font-weight: 900;
  letter-spacing: .05em;
  text-transform: uppercase;
}
.ci-form-intro { margin-top: -10px; font-size: 1.02rem; }
.ci-market-form label { margin: 0; }
.ci-market-form input,
.ci-market-form textarea {
  min-height: 56px;
  padding: 14px 16px;
  font-size: 1rem;
}
.ci-market-form textarea { min-height: 140px; }
.ci-market-form .ci-form-grid { gap: 20px; }
.ci-split-summary {
  top: 162px;
  padding: 26px;
  border-radius: 23px;
}
.ci-split-summary > div { padding: 17px 0; }
.ci-split-summary span { line-height: 1.35; }
.ci-split-summary span small,
.ci-summary-fee small {
  display: block;
  margin-top: 4px;
  color: #777064;
  font-size: .7rem;
  font-weight: 600;
}
.ci-each-person strong { font-size: 2.5rem !important; }
.ci-fee-explainer {
  margin: -2px 0 0;
  padding: 12px 14px;
  border-radius: 12px;
  background: #fff9df;
  color: #625522;
  font-size: .8rem;
  line-height: 1.45;
}
.ci-fee-explainer strong { color: #25200e; }

@media (max-width: 1080px) {
  .ci-create-layout { grid-template-columns: 1fr; gap: 20px; }
  .ci-create-intro { position: static; padding: 12px 4px 8px; }
  .ci-create-intro h1 { font-size: clamp(3.2rem, 12vw, 5.6rem); }
  .ci-create-intro > p { max-width: 700px; }
  .ci-form-content { grid-template-columns: 1fr; }
  .ci-split-summary { position: static; }
}
@media (max-width: 900px) {
  .ci-appbar { grid-template-columns: 1fr auto; min-height: 82px; }
  .ci-brand img { width: 66px; height: 66px; }
}
@media (max-width: 640px) {
  .admin-bar .ci-appbar { top: 54px; }
  .ci-appbar { min-height: 72px; padding: 7px 9px; }
  .ci-brand { gap: 8px; font-size: 1.08rem; }
  .ci-brand img { width: 54px; height: 54px; }
  .ci-header-cta { min-height: 43px; padding: 9px 10px; font-size: .72rem; }
  .ci-market-form { padding: 25px 18px !important; border-radius: 22px !important; }
  .ci-form-content { gap: 27px; }
  .ci-form-content > div { gap: 17px; }
  .ci-market-form .ci-form-grid { grid-template-columns: 1fr; }
}

/* ChuckIn consistency and layout patch v0.4.2 */
.chuckin-app {
  --ci-yellow: #FFC400;
  --ci-yellow-dark: #E2A900;
  --ci-yellow-soft: #FFF7D6;
  --ci-bg: #FFFDF7;
  background: transparent;
}

/* One uniform header across every plugin screen */
.chuckin-app .ci-appbar {
  grid-template-columns: minmax(220px,1fr) auto minmax(220px,1fr) !important;
  width: 100%;
  min-height: 86px;
  margin: 0 0 38px !important;
  padding: 12px 18px !important;
  border-color: #ece7d8 !important;
  background: rgba(255,255,255,.98) !important;
}
.chuckin-app .ci-brand { gap: 14px !important; font-size: 1.48rem !important; }
.chuckin-app .ci-brand img {
  width: 68px !important;
  height: 68px !important;
  padding: 0 !important;
  object-fit: contain !important;
  background: transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  transform: none !important;
}
.chuckin-app .ci-main-nav { gap: 10px !important; }
.chuckin-app .ci-main-nav a { padding: 10px 15px !important; font-size: .95rem !important; }
.chuckin-app .ci-header-cta {
  min-height: 50px !important;
  padding: 11px 18px !important;
  border-radius: 14px !important;
  font-size: .96rem !important;
  background: var(--ci-yellow) !important;
  border-color: var(--ci-yellow-dark) !important;
}

/* Uniform page background and cards */
.chuckin-app .ci-hero,
.chuckin-app .ci-form-card,
.chuckin-app .ci-panel,
.chuckin-app .ci-public-card,
.chuckin-app .ci-empty-state,
.chuckin-app .ci-outcome-box {
  border-color: #ece7d8 !important;
}
.chuckin-app .ci-hero {
  background:
    radial-gradient(circle at 87% 15%, rgba(255,196,0,.22), transparent 27%),
    radial-gradient(circle at 18% 90%, rgba(255,196,0,.10), transparent 30%),
    #fff !important;
}
.chuckin-app .ci-hero::before { border-color: rgba(255,196,0,.10) !important; }
.chuckin-app .ci-hero-logo-card {
  border-color: rgba(226,169,0,.30) !important;
  background: repeating-radial-gradient(circle at 70% 26%, rgba(255,196,0,.10) 0 2px, transparent 2px 7px), #fff !important;
}
.chuckin-app .ci-kicker { background: var(--ci-yellow-soft) !important; color:#111 !important; }
.chuckin-app .ci-progress span { background: linear-gradient(90deg,var(--ci-yellow-dark),var(--ci-yellow)) !important; }
.chuckin-app input:focus,
.chuckin-app textarea:focus { border-color: var(--ci-yellow-dark) !important; box-shadow: 0 0 0 4px rgba(255,196,0,.16) !important; }
.chuckin-app .ci-fee-preview,
.chuckin-app .ci-contributor-fee,
.chuckin-app .ci-split-summary { border-color:#efd676 !important; background:#fffaf0 !important; }

/* Fix currency inputs across browsers */
.chuckin-app .ci-money-input { position:relative !important; display:block !important; }
.chuckin-app .ci-money-input b {
  position:absolute !important;
  left:16px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  z-index:2 !important;
  color:#555 !important;
  font-weight:800 !important;
  line-height:1 !important;
  pointer-events:none !important;
}
.chuckin-app .ci-money-input input {
  display:block !important;
  width:100% !important;
  padding-left:40px !important;
  font-variant-numeric: tabular-nums;
  appearance:textfield;
  -moz-appearance:textfield;
}
.chuckin-app .ci-money-input input::-webkit-outer-spin-button,
.chuckin-app .ci-money-input input::-webkit-inner-spin-button { -webkit-appearance:none; margin:0; }

/* Public result screen should look like the rest of the app */
.chuckin-app.ci-public-shell { max-width: 980px !important; }
.chuckin-app .ci-public-brand { display:none !important; }
.chuckin-app .ci-public-card { background:#fff !important; }
.chuckin-app .ci-outcome-box {
  margin-top:32px !important;
  padding:36px 28px !important;
  background:linear-gradient(145deg,#fffdf5,#fff7d6) !important;
  border:1px solid #efd676 !important;
}
.chuckin-app .ci-outcome-box h2 { color:#111 !important; }
.chuckin-app .ci-button-virtual-card {
  margin:24px auto 0 !important;
  width:fit-content !important;
  min-width:280px;
  color:#111 !important;
  text-decoration:none !important;
  background:var(--ci-yellow) !important;
  border-color:var(--ci-yellow-dark) !important;
}
.chuckin-app .ci-card-note { display:block; max-width:520px; margin:10px auto 0; color:#6b6250; }

/* Avoid an oversized landing headline on narrower desktop screens */
@media (max-width: 1200px) {
  .chuckin-app .ci-hero h1 { font-size: clamp(3rem, 6vw, 4.8rem) !important; }
}
@media (max-width: 900px) {
  .chuckin-app .ci-appbar { grid-template-columns:auto 1fr !important; min-height:76px; }
  .chuckin-app .ci-brand img { width:58px !important; height:58px !important; }
  .chuckin-app .ci-main-nav { display:none !important; }
  .chuckin-app .ci-header-cta { justify-self:end !important; }
}
@media (max-width: 560px) {
  .chuckin-app .ci-appbar { padding:9px 10px !important; gap:8px !important; }
  .chuckin-app .ci-brand { gap:8px !important; font-size:1.08rem !important; }
  .chuckin-app .ci-brand img { width:48px !important; height:48px !important; }
  .chuckin-app .ci-header-cta { min-height:44px !important; padding:9px 11px !important; font-size:.78rem !important; }
  .chuckin-app .ci-button-virtual-card { min-width:0; width:100% !important; }
}

/* ChuckIn v0.4.3 – visible logo and organiser portal */
.chuckin-app .ci-brand {
  flex: 0 0 auto !important;
  min-width: 220px !important;
  gap: 15px !important;
}
.chuckin-app .ci-logo-mark {
  display: block !important;
  flex: 0 0 74px !important;
  width: 74px !important;
  height: 74px !important;
  min-width: 74px !important;
  min-height: 74px !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  border-radius: 16px;
}
.chuckin-app .ci-brand-name {
  display: block !important;
  color: #111 !important;
  font-size: 1.65rem !important;
  font-weight: 950 !important;
  line-height: 1 !important;
  letter-spacing: -.05em !important;
}
.chuckin-app .ci-brand img { display:none !important; }
.chuckin-app .ci-manager-link {
  border: 1px solid #e7dfc3;
  background: #fffaf0;
  color: #111 !important;
}
.chuckin-app .ci-manager-link:hover { background:#fff1b8 !important; }

.ci-manager-portal {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(340px,.72fr);
  gap:34px;
  align-items:stretch;
  padding:clamp(28px,5vw,58px);
  border:1px solid #eadfbd;
  border-radius:32px;
  background:linear-gradient(135deg,#fff 0%,#fffdf6 72%,#fff5c7 100%);
  box-shadow:0 24px 70px rgba(17,17,17,.09);
}
.ci-manager-intro h1 {
  margin:18px 0 16px;
  color:#111;
  font-size:clamp(2.6rem,6vw,5.1rem);
  line-height:.96;
  letter-spacing:-.07em;
  font-weight:950;
}
.ci-manager-intro > p {max-width:690px;color:#5f5f5f;font-size:1.08rem;}
.ci-manager-note {
  display:grid;
  gap:4px;
  margin-top:28px;
  padding:18px;
  border:1px solid #f0d36a;
  border-radius:17px;
  background:#fff8d9;
}
.ci-manager-note span{color:#666;}
.ci-manager-access {
  align-self:center;
  display:grid;
  gap:14px;
  padding:28px;
  border:1px solid #e7e1d1;
  border-radius:24px;
  background:#fff;
  box-shadow:0 14px 40px rgba(17,17,17,.07);
}
.ci-manager-access label{font-weight:850;color:#111;}
.ci-manager-access input{min-height:58px!important;font-size:1rem!important;}
.ci-manager-access p{margin:0;color:#777;font-size:.82rem;text-align:center;}

@media (max-width:1100px){
  .chuckin-app .ci-brand{min-width:190px!important;}
  .chuckin-app .ci-logo-mark{flex-basis:64px!important;width:64px!important;height:64px!important;min-width:64px!important;min-height:64px!important;}
  .chuckin-app .ci-brand-name{font-size:1.45rem!important;}
  .chuckin-app .ci-main-nav{gap:5px!important;}
  .chuckin-app .ci-main-nav a{padding:9px 10px!important;font-size:.86rem!important;}
}
@media (max-width:900px){
  .ci-manager-portal{grid-template-columns:1fr;}
  .chuckin-app .ci-brand{min-width:0!important;}
}
@media (max-width:640px){
  .chuckin-app .ci-logo-mark{flex-basis:54px!important;width:54px!important;height:54px!important;min-width:54px!important;min-height:54px!important;}
  .chuckin-app .ci-brand-name{font-size:1.25rem!important;}
  .ci-manager-portal{padding:24px 18px;border-radius:24px;}
  .ci-manager-access{padding:20px;}
}


/* ChuckIn v0.4.4 — robust responsive application header */
.chuckin-app .ci-appbar {
  position: sticky !important;
  top: 14px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: nowrap !important;
  width: 100% !important;
  max-width: 1180px !important;
  min-width: 0 !important;
  min-height: 88px !important;
  margin: 0 auto 38px !important;
  padding: 10px 14px !important;
  gap: 18px !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}
.admin-bar .chuckin-app .ci-appbar { top: 46px !important; }
.chuckin-app .ci-brand {
  display: flex !important;
  align-items: center !important;
  flex: 0 0 auto !important;
  min-width: 0 !important;
  width: auto !important;
  gap: 12px !important;
  white-space: nowrap !important;
}
.chuckin-app .ci-logo-mark {
  flex: 0 0 72px !important;
  width: 72px !important;
  height: 72px !important;
  min-width: 72px !important;
  min-height: 72px !important;
}
.chuckin-app .ci-brand-name { font-size: 1.62rem !important; white-space: nowrap !important; }
.chuckin-app .ci-main-nav {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  gap: 4px !important;
  white-space: nowrap !important;
}
.chuckin-app .ci-main-nav a {
  flex: 0 0 auto !important;
  padding: 9px 10px !important;
  font-size: .9rem !important;
}
.chuckin-app .ci-header-actions {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex: 0 0 auto;
  gap: 8px;
}
.chuckin-app .ci-header-cta {
  flex: 0 0 auto !important;
  min-height: 50px !important;
  padding: 11px 17px !important;
  white-space: nowrap !important;
}
.chuckin-app .ci-mobile-menu { display: none; position: relative; }
.chuckin-app .ci-mobile-menu summary {
  list-style: none;
  min-height: 46px;
  padding: 11px 14px;
  border: 1px solid #e7dfc3;
  border-radius: 13px;
  background: #fffaf0;
  color: #111;
  font-weight: 850;
  cursor: pointer;
}
.chuckin-app .ci-mobile-menu summary::-webkit-details-marker { display:none; }
.chuckin-app .ci-mobile-menu-panel {
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  z-index: 1200;
  display: grid;
  width: 230px;
  padding: 10px;
  border: 1px solid #e8e1ce;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 18px 46px rgba(17,17,17,.16);
}
.chuckin-app .ci-mobile-menu-panel a {
  padding: 11px 12px;
  border-radius: 10px;
  color: #222 !important;
  text-decoration: none !important;
  font-weight: 750;
}
.chuckin-app .ci-mobile-menu-panel a:hover { background: #fff7d6; }

@media (max-width: 1120px) {
  .chuckin-app .ci-appbar { gap: 10px !important; }
  .chuckin-app .ci-logo-mark { flex-basis: 62px !important; width:62px !important; height:62px !important; min-width:62px !important; min-height:62px !important; }
  .chuckin-app .ci-brand-name { font-size: 1.42rem !important; }
  .chuckin-app .ci-main-nav a { padding: 8px 8px !important; font-size: .83rem !important; }
  .chuckin-app .ci-header-cta { padding: 10px 14px !important; font-size: .88rem !important; }
}
@media (max-width: 980px) {
  .chuckin-app .ci-main-nav .ci-nav-home,
  .chuckin-app .ci-main-nav .ci-nav-fees,
  .chuckin-app .ci-main-nav .ci-nav-ideas { display:none !important; }
  .chuckin-app .ci-main-nav { justify-content:flex-end !important; }
}
@media (max-width: 800px) {
  .chuckin-app .ci-appbar { min-height:76px !important; margin-bottom:24px !important; }
  .chuckin-app .ci-main-nav { display:none !important; }
  .chuckin-app .ci-mobile-menu { display:block !important; }
  .chuckin-app .ci-logo-mark { flex-basis:58px !important; width:58px !important; height:58px !important; min-width:58px !important; min-height:58px !important; }
  .chuckin-app .ci-brand-name { font-size:1.32rem !important; }
}
@media (max-width: 570px) {
  .admin-bar .chuckin-app .ci-appbar { top: 60px !important; }
  .chuckin-app .ci-appbar { padding:8px 9px !important; gap:7px !important; }
  .chuckin-app .ci-logo-mark { flex-basis:48px !important; width:48px !important; height:48px !important; min-width:48px !important; min-height:48px !important; }
  .chuckin-app .ci-brand-name { font-size:1.12rem !important; }
  .chuckin-app .ci-mobile-menu summary { min-height:42px; padding:9px 10px; font-size:.78rem; }
  .chuckin-app .ci-header-cta { min-height:42px !important; padding:9px 10px !important; font-size:.75rem !important; }
  .chuckin-app .ci-header-cta span { display:none; }
}
@media (max-width: 420px) {
  .chuckin-app .ci-brand-name { display:none !important; }
}

/* v0.5.0 structural header and organiser portal */
.chuckin-app{width:min(1320px,calc(100% - 32px));}
.ci-appbar{
  position:relative!important;top:auto!important;
  display:flex!important;align-items:center!important;
  width:100%!important;max-width:1320px!important;
  min-height:86px!important;padding:12px 16px!important;
  gap:24px!important;overflow:visible!important;
}
.ci-brand{display:flex!important;align-items:center!important;gap:14px!important;flex:0 0 auto!important;min-width:235px!important;white-space:nowrap!important;}
.ci-logo-mark{display:block!important;flex:0 0 72px!important;width:72px!important;height:72px!important;background-size:contain!important;background-position:center!important;background-repeat:no-repeat!important;}
.ci-brand-name{font-size:1.65rem!important;line-height:1!important;}
.ci-main-nav{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:4px!important;min-width:0!important;flex:1 1 auto!important;}
.ci-main-nav a{padding:10px 11px!important;font-size:.91rem!important;white-space:nowrap!important;}
.ci-manager-link{margin-left:5px!important;}
.ci-header-actions{display:flex!important;align-items:center!important;flex:0 0 auto!important;margin-left:auto!important;}
.ci-header-cta{white-space:nowrap!important;min-height:52px!important;padding:12px 18px!important;}
.ci-mobile-menu{display:none!important;}
@media(max-width:1180px){
  .ci-brand{min-width:205px!important}.ci-logo-mark{flex-basis:64px!important;width:64px!important;height:64px!important}.ci-brand-name{font-size:1.45rem!important}
  .ci-nav-ideas,.ci-nav-fees{display:none!important}
}
@media(max-width:930px){
  .ci-appbar{min-height:76px!important;gap:12px!important}
  .ci-main-nav{display:none!important}.ci-mobile-menu{display:block!important;position:relative!important}
  .ci-mobile-menu summary{list-style:none;cursor:pointer;padding:11px 14px;border:1px solid #eadca6;border-radius:12px;font-weight:850;background:#fffaf0}
  .ci-mobile-menu summary::-webkit-details-marker{display:none}
  .ci-mobile-menu-panel{position:absolute;right:0;top:calc(100% + 10px);min-width:230px;padding:10px;border:1px solid #e7e2d2;border-radius:15px;background:#fff;box-shadow:0 18px 45px rgba(0,0,0,.13);z-index:2000}
  .ci-mobile-menu-panel a{display:block;padding:11px 12px;border-radius:9px;text-decoration:none!important;font-weight:750}
  .ci-mobile-menu-panel a:hover{background:#fff7d6}
  .ci-brand{min-width:0!important}.ci-header-actions{margin-left:auto!important}
}
@media(max-width:620px){
  .chuckin-app{width:min(100% - 14px,1320px)!important}
  .ci-brand-name{display:none!important}.ci-logo-mark{flex-basis:60px!important;width:60px!important;height:60px!important}
  .ci-header-cta{font-size:.82rem!important;padding:10px 12px!important}.ci-header-cta span{display:none}
}
.ci-manager-portal{max-width:980px;margin:20px auto 70px;}
.ci-manager-hero{max-width:720px;margin:0 0 28px;}
.ci-manager-hero h1{margin:14px 0 10px;font-size:clamp(2.4rem,6vw,5rem);line-height:.98;letter-spacing:-.065em;}
.ci-manager-hero p{font-size:1.08rem;color:var(--ci-muted);}
.ci-manager-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;}
.ci-manager-form{display:grid;gap:16px;padding:30px!important;}
.ci-manager-form h2{margin:0!important;}
.ci-manager-form p{margin:0;color:var(--ci-muted);}
.ci-manager-form label>span{display:block;margin-bottom:7px;font-weight:820;}
.ci-sample-form{background:#fffaf0!important;border-color:#f0d36b!important;}
.ci-manager-note{margin:22px 0 0;padding:16px 18px;border-radius:14px;background:#f7f7f5;color:#555;}
@media(max-width:760px){.ci-manager-grid{grid-template-columns:1fr}}


/* v0.5.1 responsive header hotfix: react to the actual ChuckIn content width, not only viewport width */
.chuckin-app { container-type: inline-size; }
.chuckin-app .ci-appbar {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: clamp(14px, 2vw, 30px) !important;
  overflow: visible !important;
}
.chuckin-app .ci-brand {
  min-width: 0 !important;
  width: max-content !important;
  flex: none !important;
  position: relative !important;
  z-index: 3 !important;
}
.chuckin-app .ci-logo-mark {
  flex: 0 0 74px !important;
  width: 74px !important;
  height: 74px !important;
}
.chuckin-app .ci-brand-name {
  font-size: 1.68rem !important;
  line-height: 1 !important;
}
.chuckin-app .ci-main-nav {
  min-width: 0 !important;
  width: 100% !important;
  display: flex !important;
  justify-content: center !important;
  gap: clamp(2px, .7vw, 10px) !important;
  overflow: hidden !important;
}
.chuckin-app .ci-main-nav a {
  padding: 9px 9px !important;
  font-size: clamp(.78rem, 1.05vw, .94rem) !important;
}
.chuckin-app .ci-header-actions {
  min-width: max-content !important;
  margin: 0 !important;
}
.chuckin-app .ci-mobile-menu { display: none !important; }

@container (max-width: 1120px) {
  .chuckin-app .ci-appbar {
    grid-template-columns: auto 1fr auto !important;
    gap: 14px !important;
  }
  .chuckin-app .ci-main-nav { display: none !important; }
  .chuckin-app .ci-mobile-menu { display: block !important; }
  .chuckin-app .ci-brand-name { font-size: 1.48rem !important; }
  .chuckin-app .ci-logo-mark { width: 66px !important; height: 66px !important; flex-basis: 66px !important; }
}

@container (max-width: 700px) {
  .chuckin-app .ci-appbar {
    grid-template-columns: auto 1fr auto !important;
    padding: 9px 10px !important;
    gap: 8px !important;
    min-height: 72px !important;
  }
  .chuckin-app .ci-brand-name { display: none !important; }
  .chuckin-app .ci-logo-mark { width: 58px !important; height: 58px !important; flex-basis: 58px !important; }
  .chuckin-app .ci-header-cta { padding: 10px 12px !important; min-height: 44px !important; font-size: .82rem !important; }
  .chuckin-app .ci-header-cta span { display: none !important; }
  .chuckin-app .ci-mobile-menu summary { padding: 10px 11px !important; font-size: .8rem !important; }
}

@container (max-width: 470px) {
  .chuckin-app .ci-header-cta { font-size: 0 !important; width: 46px !important; padding: 0 !important; }
  .chuckin-app .ci-header-cta::before { content: '+'; font-size: 1.45rem; line-height: 1; }
}


.chuckin-app .ci-appbar.ci-appbar-compact .ci-main-nav { display:none !important; }
.chuckin-app .ci-appbar.ci-appbar-compact .ci-mobile-menu { display:block !important; }


/* ChuckIn v0.5.2: focused two-action header and homepage scroll journey */
.chuckin-app .ci-appbar {
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  grid-template-columns:none !important;
  gap:24px !important;
  overflow:visible !important;
}
.chuckin-app .ci-main-nav,
.chuckin-app .ci-mobile-menu { display:none !important; }
.chuckin-app .ci-brand { flex:0 1 auto !important; min-width:0 !important; }
.chuckin-app .ci-header-actions-simple {
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:12px !important;
  margin-left:auto !important;
  flex:0 0 auto !important;
}
.chuckin-app .ci-manage-cta {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:50px !important;
  padding:11px 18px !important;
  border:1px solid #e8dcae !important;
  border-radius:14px !important;
  background:#fffaf0 !important;
  color:#111 !important;
  text-decoration:none !important;
  font-weight:900 !important;
  white-space:nowrap !important;
}
.chuckin-app .ci-header-cta {
  display:inline-flex !important;
  width:auto !important;
  min-height:50px !important;
  padding:11px 18px !important;
  font-size:.95rem !important;
  white-space:nowrap !important;
}
.chuckin-app .ci-header-cta::before { content:none !important; }
.chuckin-app .ci-header-cta span { display:inline !important; }
.ci-section-actions {
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:30px;
}
.ci-pricing-actions {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:12px;
  flex:0 0 auto;
}
.ci-text-link {
  color:#222 !important;
  font-weight:760;
  text-decoration:underline !important;
  text-underline-offset:4px;
}
@media (max-width:700px) {
  .chuckin-app .ci-appbar { padding:10px 12px !important; gap:10px !important; }
  .chuckin-app .ci-brand-name { font-size:1.12rem !important; }
  .chuckin-app .ci-logo-mark { width:62px !important; height:62px !important; }
  .chuckin-app .ci-header-actions-simple { gap:7px !important; }
  .chuckin-app .ci-manage-cta { min-height:44px !important; padding:9px 11px !important; font-size:.82rem !important; }
  .chuckin-app .ci-header-cta { min-height:44px !important; padding:9px 11px !important; font-size:.82rem !important; }
  .chuckin-app .ci-header-cta span { display:none !important; }
  .ci-pricing-actions { width:100%; }
}
@media (max-width:470px) {
  .chuckin-app .ci-brand-name { display:none !important; }
  .chuckin-app .ci-logo-mark { width:58px !important; height:58px !important; }
  .chuckin-app .ci-manage-cta { padding:8px 10px !important; }
  .chuckin-app .ci-header-cta { padding:8px 10px !important; font-size:.76rem !important; }
}

/* Pricing CTA refinement v0.5.3 */
.ci-existing-chuckin {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:8px;
}
.ci-existing-chuckin > span {
  color:var(--ci-muted);
  font-size:.92rem;
  font-weight:700;
}
.ci-manage-pricing-button {
  min-height:44px;
  padding:10px 16px;
  border-color:#ddd3b2;
  background:#fffaf0;
  color:#111 !important;
  box-shadow:none;
}
.ci-manage-pricing-button:hover {
  background:#fff3c4;
}
@media (max-width:700px) {
  .ci-existing-chuckin { width:100%; }
  .ci-manage-pricing-button { width:100%; }
}


/* Mobile centring and overflow correction v0.5.4 */
@media (max-width: 700px) {
  html, body { overflow-x: hidden !important; }

  .entry-content:has(.chuckin-app),
  .wp-block-post-content:has(.chuckin-app),
  .elementor-widget-container:has(.chuckin-app),
  main:has(.chuckin-app),
  article:has(.chuckin-app) {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    overflow-x: clip !important;
  }

  .chuckin-app,
  .chuckin-app.ci-page-shell,
  .chuckin-app.ci-public-shell,
  .chuckin-app.chuckin-landing {
    width: calc(100% - 18px) !important;
    max-width: calc(100% - 18px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    transform: none !important;
    left: auto !important;
    right: auto !important;
  }

  .chuckin-app .ci-appbar,
  .chuckin-app .ci-hero,
  .chuckin-app .ci-section,
  .chuckin-app .ci-section-dark,
  .chuckin-app .ci-pricing-panel,
  .chuckin-app .ci-create-layout,
  .chuckin-app .ci-create-main,
  .chuckin-app .ci-form-card,
  .chuckin-app .ci-dashboard-grid,
  .chuckin-app .ci-public-card,
  .chuckin-app .ci-empty-state {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .chuckin-app .ci-section-dark { margin-inline: 0 !important; }
  .chuckin-app .ci-create-layout,
  .chuckin-app .ci-dashboard-grid { overflow: visible !important; }
  .chuckin-app input,
  .chuckin-app textarea,
  .chuckin-app select,
  .chuckin-app button { max-width: 100% !important; }
}

@media (max-width: 420px) {
  .chuckin-app,
  .chuckin-app.ci-page-shell,
  .chuckin-app.ci-public-shell,
  .chuckin-app.chuckin-landing {
    width: calc(100% - 12px) !important;
    max-width: calc(100% - 12px) !important;
  }
}

/* v0.6.0 — collection types and QR sharing */
.ci-collection-type{border:0;padding:0;margin:0 0 24px;display:grid;gap:12px}.ci-collection-type legend{font-weight:800;margin-bottom:10px}.ci-type-option{display:flex!important;gap:12px;align-items:flex-start;border:1px solid #e3dcc9;border-radius:16px;padding:15px 16px;background:#fff;cursor:pointer}.ci-type-option:has(input:checked){border-color:#111;box-shadow:0 0 0 2px #ffc400}.ci-type-option input{width:auto!important;margin-top:4px}.ci-type-option span{display:grid;gap:3px}.ci-type-option strong{font-size:1rem}.ci-type-option small{font-weight:500;color:#5d5a53;line-height:1.35}.ci-open-target-note{background:#fff7d1;border:1px solid #ead276;border-radius:14px;padding:12px 14px;margin:14px 0}.ci-qr-card{margin-top:18px;padding-top:18px;border-top:1px solid #ece5d6;display:grid;grid-template-columns:128px 1fr;gap:18px;align-items:center}.ci-qr-card img{width:128px;height:128px;background:#fff;border:8px solid #fff;border-radius:12px;box-shadow:0 4px 18px rgba(0,0,0,.08)}.ci-qr-card p{margin:5px 0 12px;color:#5d5a53}.ci-qr-actions{display:flex;flex-wrap:wrap;gap:9px}.ci-qr-actions .ci-button{font-size:.9rem;padding:10px 13px}@media(max-width:620px){.ci-qr-card{grid-template-columns:1fr;text-align:center}.ci-qr-card img{margin:auto;width:180px;height:180px}.ci-qr-actions{justify-content:center}.ci-qr-actions .ci-button{width:100%}}

/* v0.6.2 — PDF-inspired layout only; retain original ChuckIn visual styling */
@media (min-width: 901px) {
  .chuckin-app.chuckin-landing {
    width: min(1380px, calc(100% - 40px));
  }

  .chuckin-landing .ci-hero-pdf-layout {
    grid-template-columns: minmax(0, 1fr) 270px;
    gap: clamp(36px, 5vw, 74px);
    min-height: 610px;
    padding: clamp(48px, 6vw, 78px);
  }

  .chuckin-landing .ci-hero-copy {
    max-width: 900px;
  }

  .chuckin-landing .ci-hero h1 {
    max-width: 880px;
    font-size: clamp(4.5rem, 7vw, 7.1rem);
  }

  .chuckin-landing .ci-hero-copy > p {
    max-width: 820px;
  }

  .chuckin-landing .ci-hero-trust {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
  }

  .chuckin-landing .ci-hero-trust .ci-trust-row {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
    margin: 0;
  }

  .chuckin-landing .ci-hero-trust .ci-trust-row span {
    width: 100%;
    justify-content: center;
    text-align: center;
    padding: 13px 16px;
  }

  .chuckin-landing .ci-section {
    padding-left: 0;
    padding-right: 0;
  }

  .chuckin-landing .ci-step-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
  }

  .chuckin-landing .ci-step-card {
    min-height: 285px;
  }

  .chuckin-landing .ci-section-actions {
    justify-content: space-between;
    align-items: center;
  }

  .chuckin-landing .ci-section-dark {
    padding-left: clamp(32px, 5vw, 64px);
    padding-right: clamp(32px, 5vw, 64px);
  }

  .chuckin-landing .ci-pricing-panel {
    padding-left: clamp(32px, 5vw, 64px);
    padding-right: clamp(32px, 5vw, 64px);
  }
}

@media (max-width: 900px) {
  .chuckin-landing .ci-hero-pdf-layout {
    grid-template-columns: 1fr;
  }

  .chuckin-landing .ci-hero-trust {
    width: 100%;
  }

  .chuckin-landing .ci-hero-trust .ci-trust-row {
    margin-top: 0;
  }
}
