/*
 * Big Bold Guides 8.1
 * Planner-only visual refinement.
 *
 * This file deliberately changes presentation only. It is loaded after the
 * existing planner stylesheet so the v8 storage schema, markup and behavior
 * remain unchanged.
 */

.bbg-trip-planner-page {
  --bbg-v81-ink: #141518;
  --bbg-v81-muted: #686b72;
  --bbg-v81-line: rgb(20 21 24 / 10%);
  --bbg-v81-line-strong: rgb(20 21 24 / 17%);
  --bbg-v81-paper: #fff;
  --bbg-v81-canvas: #f7f7f5;
  --bbg-v81-glass: rgb(255 255 255 / 76%);
  --bbg-v81-glass-strong: rgb(255 255 255 / 92%);
  --bbg-v81-yellow: #ffc800;
  --bbg-v81-yellow-soft: #fff7cf;
  --bbg-v81-blue: #2863e9;
  --bbg-v81-blue-soft: #eef3ff;
  --bbg-v81-green: #22a972;
  --bbg-v81-green-soft: #ecf8f3;
  --bbg-v81-violet: #8065e8;
  --bbg-v81-violet-soft: #f3efff;
  --bbg-v81-coral: #d92d20;
  --bbg-v81-coral-soft: #fff0ee;
  --bbg-v81-shadow-window: 0 1px 2px rgb(20 21 24 / 4%), 0 28px 80px rgb(20 21 24 / 10%);
  --bbg-v81-shadow-row: 0 1px 2px rgb(20 21 24 / 4%), 0 8px 24px rgb(20 21 24 / 5%);
  background: #fff;
}

.bbg-trip-planner-main {
  overflow: clip;
  padding-block: clamp(.5rem, 1.8vw, 1.25rem) clamp(3rem, 7vw, 6rem);
  background: #fff;
  color: var(--bbg-v81-ink);
}

.bbg-planner-shell {
  width: min(calc(100% - clamp(1rem, 3vw, 2.5rem)), 96rem);
}

/* Compact editorial introduction */
.bbg-planner-hero {
  align-items: center;
  gap: 1rem 2rem;
  padding: clamp(1rem, 2.4vw, 2rem) clamp(.25rem, 1vw, .75rem) clamp(1.25rem, 2.6vw, 2.2rem);
}

.bbg-planner-hero h1 {
  max-width: 12ch;
  font-size: clamp(2.5rem, 5.4vw, 5rem);
  letter-spacing: -.06em;
  line-height: .9;
}

.bbg-planner-hero > div > p:not(.bbg-kicker):not(.bbg-planner-free) {
  max-width: 35rem;
  margin-top: .65rem;
  color: #4e5056;
  font-size: clamp(.92rem, 1.4vw, 1.08rem);
}

.bbg-planner-hero .bbg-planner-free {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  margin-top: .65rem;
  color: #4f5258;
  font-size: .7rem;
}

.bbg-planner-hero .bbg-planner-free::before {
  width: .48rem;
  height: .48rem;
  border-radius: 50%;
  background: var(--bbg-v81-green);
  box-shadow: 0 0 0 .2rem var(--bbg-v81-green-soft);
  content: "";
}

.bbg-planner-privacy {
  max-width: 27rem;
  justify-self: end;
  padding: .8rem .9rem;
  border: 1px solid rgb(255 255 255 / 88%);
  border-radius: 1rem;
  background: var(--bbg-v81-glass);
  color: #4f5258;
  box-shadow: 0 10px 32px rgb(20 21 24 / 6%), inset 0 1px 0 #fff;
  backdrop-filter: blur(22px) saturate(125%);
  -webkit-backdrop-filter: blur(22px) saturate(125%);
}

.bbg-planner-privacy span {
  color: var(--bbg-v81-green);
}

/* One calm glass workspace instead of several competing boxes */
.bbg-planner-app {
  isolation: isolate;
  padding: clamp(.45rem, 1vw, .8rem);
  border: 1px solid rgb(255 255 255 / 90%);
  border-radius: clamp(1.2rem, 2vw, 1.75rem);
  background:
    radial-gradient(circle at 7% 0%, rgb(255 200 0 / 10%), transparent 24rem),
    radial-gradient(circle at 100% 32%, rgb(40 99 233 / 8%), transparent 30rem),
    var(--bbg-v81-glass);
  box-shadow: var(--bbg-v81-shadow-window), inset 0 1px 0 #fff;
  backdrop-filter: blur(28px) saturate(128%);
  -webkit-backdrop-filter: blur(28px) saturate(128%);
}

