/* DOORS — paper, pigment and deep teal. The movement-session stylesheet keeps
   sole ownership of active practice screens. */
:root {
  --doors-teal: #254f50;
  --doors-rust: #a64436;
  --doors-ochre: #c4933d;
  --doors-paper: #f1eadb;
  --doors-card: #fcf7ec;
}

body:not(.insesh) {
  --bg: #f1eadb;
  --ink: #272320;
  --accent: #a64436;
  --muted: #625a50;
  --card: #fcf7ec;
  --line: #cdbda4;
  --tint-cream: #ead9b8;
  --tint-mint: #cbd9cc;
  --tint-lav: #ded0bf;
  background: var(--doors-paper);
  color: var(--ink);
  -webkit-font-smoothing: antialiased;
}
body:not(.insesh) a { color: var(--doors-rust); }
body:not(.insesh) #side {
  background: var(--doors-teal);
  color: #f8f0df;
}
body:not(.insesh) .sidemark {
  color: #f8f0df;
  border-color: rgba(248,240,223,.66);
}
body:not(.insesh) .sidemark em,
body:not(.insesh) .mobmark em { color: #d9a44c; }
body:not(.insesh) .snav { color: #f8f0df; }
body:not(.insesh) .snav:hover,
body:not(.insesh) .snav.on { background: rgba(248,240,223,.15); color: #fffaf0; }
body:not(.insesh) .sidepromo { background: #a64436; color: #fff8e9; }
body:not(.insesh) #mobiletop {
  background: var(--doors-teal);
  border-bottom: 1px solid rgba(255,255,255,.12);
}
body:not(.insesh) .mobmark {
  color: #f8f0df;
  border-color: rgba(248,240,223,.66);
}
body:not(.insesh) .burger span { background: #f8f0df; }
body:not(.insesh) #mobmenu { background: var(--doors-teal); }
body:not(.insesh) .mm-links button { color: #f8f0df; }
body:not(.insesh) .mobauth { background: rgba(248,240,223,.15); }
body:not(.insesh) #tabbar {
  background: rgba(37,79,80,.94);
  border-top: 1px solid rgba(255,255,255,.12);
}
body:not(.insesh) .tbtn { border-color: rgba(248,240,223,.48); color: #fff8e9; }
body:not(.insesh) .tbtn.on { background: rgba(248,240,223,.17); }
body:not(.insesh) #hero {
  background: var(--doors-teal);
  color: #fff8e9;
}
body:not(.insesh) .mainauth {
  border-color: var(--doors-teal);
  color: var(--doors-teal);
}
body:not(.insesh) .mainauth:hover { background: var(--doors-teal); color: #fff8e9; }
body:not(.insesh) .mainauth.avatarbtn { background: var(--doors-rust); color: #fff8e9; }
body:not(.insesh) .mainauth.avatarbtn:hover { background: #76372f; }
body:not(.insesh) .doorrow.cream { background: #ead9b8; }
body:not(.insesh) .doorrow.mint { background: #cbd9cc; }
body:not(.insesh) .doorrow.lav { background: #ded0bf; }
body:not(.insesh) .doorrow.d-green { background: #426d58; }
body:not(.insesh) .doorrow.d-purple { background: #725d68; }
body:not(.insesh) .doorrow.d-blue { background: #386569; }
body:not(.insesh) .doorrow.d-red { background: #a64436; }
body:not(.insesh) .door:nth-child(1) .leaf { background: #a64436; }
body:not(.insesh) .door:nth-child(2) .leaf { background: #c4933d; }
body:not(.insesh) .door:nth-child(3) .leaf { background: #315f60; }
body:not(.insesh) .card,
body:not(.insesh) .wcardw,
body:not(.insesh) .pitem,
body:not(.insesh) .plat,
body:not(.insesh) .gradecard {
  background-color: var(--doors-card);
  border-color: var(--line);
  box-shadow: 0 2px 8px rgba(47,39,29,.035);
}
body:not(.insesh) .card.cream { background: #ead9b8; }
body:not(.insesh) .card.mint { background: #cbd9cc; }
body:not(.insesh) .card.lav { background: #ded0bf; }
body:not(.insesh) .bigbtn { background: var(--doors-teal); color: #fff8e9; }
body:not(.insesh) .bigbtn.blue { background: var(--doors-rust); color: #fff8e9; }
body:not(.insesh) .bigbtn.ghost {
  color: var(--doors-teal);
  border-color: var(--doors-teal);
  background: transparent;
}
body:not(.insesh) .bigbtn:hover { filter: brightness(.94); }
body:not(.insesh) .snav:focus-visible,
body:not(.insesh) button:focus-visible,
body:not(.insesh) a:focus-visible,
body:not(.insesh) input:focus-visible,
body:not(.insesh) textarea:focus-visible,
body:not(.insesh) select:focus-visible {
  outline: 3px solid #c4933d;
  outline-offset: 3px;
}
body:not(.insesh) #priceband { color: var(--ink); }
body:not(.insesh) #priceband .pb-line b { color: var(--doors-rust); }
body:not(.insesh) .postband {
  background: var(--doors-card);
  border-color: var(--doors-rust);
}
body:not(.insesh) .wcard,
body:not(.insesh) .tsinfo {
  background: var(--doors-card);
  color: var(--ink);
  box-shadow: 0 16px 42px rgba(47,39,29,.16);
}
body:not(.insesh) .overlay { background: rgba(25,47,46,.82); }
body:not(.insesh) .ccf,
body:not(.insesh) .note,
body:not(.insesh) .homechk input {
  background: var(--doors-card);
  border-color: var(--line);
  color: var(--ink);
}
body:not(.insesh) .rtitle,
body:not(.insesh) h1.hero { color: var(--ink); }
body:not(.insesh) .rtitle em,
body:not(.insesh) h1.hero em { color: var(--doors-rust); }
body:not(.insesh) .rh,
body:not(.insesh) .doorno,
body:not(.insesh) .vidtag { color: var(--doors-rust); }
body:not(.insesh) .hubbtn,
body:not(.insesh) .startbtn {
  background: var(--doors-card);
  border-color: var(--line);
  color: var(--ink);
}
body:not(.insesh) .hubbtn:hover,
body:not(.insesh) .startbtn:hover { border-color: var(--doors-rust); }
body:not(.insesh) .hubbtn.hubbig.cds,
body:not(.insesh) .hubbtn.hubbig.ags {
  background: var(--doors-teal);
  border-color: var(--doors-teal);
  color: #fff8e9;
}
body:not(.insesh) .hubbtn.hubbig.ags { background: #426d58; border-color: #426d58; }
body:not(.insesh) .hubbtn.hubbig:hover { filter: brightness(.96); color: #fff8e9; }
body:not(.insesh) .searchrow input { background: var(--doors-card); }
body:not(.insesh) .savedchip { background: var(--doors-card); }
body:not(.insesh) .tierh { color: var(--doors-teal); }
body:not(.insesh) .b-low { background: #e9e2d4; }
body:not(.insesh) .pbadge { color: var(--ink); }
body:not(.insesh) .b-invite { background: var(--doors-teal); color: #fff8e9; }
body:not(.insesh) .swcard {
  background: #f8f0df;
  border-color: var(--line);
  box-shadow: 0 8px 24px rgba(47,39,29,.075);
}
body:not(.insesh) .swno { background: #fbf6eb; border-color: #a64436; color: #963d32; }
body:not(.insesh) .swyes { background: #426d58; border-color: #426d58; }
body:not(.insesh) .tpcard { background: var(--doors-card); }
body:not(.insesh) .offmem,
body:not(.insesh) .offstat { background: var(--doors-card); }
body:not(.insesh) .cdface { background: #ded0bf; }
body:not(.insesh) .rcallout,
body:not(.insesh) .cdnext { background: #ead9b8; }
body:not(.insesh) .privnote { background: #cbd9cc; }
body:not(.insesh) .ri,
body:not(.insesh) .swtier { background: #ded0bf; }
body:not(.insesh) .gradecard b { color: var(--doors-teal); }
body:not(.insesh) .ptile { background: var(--doors-teal) !important; }
body:not(.insesh) .coach-card {
  border-color: #b9a986;
  background: #f7efdd;
  text-align: left;
}
body:not(.insesh) .coach-kicker {
  display: block;
  margin: 0 0 8px;
  color: var(--doors-rust);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
}
body:not(.insesh) .joshline {
  border-left: 3px solid var(--doors-ochre);
  padding: 8px 0 8px 12px;
}
body:not(.insesh) .doors-art-note {
  display: block;
  box-sizing: border-box;
  width: 100%;
  max-width: 760px;
  height: auto;
  min-height: 0;
  margin: 18px 0 20px;
  padding: 16px 18px;
  border: 1px solid #cdbda4;
  border-radius: 15px;
  background: rgba(252,247,236,.78);
}
body:not(.insesh) .doors-art-note .doors-note-copy {
  min-width: 0;
  overflow-wrap: break-word;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
}
body:not(.insesh) .doors-art-note strong {
  display: block;
  margin-bottom: 3px;
  color: var(--ink);
  font-family: 'PatchDisplay','NHD',serif;
  font-size: 21px;
  font-weight: 400;
  line-height: 1.1;
}
body:not(.insesh) .doors-art-note .art-kicker {
  display: block;
  margin-bottom: 5px;
  color: var(--doors-rust);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
}
body:not(.insesh) .doors-inline-art-wide {
  max-width: 650px;
  margin: 14px 0 22px;
  background: #ead9b8;
}
body:not(.insesh) .page.active { animation: doors-arrive .24s ease both; }
@keyframes doors-arrive {
  from { opacity: .78; transform: translateY(4px); }
  to { opacity: 1; transform: translateY(0); }
}
@media (max-width: 900px) {
  body:not(.insesh) #tabbar { padding-bottom: calc(12px + env(safe-area-inset-bottom)); }
  body:not(.insesh) #page-home .doors { border-top: 1px solid rgba(39,35,32,.10); }
  body:not(.insesh) .doors-art-note { margin: 14px 0 18px; padding: 14px 16px; }
  body:not(.insesh) .doors-art-note strong { font-size: 19px; }
}
@media (prefers-reduced-motion: reduce) {
  body:not(.insesh) .page.active { animation: none; }
  body:not(.insesh) .doorrow,
  body:not(.insesh) .hubbtn,
  body:not(.insesh) .startbtn,
  body:not(.insesh) .bigbtn { transition: none; }
}
