.pf-open{overflow:hidden}.pf-overlay{position:fixed;inset:0;z-index:100000;background:rgba(27,39,50,.48);backdrop-filter:blur(12px);padding:18px;display:grid;place-items:center}.pf-shell{width:min(1180px,100%);height:min(860px,calc(100dvh - 36px));display:grid;grid-template-columns:280px minmax(0,1fr);overflow:hidden;border:1px solid var(--lv-line);border-radius:32px;background:var(--lv-surface);box-shadow:0 32px 100px rgba(20,32,42,.34)}.pf-side{padding:24px 18px;display:flex;flex-direction:column;gap:20px;background:linear-gradient(160deg,var(--lv-surface-elevated),color-mix(in srgb,var(--lv-accent) 8%,var(--lv-surface)));border-right:1px solid var(--lv-line)}.pf-user{display:flex;align-items:center;gap:12px;padding:4px 8px}.pf-user div{min-width:0}.pf-user strong,.pf-user small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pf-user small{color:var(--lv-muted);font-size:12px}.pf-avatar{display:grid;place-items:center;flex:0 0 auto;width:50px;height:50px;border-radius:17px;background:linear-gradient(135deg,var(--avatar,#ee6f83),color-mix(in srgb,var(--avatar,#ee6f83) 45%,#ffbf8e));color:#fff;font-weight:950;object-fit:cover}.pf-avatar.xl{width:76px;height:76px;border-radius:24px;font-size:22px}.pf-side nav{display:grid;gap:7px}.pf-side nav button,.pf-signout{border:0;border-radius:15px;padding:13px 14px;background:transparent;color:var(--lv-text);text-align:left;font-weight:850;cursor:pointer}.pf-side nav button span{display:inline-block;width:28px}.pf-side nav button.active{background:var(--lv-surface-elevated);color:var(--lv-accent);box-shadow:0 10px 26px rgba(31,50,66,.08)}.pf-sync{margin-top:auto;display:flex;align-items:center;gap:9px;padding:13px;border-radius:16px;background:var(--lv-surface-elevated);border:1px solid var(--lv-line)}.pf-sync b,.pf-sync small{display:block;font-size:11px}.pf-sync small{color:var(--lv-muted);margin-top:3px}.pf-dot{width:9px;height:9px;border-radius:50%;background:#35ad74;box-shadow:0 0 0 5px rgba(53,173,116,.12)}.pf-signout{color:#b64f61;background:color-mix(in srgb,#e75f73 8%,var(--lv-surface))}.pf-main{min-width:0;overflow:auto;padding:30px}.pf-top{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:24px}.pf-top h1{font:900 clamp(30px,4vw,46px)/1.05 var(--lv-font-display,Manrope,system-ui,sans-serif);margin:4px 0;color:var(--lv-text)}.pf-top p{margin:7px 0 0;color:var(--lv-muted)}.pf-kicker{display:block;color:var(--lv-accent);font-size:11px;font-weight:950;letter-spacing:.12em;text-transform:uppercase}.pf-x{width:44px;height:44px;border:0;border-radius:50%;background:var(--lv-surface-soft);color:var(--lv-text);font-size:26px;cursor:pointer}.pf-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.pf-card{padding:22px;border:1px solid var(--lv-line);border-radius:24px;background:var(--lv-surface-elevated);box-shadow:0 12px 34px rgba(31,50,66,.06)}.pf-card h2,.pf-card h3{font-family:var(--lv-font-display,Manrope,system-ui,sans-serif);color:var(--lv-text);margin:7px 0}.pf-card p{color:var(--lv-muted);line-height:1.55}.pf-welcome{display:flex;justify-content:space-between;gap:18px;align-items:center;grid-column:1/-1;background:linear-gradient(135deg,color-mix(in srgb,var(--lv-accent) 13%,var(--lv-surface-elevated)),var(--lv-surface-elevated))}.pf-welcome>div:first-child{display:grid;grid-template-columns:auto 1fr;column-gap:16px;align-items:center}.pf-welcome .pf-avatar{grid-row:1/5}.pf-progress{min-width:240px}.pf-progress span{display:block;height:8px;border-radius:99px;background:var(--lv-surface-soft);overflow:hidden;margin:8px 0}.pf-progress i{display:block;height:100%;border-radius:inherit;background:var(--lv-accent)}.pf-progress button{border:0;background:transparent;color:var(--lv-accent);font-weight:900;padding:0;cursor:pointer}.pf-active{border-color:color-mix(in srgb,var(--card-accent) 34%,var(--lv-line));background:linear-gradient(145deg,color-mix(in srgb,var(--card-accent) 10%,var(--lv-surface-elevated)),var(--lv-surface-elevated))}.pf-actions,.pf-quick{display:flex;gap:9px;flex-wrap:wrap;margin-top:16px}.pf-actions button,.pf-quick button,.pf-trip-toolbar button,.pf-savebar button{border:1px solid var(--lv-line);border-radius:13px;padding:10px 13px;background:var(--lv-surface-soft);color:var(--lv-text);font-weight:850;cursor:pointer}.pf-actions button.primary,.pf-trip-toolbar button.primary,.pf-savebar button.primary{background:var(--lv-accent);border-color:transparent;color:var(--trip-accent-contrast,#fff)}.pf-quick{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.pf-quick button{text-align:left}.pf-statline{display:flex;gap:10px;margin-top:18px}.pf-statline span{flex:1;padding:12px;border-radius:15px;background:var(--lv-surface-soft);font-weight:950;color:var(--lv-text);text-align:center}.pf-statline small{display:block;color:var(--lv-muted);font-size:10px;margin-top:3px}.pf-form{display:grid;gap:16px}.pf-profile-head{display:flex;align-items:center;gap:16px;margin-bottom:18px}.pf-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.pf-fields label{display:grid;gap:7px;color:var(--lv-muted);font-size:12px;font-weight:900}.pf-fields input,.pf-fields select,.pf-rows select{width:100%;border:1px solid var(--lv-line);border-radius:14px;padding:12px 13px;background:var(--lv-input);color:var(--lv-text)}.pf-savebar{position:sticky;bottom:-30px;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:15px;border:1px solid var(--lv-line);border-radius:18px;background:color-mix(in srgb,var(--lv-surface) 94%,transparent);backdrop-filter:blur(18px)}.pf-savebar span{color:var(--lv-muted);font-size:12px}.pf-trip-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px}.pf-trip-toolbar div{display:flex;gap:9px}.pf-trip-toolbar small{color:var(--lv-muted)}.pf-trip-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.pf-trip-card{display:grid;grid-template-columns:90px minmax(0,1fr);gap:16px;padding:18px;border:1px solid var(--lv-line);border-radius:24px;background:var(--lv-surface-elevated)}.pf-trip-card.active{border-color:color-mix(in srgb,var(--card-accent) 45%,var(--lv-line));box-shadow:0 14px 38px color-mix(in srgb,var(--card-accent) 12%,transparent)}.pf-trip-card .pf-actions{grid-column:1/-1}.pf-trip-cover{height:90px;border-radius:22px;display:grid;place-items:center;font-size:34px;background:linear-gradient(145deg,color-mix(in srgb,var(--card-accent) 18%,var(--lv-surface)),var(--lv-surface-soft))}.pf-empty{grid-column:1/-1;text-align:center;padding:60px;color:var(--lv-muted)}.pf-segment{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:16px 0}.pf-segment input{position:absolute;opacity:0}.pf-segment span{display:block;text-align:center;padding:13px;border:1px solid var(--lv-line);border-radius:14px;background:var(--lv-surface-soft);font-weight:850}.pf-segment input:checked+span{border-color:var(--lv-accent);background:color-mix(in srgb,var(--lv-accent) 14%,var(--lv-surface-elevated));color:var(--lv-accent)}.pf-rows{display:grid}.pf-rows label{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:15px 0;border-bottom:1px solid var(--lv-line)}.pf-rows label:last-child{border:0}.pf-rows b,.pf-rows small{display:block}.pf-rows small{color:var(--lv-muted);margin-top:4px}.pf-rows input[type=checkbox]{width:22px;height:22px;accent-color:var(--lv-accent)}.pf-rows select{width:auto;min-width:150px}.reduce-motion *{scroll-behavior:auto!important;animation-duration:.001ms!important;transition-duration:.001ms!important}[data-density=compact] .pf-card{padding:17px}[data-density=compact] .pf-main{padding:22px}
@media(max-width:850px){.pf-overlay{padding:0}.pf-shell{width:100%;height:100dvh;border-radius:0;grid-template-columns:1fr}.pf-side{display:block;padding:12px 14px;border-right:0;border-bottom:1px solid var(--lv-line)}.pf-user{display:inline-flex}.pf-side nav{display:flex;overflow-x:auto;margin-top:10px}.pf-side nav button{flex:0 0 auto}.pf-sync,.pf-signout{display:none}.pf-main{padding:20px 16px 90px}.pf-grid,.pf-trip-grid{grid-template-columns:1fr}.pf-welcome{display:grid}.pf-progress{min-width:0}.pf-fields{grid-template-columns:1fr}.pf-trip-toolbar{align-items:flex-start;flex-direction:column}.pf-trip-card{grid-template-columns:72px minmax(0,1fr)}.pf-trip-cover{height:72px}.pf-top h1{font-size:34px}}
@media(max-width:520px){.pf-side nav button{padding:11px}.pf-side nav button span{width:auto;margin-right:5px}.pf-top{margin-bottom:16px}.pf-top p{font-size:13px}.pf-card{padding:18px;border-radius:20px}.pf-welcome>div:first-child{grid-template-columns:1fr}.pf-welcome .pf-avatar{grid-row:auto}.pf-quick,.pf-segment{grid-template-columns:1fr}.pf-rows label{align-items:flex-start}.pf-rows select{min-width:120px}.pf-savebar{bottom:-16px}.pf-trip-toolbar div{width:100%;display:grid;grid-template-columns:1fr 1fr}}

/* Dashboard personalization */
.pf-widget-list{display:grid;gap:10px;margin-top:16px}.pf-widget-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;padding:14px;border:1px solid var(--lv-line);border-radius:17px;background:var(--lv-surface-soft)}.pf-widget-row.is-off{opacity:.62}.pf-widget-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:var(--lv-surface-elevated);font-size:20px}.pf-widget-copy b,.pf-widget-copy small{display:block}.pf-widget-copy small{color:var(--lv-muted);margin-top:3px}.pf-widget-controls{display:flex;align-items:center;gap:7px}.pf-widget-controls button{width:38px;height:38px;padding:0;border:1px solid var(--lv-line);border-radius:12px;background:var(--lv-surface-elevated);color:var(--lv-text);font-weight:900;cursor:pointer}.pf-widget-controls button:disabled{opacity:.35;cursor:default}.pf-widget-controls input{width:22px;height:22px;accent-color:var(--lv-accent)}@media(max-width:600px){.pf-widget-row{grid-template-columns:auto minmax(0,1fr)}.pf-widget-controls{grid-column:1/-1;justify-content:flex-end}}
.pf-location-status{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;border:1px solid color-mix(in srgb,var(--trip-accent,#4ba4a8) 24%,#e8edf0);border-radius:18px;background:color-mix(in srgb,var(--trip-accent,#4ba4a8) 8%,#fff);grid-column:1/-1}
.pf-location-status>div{display:grid;gap:4px;min-width:0}.pf-location-status b{font-size:.92rem}.pf-location-status strong{font-size:.9rem;overflow-wrap:anywhere}.pf-location-status small{color:var(--muted,#71808f);line-height:1.45}.pf-location-status button{flex:0 0 auto;border:0;border-radius:999px;padding:10px 15px;background:color-mix(in srgb,var(--trip-accent,#4ba4a8) 18%,#fff);color:var(--text,#12324a);font-weight:700;cursor:pointer}.pf-location-status button:disabled{opacity:.65;cursor:wait}.pf-location-message{grid-column:1/-1;margin:-4px 4px 4px;color:var(--muted,#71808f);font-size:.82rem}
@media(max-width:620px){.pf-location-status{align-items:flex-start;flex-direction:column}.pf-location-status button{width:100%}}

/* Active travel color, not the legacy rose fallback. */
.pf-side{background:linear-gradient(160deg,var(--lv-surface-elevated),color-mix(in srgb,var(--trip-accent) 11%,var(--lv-surface)))}.pf-side nav button.active,.pf-kicker{color:color-mix(in srgb,var(--trip-accent) 78%,#203142)!important}.pf-side nav button.active{box-shadow:inset 3px 0 0 var(--trip-accent),0 10px 26px rgba(31,50,66,.08)}.pf-card,.pf-section{border-color:color-mix(in srgb,var(--trip-accent) 14%,var(--lv-line))}.pf-progress i,.pf-actions .primary{background:var(--trip-accent)!important;color:var(--trip-accent-contrast,#203142)!important}

/* Global preference center · v13.17.0 */
.pf-preference-center{display:grid;grid-template-columns:1.35fr .9fr;gap:18px}.pf-preference-hero{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:28px;overflow:hidden;background:linear-gradient(135deg,color-mix(in srgb,var(--lv-accent,#ee6f83) 13%,#fff),#fff 42%,#f4ecff)}.pf-preference-hero h2{font-size:clamp(26px,3vw,42px);letter-spacing:-.035em;margin:8px 0}.pf-preference-hero p{max-width:720px}.pf-preference-shortcut{display:flex;align-items:center;justify-content:space-between;gap:20px}.pf-preference-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.pf-preference-chips>span{display:inline-flex;align-items:center;gap:8px;padding:11px 14px;border-radius:999px;background:linear-gradient(135deg,color-mix(in srgb,var(--lv-accent,#ee6f83) 12%,#fff),#f6e9cf);box-shadow:0 10px 28px rgba(62,42,56,.07);font-size:13px;font-weight:700}.pf-preference-chips>span.tone-rose{background:linear-gradient(135deg,color-mix(in srgb,var(--lv-accent,#ee6f83) 16%,#fff),#f9d9e2)}.pf-preference-chips>span.tone-peach{background:linear-gradient(135deg,color-mix(in srgb,var(--lv-accent,#ee6f83) 14%,#fff),#ffe0c7)}.pf-preference-chips>span.tone-lavender{background:linear-gradient(135deg,color-mix(in srgb,var(--lv-accent,#ee6f83) 12%,#fff),#e7ddf7)}.pf-preference-note{background:linear-gradient(145deg,#fff,#fff9f2)}
@media(max-width:820px){.pf-preference-center{grid-template-columns:1fr}.pf-preference-hero,.pf-preference-shortcut{align-items:flex-start;flex-direction:column}.pf-preference-hero .primary,.pf-preference-shortcut .primary{width:100%}}

/* Global travel compass & layered preferences · Build 13.17.0 */
.pf-overlay {
  animation: pfBackdropIn .2s ease both;
}

.pf-shell {
  animation: pfCanvasIn .32s cubic-bezier(.2,.82,.24,1) both;
  transform-origin: center;
}

.pf-overlay.is-guided-suspended {
  visibility: hidden;
}

.pf-preference-center {
  grid-template-columns: 1fr;
  gap: 20px;
}

.pf-preference-hero {
  position: relative;
  isolation: isolate;
  min-height: 320px;
  padding: clamp(30px, 5vw, 62px);
  border-radius: clamp(28px, 4vw, 46px);
  background:
    radial-gradient(circle at 90% 18%, rgba(255,255,255,.92) 0 7%, transparent 26%),
    linear-gradient(132deg,
      color-mix(in srgb, var(--trip-accent, var(--lv-accent, #ee6f83)) 13%, var(--lv-surface-elevated, #fff)),
      color-mix(in srgb, #ffe5d6 35%, var(--lv-surface-elevated, #fff)) 47%,
      color-mix(in srgb, #e9dfff 43%, var(--lv-surface-elevated, #fff)));
  box-shadow: 0 26px 66px rgba(50,43,57,.08);
}

.pf-preference-hero::before,
.pf-preference-hero::after {
  content: "";
  position: absolute;
  z-index: -1;
  border-radius: 50%;
  pointer-events: none;
}

.pf-preference-hero::before {
  width: 240px;
  height: 240px;
  right: -70px;
  bottom: -105px;
  background: color-mix(in srgb, var(--trip-accent, var(--lv-accent, #ee6f83)) 10%, transparent);
}

.pf-preference-hero::after {
  width: 140px;
  height: 140px;
  left: 42%;
  top: -88px;
  background: rgba(255,255,255,.48);
}

.pf-preference-hero > div {
  position: relative;
  z-index: 1;
  max-width: 800px;
}

.pf-preference-hero h2 {
  max-width: 840px;
  margin: 12px 0 18px;
  color: var(--lv-text);
  font-size: clamp(2.35rem, 5vw, 4.9rem);
  font-weight: 680;
  letter-spacing: -.055em;
  line-height: .99;
  text-wrap: balance;
}

.pf-preference-hero p {
  max-width: 760px;
  margin: 0;
  color: var(--lv-muted);
  font-size: clamp(.98rem, 1.5vw, 1.12rem);
  line-height: 1.7;
}

.pf-preference-hero .primary {
  position: relative;
  z-index: 1;
  flex: 0 0 auto;
  min-height: 54px;
  padding: 14px 21px;
  border: 0;
  border-radius: 999px;
  background: var(--trip-accent, var(--lv-accent));
  color: var(--trip-accent-contrast, #fff);
  box-shadow: 0 16px 38px color-mix(in srgb, var(--trip-accent, var(--lv-accent)) 25%, transparent);
  transition: transform .2s ease, box-shadow .2s ease;
}

.pf-preference-hero .primary:hover,
.pf-preference-hero .primary:focus-visible {
  transform: translateY(-2px);
  box-shadow: 0 21px 46px color-mix(in srgb, var(--trip-accent, var(--lv-accent)) 30%, transparent);
  outline: none;
}

.pf-preference-layers {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: stretch;
  gap: 14px;
}

.pf-preference-layer {
  position: relative;
  overflow: hidden;
  min-height: 250px;
  display: grid;
  grid-template-columns: auto minmax(0,1fr);
  gap: 18px;
  padding: clamp(25px, 3.5vw, 38px);
  border-radius: 32px;
  transition: transform .22s ease, box-shadow .22s ease;
}

.pf-preference-layer:hover {
  transform: translateY(-3px);
  box-shadow: 0 22px 52px rgba(44,43,54,.08);
}

.pf-preference-layer.is-global {
  background: linear-gradient(145deg,
    color-mix(in srgb, var(--trip-accent, var(--lv-accent)) 10%, var(--lv-surface-elevated)),
    var(--lv-surface-elevated));
}

.pf-preference-layer.is-moment {
  background: linear-gradient(145deg,
    color-mix(in srgb, #eadfff 47%, var(--lv-surface-elevated)),
    color-mix(in srgb, #ffe7d9 22%, var(--lv-surface-elevated)));
}

.pf-preference-layer-number {
  display: grid;
  place-items: center;
  width: 50px;
  height: 50px;
  border-radius: 17px;
  background: color-mix(in srgb, var(--trip-accent, var(--lv-accent)) 11%, var(--lv-surface-elevated));
  color: color-mix(in srgb, var(--trip-accent, var(--lv-accent)) 80%, var(--lv-text));
  font-size: .74rem;
  font-weight: 950;
  letter-spacing: .08em;
}

.pf-preference-layer h3 {
  margin: 9px 0 12px;
  color: var(--lv-text);
  font-size: clamp(1.45rem, 2.7vw, 2.2rem);
  letter-spacing: -.035em;
  line-height: 1.08;
  text-wrap: balance;
}

.pf-preference-layer p {
  margin: 0;
  color: var(--lv-muted);
  line-height: 1.64;
}

.pf-preference-layer-join {
  align-self: center;
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: var(--lv-surface-elevated);
  color: var(--trip-accent, var(--lv-accent));
  box-shadow: 0 12px 30px rgba(42,44,54,.09);
  font-size: 1.4rem;
  font-weight: 500;
}

.pf-preference-saved {
  padding: clamp(26px, 4vw, 42px);
  border-radius: 34px;
}

.pf-preference-section-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
}

.pf-preference-section-head h3 {
  max-width: 760px;
  margin: 9px 0 0;
  color: var(--lv-text);
  font-size: clamp(1.55rem, 3vw, 2.45rem);
  letter-spacing: -.04em;
  line-height: 1.08;
}

.pf-preference-section-head small {
  flex: 0 0 auto;
  padding: 8px 12px;
  border: 1px solid color-mix(in srgb, #35ad74 18%, var(--lv-line));
  border-radius: 999px;
  background: color-mix(in srgb, #35ad74 7%, var(--lv-surface-elevated));
  color: color-mix(in srgb, #27895e 84%, var(--lv-text));
  font-size: .7rem;
  font-weight: 900;
}

.pf-preference-chips {
  gap: 11px;
  margin-top: 26px;
}

.pf-preference-chips > span {
  min-height: 46px;
  padding: 11px 15px;
  border: 1px solid rgba(255,255,255,.64);
  box-shadow: 0 9px 22px rgba(51,43,56,.055);
  transition: transform .18s ease, box-shadow .18s ease;
}

.pf-preference-chips > span:hover {
  transform: translateY(-2px);
  box-shadow: 0 13px 28px rgba(51,43,56,.08);
}

.pf-preference-note {
  display: flex;
  align-items: flex-start;
  gap: 18px;
  padding: clamp(24px, 3.5vw, 36px);
  border-radius: 30px;
  background: linear-gradient(145deg,
    color-mix(in srgb, #fff4e9 62%, var(--lv-surface-elevated)),
    color-mix(in srgb, #eee6ff 30%, var(--lv-surface-elevated)));
}

.pf-preference-note-icon {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 16px;
  background: var(--lv-surface-elevated);
  color: var(--trip-accent, var(--lv-accent));
  box-shadow: 0 10px 26px rgba(46,43,54,.07);
  font-size: 1.3rem;
}

.pf-preference-note h3 {
  margin: 1px 0 9px;
  color: var(--lv-text);
  font-size: 1.25rem;
}

.pf-preference-note p {
  margin: 0;
  color: var(--lv-muted);
  line-height: 1.65;
}

@keyframes pfBackdropIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes pfCanvasIn {
  from { opacity: 0; transform: translate3d(0,14px,0) scale(.988); }
  to { opacity: 1; transform: translate3d(0,0,0) scale(1); }
}

@media (max-width: 920px) {
  .pf-preference-hero {
    align-items: flex-start;
    flex-direction: column;
  }

  .pf-preference-hero .primary {
    width: 100%;
  }

  .pf-preference-layers {
    grid-template-columns: 1fr;
  }

  .pf-preference-layer-join {
    justify-self: center;
    margin-block: -7px;
  }
}

@media (max-width: 620px) {
  .pf-preference-hero {
    min-height: 0;
    padding: 30px 21px;
    border-radius: 29px;
  }

  .pf-preference-hero h2 {
    font-size: clamp(2.2rem, 12vw, 3.6rem);
  }

  .pf-preference-layer {
    grid-template-columns: 1fr;
    min-height: 0;
    padding: 25px 20px;
    border-radius: 27px;
  }

  .pf-preference-section-head {
    flex-direction: column;
  }

  .pf-preference-note {
    flex-direction: column;
  }
}

@media (prefers-reduced-motion: reduce) {
  .pf-overlay,
  .pf-shell,
  .pf-preference-layer,
  .pf-preference-hero .primary,
  .pf-preference-chips > span {
    animation: none !important;
    transition: none !important;
  }
}

/* Build 13.17.0 · Explicit review of Luvia Brain learning signals */
.pf-ai-learning {
  position: relative;
  overflow: hidden;
  padding: clamp(27px, 4vw, 43px);
  border-radius: 34px;
  background:
    radial-gradient(circle at 88% 10%, color-mix(in srgb, var(--trip-accent, var(--lv-accent)) 17%, transparent), transparent 30%),
    linear-gradient(145deg, color-mix(in srgb, #f3ecff 48%, var(--lv-surface-elevated)), color-mix(in srgb, #fff2e8 34%, var(--lv-surface-elevated)));
}
.pf-ai-learning::after {
  content: '';
  position: absolute;
  width: 220px;
  height: 220px;
  right: -85px;
  bottom: -120px;
  border-radius: 50%;
  border: 1px solid color-mix(in srgb, var(--trip-accent, var(--lv-accent)) 18%, transparent);
  pointer-events: none;
}
.pf-ai-learning-head {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
}
.pf-ai-learning-head h3 {
  margin: 9px 0 10px;
  color: var(--lv-text);
  font-size: clamp(1.55rem, 3vw, 2.4rem);
  line-height: 1.08;
  letter-spacing: -.04em;
}
.pf-ai-learning-head p {
  max-width: 760px;
  margin: 0;
  color: var(--lv-muted);
  line-height: 1.65;
}
.pf-ai-learning-count {
  flex: 0 0 auto;
  padding: 9px 13px;
  border: 1px solid color-mix(in srgb, var(--trip-accent, var(--lv-accent)) 16%, var(--lv-line));
  border-radius: 999px;
  background: color-mix(in srgb, var(--lv-surface-elevated) 88%, transparent);
  color: var(--lv-text);
  font-size: .72rem;
  font-weight: 900;
}
.pf-ai-learning-list {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 13px;
  margin-top: 27px;
}
.pf-ai-learning-signal {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 17px;
  padding: 21px;
  border: 1px solid color-mix(in srgb, var(--trip-accent, var(--lv-accent)) 11%, var(--lv-line));
  border-radius: 25px;
  background: color-mix(in srgb, var(--lv-surface-elevated) 92%, transparent);
  box-shadow: 0 14px 35px rgba(52, 45, 62, .055);
  transition: transform .2s ease, box-shadow .2s ease, opacity .2s ease;
}
.pf-ai-learning-signal:hover {
  transform: translateY(-2px);
  box-shadow: 0 19px 42px rgba(52, 45, 62, .08);
}
.pf-ai-learning-signal.is-busy {
  opacity: .55;
  pointer-events: none;
}
.pf-ai-learning-signal-icon {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 17px;
  background: color-mix(in srgb, var(--trip-accent, var(--lv-accent)) 12%, var(--lv-surface-elevated));
  color: var(--trip-accent, var(--lv-accent));
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.55);
  animation: pfAiSignalBreathe 3.8s ease-in-out infinite;
}
.pf-ai-learning-signal-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}
.pf-ai-learning-signal-top span {
  color: color-mix(in srgb, var(--trip-accent, var(--lv-accent)) 78%, var(--lv-text));
  font-size: .7rem;
  font-weight: 950;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.pf-ai-learning-signal-top small {
  color: var(--lv-muted);
  font-size: .7rem;
  font-weight: 800;
}
.pf-ai-learning-signal h4 {
  margin: 8px 0 7px;
  color: var(--lv-text);
  font-size: 1.18rem;
}
.pf-ai-learning-signal p {
  margin: 0;
  color: var(--lv-muted);
  line-height: 1.55;
}
.pf-ai-learning-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 16px;
}
.pf-ai-learning-actions button {
  min-height: 42px;
  padding: 10px 14px;
  border: 1px solid var(--lv-line);
  border-radius: 999px;
  background: var(--lv-surface-elevated);
  color: var(--lv-text);
  font-weight: 850;
  transition: transform .18s ease, box-shadow .18s ease;
}
.pf-ai-learning-actions button:hover,
.pf-ai-learning-actions button:focus-visible {
  transform: translateY(-1px);
  outline: none;
}
.pf-ai-learning-actions button.primary {
  border-color: transparent;
  background: var(--trip-accent, var(--lv-accent));
  color: var(--trip-accent-contrast, #fff);
  box-shadow: 0 10px 25px color-mix(in srgb, var(--trip-accent, var(--lv-accent)) 20%, transparent);
}
.pf-ai-learning-empty {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  gap: 17px;
  margin-top: 25px;
  padding: 21px;
  border: 1px dashed color-mix(in srgb, var(--trip-accent, var(--lv-accent)) 20%, var(--lv-line));
  border-radius: 25px;
  background: color-mix(in srgb, var(--lv-surface-elevated) 78%, transparent);
}
.pf-ai-learning-empty > span {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 48px;
  height: 48px;
  border-radius: 17px;
  background: var(--lv-surface-elevated);
  color: var(--trip-accent, var(--lv-accent));
  font-size: 1.2rem;
}
.pf-ai-learning-empty h4 { margin: 0 0 6px; color: var(--lv-text); }
.pf-ai-learning-empty p { margin: 0; color: var(--lv-muted); line-height: 1.55; }
.pf-ai-learning-empty.is-error > span { color: #b84e5d; }
.pf-ai-learning-orbit { animation: pfAiSignalBreathe 2.2s ease-in-out infinite; }
@keyframes pfAiSignalBreathe {
  0%, 100% { transform: translate3d(0,0,0) scale(1); }
  50% { transform: translate3d(0,-2px,0) scale(1.035); }
}
@media (max-width: 620px) {
  .pf-ai-learning-head,
  .pf-ai-learning-signal-top { flex-direction: column; align-items: flex-start; }
  .pf-ai-learning-signal { grid-template-columns: 1fr; }
  .pf-ai-learning-actions { display: grid; grid-template-columns: 1fr; }
  .pf-ai-learning-actions button { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .pf-ai-learning-signal,
  .pf-ai-learning-signal-icon,
  .pf-ai-learning-orbit,
  .pf-ai-learning-actions button { animation: none !important; transition: none !important; }
}