.bbg-planner-app > * {
  position: relative;
  z-index: 1;
}

.bbg-planner-topbar,
.bbg-planner-commandbar,
.bbg-planner-daybar {
  border: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.bbg-planner-topbar {
  gap: .7rem 1.2rem;
  padding: .65rem;
  border-radius: 1.1rem;
}

.bbg-planner-trip-fields {
  gap: .5rem;
}

.bbg-planner-trip-fields label,
.bbg-planner-trip-picker,
.bbg-planner-day-meta label,
.bbg-planner-card__quick-fields label,
.bbg-planner-card__details-grid label {
  color: #64676e;
  font-size: .6rem;
  letter-spacing: .07em;
}

.bbg-trip-planner input:not([type="checkbox"]):not([type="radio"]),
.bbg-trip-planner select,
.bbg-trip-planner textarea {
  border-color: rgb(20 21 24 / 9%);
  border-radius: .78rem;
  background: rgb(255 255 255 / 86%);
  box-shadow: inset 0 1px 0 #fff;
}

.bbg-trip-planner input:not([type="checkbox"]):not([type="radio"]):hover,
.bbg-trip-planner select:hover,
.bbg-trip-planner textarea:hover {
  border-color: var(--bbg-v81-line-strong);
}

.bbg-trip-planner input:focus,
.bbg-trip-planner select:focus,
.bbg-trip-planner textarea:focus {
  border-color: rgb(40 99 233 / 50%);
  box-shadow: 0 0 0 3px rgb(40 99 233 / 11%);
}

.bbg-planner-save-status {
  color: #5e6168;
}

.bbg-planner-save-status::before {
  background: var(--bbg-v81-green);
  box-shadow: 0 0 0 .18rem var(--bbg-v81-green-soft);
}

.bbg-planner-save-status[data-state="saving"]::before {
  background: var(--bbg-v81-yellow);
  box-shadow: 0 0 0 .18rem var(--bbg-v81-yellow-soft);
}

.bbg-planner-save-status[data-state="warning"]::before,
.bbg-planner-save-status[data-state="error"]::before {
  background: var(--bbg-v81-coral);
  box-shadow: 0 0 0 .18rem var(--bbg-v81-coral-soft);
}

/* Primary tools read like a small native toolbar */
.bbg-planner-commandbar {
  margin-top: 0;
  padding: .55rem .65rem;
  border-top: 1px solid rgb(255 255 255 / 75%);
  border-bottom: 1px solid var(--bbg-v81-line);
  border-radius: 0;
}

.bbg-planner-readiness {
  color: #5d6067;
  font-size: .68rem;
}

.bbg-planner-output-tools {
  gap: .25rem;
}

.bbg-planner-output-tools button,
.bbg-planner-more-menu > summary {
  min-height: 2.55rem;
  padding: .42rem .68rem;
  border-radius: .72rem;
  color: #34363a;
}

.bbg-planner-output-tools button:hover,
.bbg-planner-more-menu > summary:hover {
  border-color: transparent;
  background: rgb(255 255 255 / 80%);
}

.bbg-planner-output-tools .bbg-planner-travel-button {
  border-color: var(--bbg-v81-blue);
  background: var(--bbg-v81-blue);
  color: #fff;
  box-shadow: 0 5px 16px rgb(40 99 233 / 20%);
}

.bbg-planner-output-tools .bbg-planner-travel-button:hover {
  border-color: #194cc9;
  background: #194cc9;
}

.bbg-planner-more-menu > div,
.bbg-planner-activity-menu .bbg-planner-palette-buttons,
.bbg-planner-reminder-presets {
  border: 1px solid rgb(255 255 255 / 92%);
  background: var(--bbg-v81-glass-strong);
  box-shadow: 0 22px 60px rgb(20 21 24 / 16%), inset 0 1px 0 #fff;
  backdrop-filter: blur(26px) saturate(125%);
  -webkit-backdrop-filter: blur(26px) saturate(125%);
}

.bbg-planner-more-menu > div button:hover {
  background: var(--bbg-v81-canvas);
}

.bbg-planner-backup-note,
.bbg-planner-conflict {
  border-color: #ddc87e;
  background: #fff9df;
}

/* Day rail */
.bbg-planner-daybar {
  grid-template-columns: 2.6rem minmax(16rem, 1fr) 2.6rem auto minmax(9rem, 13rem) auto;
  gap: .35rem;
  margin-top: 0;
  padding: .65rem;
}

.bbg-planner-day-scroll {
  width: 2.6rem;
  min-height: 2.6rem;
  border: 0;
  border-radius: 50%;
  background: rgb(255 255 255 / 70%);
  box-shadow: 0 3px 12px rgb(20 21 24 / 5%);
}

.bbg-planner-day-scroll:hover:not(:disabled) {
  background: #fff;
  box-shadow: 0 5px 18px rgb(20 21 24 / 8%);
}

.bbg-planner-day-tab-wrap {
  flex-basis: clamp(7rem, 10vw, 8.6rem);
  border-color: transparent;
  border-radius: .82rem;
  background: rgb(255 255 255 / 66%);
}

.bbg-planner-day-tab-wrap::before {
  inset: auto .55rem 0;
  width: auto;
  height: .16rem;
  border-radius: .2rem .2rem 0 0;
  background: var(--day-accent, #d8d8d8);
}

.bbg-planner-day-tab-wrap:has(.bbg-planner-day-tab[aria-selected="true"]) {
  border-color: rgb(255 255 255 / 90%);
  background: #fff;
  box-shadow: var(--bbg-v81-shadow-row);
}

.bbg-planner-day-tab {
  min-height: 3.2rem;
  padding: .46rem .25rem .5rem .62rem;
}

.bbg-planner-day-drag {
  border-left: 0;
  border-radius: 0 .82rem .82rem 0;
  color: #898b91;
}

.bbg-planner-day-drag:hover {
  background: var(--bbg-v81-canvas);
  color: #424449;
}

.bbg-planner-add-day {
  min-height: 2.6rem;
  border: 0;
  border-radius: .75rem;
  background: #fff;
  box-shadow: var(--bbg-v81-shadow-row);
}

/* Main planning surface */
.bbg-planner-workspace {
  gap: .75rem;
  margin-top: 0;
}

.bbg-planner-day-panel {
  border-color: rgb(255 255 255 / 90%);
  border-radius: 1.25rem;
  background: rgb(255 255 255 / 78%);
  box-shadow: 0 16px 46px rgb(20 21 24 / 7%), inset 0 1px 0 #fff;
  backdrop-filter: blur(18px) saturate(118%);
  -webkit-backdrop-filter: blur(18px) saturate(118%);
}

.bbg-planner-day-header {
  padding: clamp(.85rem, 1.6vw, 1.2rem);
  border-bottom-color: var(--bbg-v81-line);
  border-radius: 1.25rem 1.25rem 0 0;
  background: transparent;
}

.bbg-trip-planner .bbg-planner-day-title {
  font-size: clamp(1.5rem, 2.6vw, 2.25rem);
}

.bbg-trip-planner .bbg-planner-day-meta input[type="color"] {
  padding: .3rem;
  border-color: var(--bbg-v81-line);
  border-radius: .78rem;
  background: rgb(255 255 255 / 82%);
}

.bbg-planner-day-actions button {
  border-bottom-color: transparent;
  color: #5b5e64;
}

.bbg-planner-day-actions button:hover {
  border-bottom-color: var(--bbg-v81-yellow);
  color: var(--bbg-v81-ink);
}

.bbg-planner-palette {
  padding: .6rem clamp(.8rem, 1.5vw, 1.15rem);
  border-bottom-color: var(--bbg-v81-line);
  background: rgb(247 247 245 / 72%);
}

.bbg-planner-palette > div:first-child p:first-child {
  font-size: .68rem;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.bbg-planner-activity-menu > summary,
.bbg-planner-reminder-menu > summary,
.bbg-planner-add-transport {
  min-height: 2.55rem;
  border-color: transparent;
  border-radius: .75rem;
  box-shadow: inset 0 1px 0 rgb(255 255 255 / 70%);
}

.bbg-planner-activity-menu > summary {
  background: var(--bbg-v81-yellow-soft);
  color: #5b4700;
}

.bbg-planner-add-transport {
  background: var(--bbg-v81-blue-soft);
  color: #234d9e;
}

.bbg-planner-reminder-menu > summary {
  background: var(--bbg-v81-violet-soft);
  color: #52399f;
}

.bbg-planner-activity-menu > summary:hover,
.bbg-planner-reminder-menu > summary:hover,
.bbg-planner-add-transport:hover {
  border-color: var(--bbg-v81-line);
  filter: saturate(108%);
}

.bbg-planner-activity-menu .bbg-planner-palette-buttons button,
.bbg-planner-reminder-presets button {
  border-radius: .62rem;
  background: rgb(247 247 245 / 78%);
}

.bbg-planner-timeline {
  min-height: 22rem;
  padding: clamp(.85rem, 1.6vw, 1.2rem);
  background: transparent;
}

.bbg-planner-timeline-heading {
  margin-bottom: .85rem;
}

.bbg-planner-timeline-heading h2 {
  font-size: clamp(1.15rem, 2vw, 1.4rem);
}

.bbg-planner-stop-list {
  gap: .55rem;
  padding-left: 1.15rem;
}

.bbg-planner-stop-list::before {
  left: .32rem;
  background: linear-gradient(to bottom, rgb(20 21 24 / 5%), rgb(20 21 24 / 18%), rgb(20 21 24 / 5%));
}

.bbg-planner-item {
  border-color: rgb(255 255 255 / 92%);
  border-left: 0;
  border-radius: .9rem;
  background: rgb(255 255 255 / 90%);
  box-shadow: var(--bbg-v81-shadow-row), inset 0 1px 0 #fff;
}

.bbg-planner-item::after {
  width: .17rem;
  border-radius: .9rem 0 0 .9rem;
}

.bbg-planner-stop-list .bbg-planner-item::before {
  top: 1.2rem;
  left: -1.16rem;
  border-color: color-mix(in srgb, var(--item-accent, #a7a8ab) 70%, #777);
  background: #fff;
  box-shadow: 0 0 0 3px rgb(255 255 255 / 92%);
}

.bbg-planner-item:hover {
  border-color: rgb(255 255 255 / 100%);
  box-shadow: 0 2px 5px rgb(20 21 24 / 5%), 0 13px 32px rgb(20 21 24 / 8%);
  transform: translateY(-1px);
}

.bbg-planner-card {
  padding: .3rem .38rem;
}

/* Time first, then icon and title, with controls kept quiet on the right */
.bbg-planner-card__header {
  min-height: 2.8rem;
  grid-template-columns: minmax(5.2rem, auto) 1.85rem minmax(4rem, 1fr) 2.25rem;
  grid-template-areas: "time icon heading handle";
  gap: .45rem;
  padding-right: 2.75rem;
}

.bbg-planner-drag-handle {
  grid-area: handle;
  width: 2.25rem;
  min-width: 2.25rem;
  min-height: 2.4rem;
  border-radius: .62rem;
  color: #8a8c92;
  opacity: .58;
}

.bbg-planner-item:hover .bbg-planner-drag-handle,
.bbg-planner-drag-handle:focus-visible,
.bbg-planner-drag-handle[aria-pressed="true"] {
  opacity: 1;
}

.bbg-planner-card__icon {
  grid-area: icon;
  width: 1.85rem;
  height: 1.85rem;
  border-radius: 50%;
  background: color-mix(in srgb, var(--item-accent, #ececea) 34%, #fff);
  color: #303238;
  box-shadow: inset 0 0 0 1px rgb(255 255 255 / 70%);
}

.bbg-planner-card__heading {
  grid-area: heading;
}

.bbg-trip-planner .bbg-planner-card__heading input {
  min-height: 2.3rem;
  font-size: .86rem;
  font-weight: 720;
}

.bbg-planner-card__time {
  grid-area: time;
  display: inline-flex;
  width: max-content;
  max-width: 8.8rem;
  min-height: 2.15rem;
  align-items: center;
  justify-content: center;
  justify-self: start;
  padding: .35rem .55rem;
  border: 1px solid rgb(20 21 24 / 7%);
  border-radius: .72rem;
  background: rgb(247 247 245 / 90%);
  color: #4c4f55;
  font-size: .63rem;
  font-weight: 760;
  font-variant-numeric: tabular-nums;
}

.bbg-planner-card__drawer > summary {
  top: .3rem;
  right: .38rem;
  width: 2.4rem;
  min-height: 2.7rem;
  border-radius: .62rem;
}

.bbg-planner-card__drawer > summary::after {
  content: "⌄";
}

.bbg-planner-card__drawer[open] > summary {
  background: var(--bbg-v81-canvas);
}

.bbg-planner-card__drawer-body {
  margin-top: .3rem;
  padding-top: .8rem;
  border-top-color: var(--bbg-v81-line);
}

.bbg-planner-card__actions button {
  border-bottom: 1px solid transparent;
  border-radius: 0;
}

.bbg-planner-card__actions button:hover {
  border-bottom-color: var(--bbg-v81-yellow);
}

/* Red is reserved for genuine schedule conflicts */
.bbg-planner-card__time.has-conflict {
  border-color: var(--bbg-v81-coral);
  background: var(--bbg-v81-coral-soft);
  color: var(--bbg-v81-coral);
}

.bbg-planner-card__conflict {
  border-color: var(--bbg-v81-coral);
  background: var(--bbg-v81-coral-soft);
  color: var(--bbg-v81-coral);
}

.bbg-planner-item.has-time-conflict {
  border-color: var(--bbg-v81-coral);
  background: #fff;
  box-shadow: 0 0 0 1px var(--bbg-v81-coral), 0 10px 28px rgb(217 45 32 / 10%);
}

.bbg-planner-item.has-time-conflict::after {
  background: var(--bbg-v81-coral);
}

.bbg-planner-day-conflict {
  border-color: var(--bbg-v81-coral);
  border-radius: .8rem;
  background: var(--bbg-v81-coral-soft);
  color: var(--bbg-v81-coral);
  box-shadow: 0 8px 22px rgb(217 45 32 / 7%);
}

.bbg-planner-day-conflict button {
  border-color: var(--bbg-v81-coral);
  color: var(--bbg-v81-coral);
}

/* Transport and reminders remain distinct without becoming separate posters */
.bbg-planner-item--transport {
  border-radius: .8rem;
  background: rgb(248 250 255 / 92%);
}

.bbg-planner-item--transport::after {
  background: var(--bbg-v81-blue);
}

.bbg-planner-item--transport .bbg-planner-card__icon {
  background: var(--bbg-v81-blue-soft);
  color: #214b9c;
}

.bbg-planner-item--reminder {
  border-radius: .8rem;
  background: rgb(251 249 255 / 92%);
}

.bbg-planner-item--reminder::after {
  background: var(--bbg-v81-violet);
}

.bbg-planner-item--reminder .bbg-planner-card {
  padding-block: .2rem;
}

.bbg-planner-item--reminder .bbg-planner-card__header {
  min-height: 2.5rem;
  grid-template-columns: minmax(5.2rem, auto) 1.65rem minmax(4rem, 1fr) 2.25rem;
  grid-template-areas: "time icon heading handle";
  padding-right: 2.75rem;
}

.bbg-planner-item--reminder .bbg-planner-card__icon {
  grid-area: icon;
  background: var(--bbg-v81-violet-soft);
  color: #52399f;
}

.bbg-planner-item--reminder .bbg-planner-drag-handle {
  grid-area: handle;
}

.bbg-planner-item.is-done:not(.has-time-conflict) {
  background: rgb(247 247 245 / 84%);
}

/* Quiet sidebar, with checklist first as authored in the markup */
.bbg-planner-side-stack {
  top: 5rem;
  gap: .7rem;
}

.bbg-planner-checklist,
.bbg-planner-idea-dock {
  padding: .9rem;
  border-color: rgb(255 255 255 / 90%);
  border-radius: 1rem;
  background: var(--bbg-v81-glass-strong);
  box-shadow: var(--bbg-v81-shadow-row), inset 0 1px 0 #fff;
  backdrop-filter: blur(18px) saturate(118%);
  -webkit-backdrop-filter: blur(18px) saturate(118%);
}

.bbg-planner-checklist h2,
.bbg-planner-idea-dock h2 {
  font-size: .92rem;
}

.bbg-planner-checklist > header button,
.bbg-planner-idea-dock > header button {
  border: 0;
  background: var(--bbg-v81-canvas);
}

.bbg-planner-checklist li {
  border-color: rgb(20 21 24 / 7%);
  border-radius: .7rem;
  background: rgb(247 247 245 / 74%);
}

.bbg-planner-idea-dock .bbg-planner-item {
  box-shadow: none;
}

/* Dialogs and Travel Mode share the same calmer material */
.bbg-planner-modal {
  background: rgb(20 21 24 / 35%);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.bbg-planner-modal__surface {
  border-color: rgb(255 255 255 / 92%);
  background: var(--bbg-v81-glass-strong);
  box-shadow: 0 32px 100px rgb(0 0 0 / 22%), inset 0 1px 0 #fff;
}

.bbg-planner-travel {
  background:
    radial-gradient(circle at 10% 0%, rgb(255 200 0 / 9%), transparent 26rem),
    radial-gradient(circle at 100% 28%, rgb(40 99 233 / 7%), transparent 30rem),
    #f7f7f5;
}

.bbg-planner-travel > header,
.bbg-planner-travel__daynav {
  background: var(--bbg-v81-glass-strong);
}

.bbg-planner-travel-item {
  border-color: rgb(255 255 255 / 92%);
  background: rgb(255 255 255 / 90%);
  box-shadow: var(--bbg-v81-shadow-row);
}

.bbg-planner-travel-item.is-next {
  border-color: var(--bbg-v81-blue);
  box-shadow: 0 0 0 2px rgb(40 99 233 / 12%), var(--bbg-v81-shadow-row);
}

.bbg-planner-travel-item.is-next::before {
  background: var(--bbg-v81-blue);
}

.bbg-planner-travel-item.has-time-conflict {
  border-color: var(--bbg-v81-coral);
  background: var(--bbg-v81-coral-soft);
  box-shadow: 0 0 0 1px var(--bbg-v81-coral);
}

@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .bbg-planner-app,
  .bbg-planner-privacy,
  .bbg-planner-more-menu > div,
  .bbg-planner-activity-menu .bbg-planner-palette-buttons,
  .bbg-planner-reminder-presets,
  .bbg-planner-day-panel,
  .bbg-planner-checklist,
  .bbg-planner-idea-dock,
  .bbg-planner-modal__surface,
  .bbg-planner-travel > header,
  .bbg-planner-travel__daynav {
    background: #fff;
  }
}

@media (max-width: 68rem) {
  .bbg-planner-daybar {
    grid-template-columns: 2.6rem minmax(12rem, 1fr) 2.6rem auto minmax(8rem, 11rem) auto;
  }

  .bbg-planner-side-stack {
    top: auto;
  }
}

@media (max-width: 48rem) {
  .bbg-planner-shell {
    width: min(calc(100% - .75rem), 96rem);
  }

  .bbg-planner-hero {
    gap: .75rem;
    padding-inline: .15rem;
  }

  .bbg-planner-hero h1 {
    font-size: clamp(2.35rem, 11vw, 3.6rem);
  }

  .bbg-planner-privacy {
    max-width: none;
    justify-self: stretch;
  }

  .bbg-planner-app {
    padding: .4rem;
    border-radius: 1.2rem;
  }

  .bbg-planner-topbar {
    padding: .55rem;
  }

  .bbg-planner-commandbar {
    padding: .55rem;
  }

  .bbg-planner-output-tools {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .bbg-planner-output-tools button,
  .bbg-planner-more-menu > summary {
    min-height: 2.7rem;
  }

  .bbg-planner-daybar {
    grid-template-columns: 2.6rem minmax(0, 1fr) 2.6rem;
    padding: .55rem;
  }

  .bbg-planner-day-position {
    display: none;
  }

  .bbg-planner-day-jump {
    grid-column: 1 / 3;
    grid-row: 2;
  }

  .bbg-planner-add-day {
    grid-column: 3;
    grid-row: 2;
    padding-inline: 0;
    font-size: 0;
  }

  .bbg-planner-add-day span {
    font-size: 1rem;
  }

  .bbg-planner-day-panel {
    border-radius: 1rem;
  }

  .bbg-planner-day-header {
    border-radius: 1rem 1rem 0 0;
  }

  .bbg-planner-palette {
    gap: .5rem;
  }

  .bbg-planner-stop-list {
    padding-left: 0;
  }

  .bbg-planner-item:hover {
    transform: none;
  }
}

@media (max-width: 35rem) {
  .bbg-trip-planner-main {
    padding-top: .2rem;
  }

  .bbg-planner-shell {
    width: min(calc(100% - .5rem), 96rem);
  }

  .bbg-planner-hero {
    padding-block: .7rem 1rem;
  }

  .bbg-planner-hero > div > p:not(.bbg-kicker):not(.bbg-planner-free) {
    font-size: .9rem;
  }

  .bbg-planner-privacy {
    padding: .7rem .75rem;
    font-size: .7rem;
  }

  .bbg-planner-app {
    padding: .28rem;
    border-radius: 1rem;
  }

  .bbg-planner-topbar,
  .bbg-planner-commandbar,
  .bbg-planner-daybar {
    padding-inline: .45rem;
  }

  .bbg-planner-primary-adds {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .bbg-planner-activity-menu > summary,
  .bbg-planner-reminder-menu > summary,
  .bbg-planner-add-transport {
    min-height: 2.6rem;
    font-size: .6rem;
  }

  .bbg-planner-timeline,
  .bbg-planner-day-header,
  .bbg-planner-palette {
    padding-inline: .55rem;
  }

  .bbg-planner-card {
    padding-inline: .2rem;
  }

  .bbg-planner-card__header {
    grid-template-columns: minmax(4.45rem, auto) 1.65rem minmax(2.75rem, 1fr) 2rem;
    gap: .26rem;
    padding-right: 2.55rem;
  }

  .bbg-planner-card__time {
    max-width: 6.3rem;
    min-height: 2rem;
    padding-inline: .38rem;
    font-size: .55rem;
  }

  .bbg-planner-card__icon {
    width: 1.65rem;
    height: 1.65rem;
    font-size: .74rem;
  }

  .bbg-trip-planner .bbg-planner-card__heading input {
    font-size: .76rem;
  }

  .bbg-planner-drag-handle {
    width: 2rem;
    min-width: 2rem;
  }

  .bbg-planner-card__drawer > summary {
    right: .2rem;
    width: 2.25rem;
  }

  .bbg-planner-item--reminder .bbg-planner-card__header {
    grid-template-columns: minmax(4.45rem, auto) 1.5rem minmax(2.75rem, 1fr) 2rem;
    padding-right: 2.55rem;
  }

  .bbg-planner-side-stack {
    gap: .55rem;
  }

  .bbg-planner-checklist,
  .bbg-planner-idea-dock {
    border-radius: .9rem;
  }
}

@media (max-width: 22rem) {
  .bbg-planner-day-jump {
    grid-row: 2;
  }

  .bbg-planner-add-day {
    grid-row: 2;
  }

  .bbg-planner-card__header {
    grid-template-columns: 4rem 1.5rem minmax(2.5rem, 1fr);
    grid-template-areas:
      "time icon heading"
      "handle handle handle";
    padding-right: 2.4rem;
  }

  .bbg-planner-drag-handle {
    justify-self: end;
    min-height: 1.8rem;
  }

  .bbg-planner-item--reminder .bbg-planner-card__header {
    grid-template-columns: 4rem 1.45rem minmax(2.5rem, 1fr);
    grid-template-areas:
      "time icon heading"
      "handle handle handle";
    padding-right: 2.4rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .bbg-planner-item {
    transition: none;
  }
}

@media (forced-colors: active) {
  .bbg-planner-app,
  .bbg-planner-day-panel,
  .bbg-planner-item,
  .bbg-planner-checklist,
  .bbg-planner-idea-dock {
    border: 1px solid CanvasText;
    box-shadow: none;
  }
}

@media print {
  .bbg-planner-app {
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
  }
}
