/* StovePilot micro-component polish
   Final consistency pass for embedded tools that survived the broader redesign. */

/* Home week focus — gold selection, no green tab residue. */
.route-home .week-chip.selected{
  border-color:color-mix(in srgb,var(--brand-gold) 60%,var(--line));
  background:color-mix(in srgb,var(--brand-gold) 6%,transparent);
}
.route-home .week-chip.today.selected{
  background:var(--brand-ink);
  border-color:var(--brand-gold);
  outline:1px solid color-mix(in srgb,var(--brand-gold) 45%,transparent);
}
.route-home .day-focus-head strong{
  font-family:var(--sp-serif,Georgia,"Times New Roman",serif);
  font-weight:500;
}

/* RoutePilot — integrated itinerary, not a card inside the diary. */
.route-diary .routepilot-bar{
  margin:3px 0 13px;
  padding:11px 0;
  border:0;
  border-top:1px solid var(--sp-shell-line,var(--line));
  border-bottom:1px solid var(--sp-shell-line,var(--line));
  border-radius:0;
  background:transparent;
}
.route-diary .routepilot-bar strong{
  font-family:var(--sp-serif,Georgia,"Times New Roman",serif);
  font-weight:500;
}
.route-diary .routepilot-button{
  border-radius:6px;
  border-color:#1a1b1b;
  background:#1a1b1b;
  font-weight:600;
}
.route-diary .routepilot-result.show{
  padding:16px 0;
  border:0;
  border-bottom:1px solid var(--sp-shell-line,var(--line));
  border-radius:0;
  background:transparent;
}
.route-diary .routepilot-head strong{
  font-family:var(--sp-serif,Georgia,"Times New Roman",serif);
  font-weight:500;
}
.route-diary .routepilot-list{gap:0}
.route-diary .routepilot-list li{
  padding:11px 0;
  border-bottom:1px solid var(--sp-shell-line,var(--line));
  border-radius:0;
  background:transparent;
}
.route-diary .routepilot-list li b{
  background:color-mix(in srgb,var(--brand-gold) 11%,var(--card));
  color:#7b6439;
}
.route-diary .routepilot-list li.locked{outline:0}
.route-diary .routepilot-list li.locked em{color:#8a7047}

/* Customer link — legible and document-like. */
.route-jobs .customer-link-head strong{
  font-family:var(--sp-serif,Georgia,"Times New Roman",serif);
  font-weight:500;
}
.route-jobs .customer-link-head>div>span,
.route-jobs .customer-link-copy,
.route-jobs .customer-link-issued>small{
  font-size:.8rem;
  line-height:1.5;
}
.route-jobs .customer-link-state{
  padding:0;
  border-radius:0;
  background:transparent!important;
  color:#737873!important;
  font-size:.72rem;
  font-weight:600;
}
.route-jobs .customer-link-state::before{
  content:"";
  display:inline-block;
  width:6px;
  height:6px;
  margin-right:6px;
  border-radius:50%;
  background:#b6b7b2;
}
.route-jobs .customer-link-state.live::before{background:#668a78}
.route-jobs .customer-link-meta span{
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:#777c77;
  font-size:.72rem;
}
.route-jobs .customer-link-issued{
  padding:13px 0 3px;
  border:0;
  border-top:1px solid var(--sp-shell-line,var(--line));
  border-radius:0;
  background:transparent;
}
.route-jobs .customer-link-issued>span{
  color:#8a7047;
  font-size:.7rem;
  font-weight:700;
}
.route-jobs .customer-link-url input{
  border-radius:7px;
  background:#fbfaf7;
  font-size:.82rem;
}

/* Appliance entry — same field language as New Job. */
.route-jobs .job-appliance-entry-grid input,
.route-jobs .job-appliance-name input{
  border-radius:7px;
  background:#fbfaf7;
}
.route-jobs .job-appliance-name>span{
  font-family:var(--sp-serif,Georgia,"Times New Roman",serif);
  font-weight:500;
}
.route-jobs .job-appliance-name input:focus{
  outline:0;
  border-color:var(--brand-gold);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-gold) 10%,transparent);
}

/* Customer stove preferences — no nested cards. */
.route-jobs .customer-preference-intro{
  border-radius:0 7px 7px 0;
  background:color-mix(in srgb,var(--brand-gold) 4%,var(--card));
}
.route-jobs .customer-preference-intro strong,
.route-jobs .customer-preference-item strong{
  font-family:var(--sp-serif,Georgia,"Times New Roman",serif);
  font-weight:500;
}
.route-jobs .customer-preference-list{gap:0}
.route-jobs .customer-preference-item{
  padding:13px 2px;
  border:0;
  border-bottom:1px solid var(--sp-shell-line,var(--line));
  border-radius:0;
  background:transparent;
}
.route-jobs .customer-preference-item b{color:#8a7047}

/* Catalogue technical / service drawers — readable, restrained. */
.route-catalogue .stove-technical,
.route-catalogue .stove-service-resources{
  border-radius:7px;
  border-color:color-mix(in srgb,var(--line) 86%,transparent);
  background:#fbfaf7;
}
.route-catalogue .stove-technical summary>span,
.route-catalogue .stove-service-resources summary>span{
  font-family:var(--sp-serif,Georgia,"Times New Roman",serif);
  font-size:.8rem;
  font-weight:500;
}
.route-catalogue .stove-technical summary>b,
.route-catalogue .stove-service-resources summary>b{
  padding:0;
  border-radius:0;
  background:transparent;
  color:#7b7f7a;
  font-size:.68rem;
  font-weight:600;
}
.route-catalogue .stove-service-resources summary>b{color:#6b806f}
.route-catalogue .stove-technical-grid>div,
.route-catalogue .stove-service-resource{
  border-radius:6px;
  background:#fff;
}
.route-catalogue .stove-technical-grid span,
.route-catalogue .stove-technical-note>span,
.route-catalogue .stove-service-resource span{
  font-size:.64rem;
}
.route-catalogue .stove-technical-grid strong,
.route-catalogue .stove-service-resource strong{
  font-size:.76rem;
}
.route-catalogue .stove-technical-note{background:#f7f3e9}

/* Small shared movement */
.route-diary .routepilot-list li,
.route-jobs .customer-preference-item,
.route-catalogue .stove-technical,
.route-catalogue .stove-service-resources{
  transition:transform var(--sp-motion-base,220ms) var(--sp-motion-ease,ease),border-color 220ms ease,background-color 220ms ease;
}
@media(hover:hover) and (pointer:fine){
  .route-diary .routepilot-list li:hover,
  .route-jobs .customer-preference-item:hover{transform:translate3d(2px,0,0)}
}

/* Public address lookup follows the premium intake language. */
.intake-shell .address-finder{
  padding:13px;
  border-radius:7px;
  border-color:color-mix(in srgb,var(--public-accent,#9a7450) 26%,var(--public-line,#d9ded6));
  background:color-mix(in srgb,var(--public-accent,#9a7450) 4%,var(--public-paper,#f7f8f5));
}
.intake-shell .address-finder-row button{
  border-radius:6px;
  background:var(--public-panel,#202725);
  border-color:var(--public-panel,#202725);
}
