/* Approved Wings sewn-linen material layer. Load after tokens.css.
   Add .w-material to a theme container. All decoration is CSS and inert. */
.w-material {
  --w-active-fill: #F1E3D1;
  --w-thread: rgba(120,135,119,.52);
  --w-weave: rgba(53,72,61,.014);
  --w-lift: rgba(16,44,44,.12);
  --w-button-thread: rgba(53,72,61,.27);
  /* Round 20 hand-sewn revision: paper items on a linen frame, pressable buttons. */
  --w-paper: #FFFCF4;
  --w-paper-edge: rgba(122,94,58,.16);
  --w-paper-shadow: 0 0 0 1px var(--w-paper-edge), 0 2px 0 var(--w-paper-edge), 0 6px 10px -8px rgba(92,70,40,.30);
  --w-panel-edge: rgba(122,94,58,.18);
  --w-panel-shadow: 0 18px 40px -18px rgba(26,38,28,.55), 0 3px 0 rgba(16,44,44,.10), inset 0 0 0 5px rgba(122,94,58,.055);
  --w-lamp: none;
  --w-button-edge: rgba(122,94,58,.30);
  --w-lip: rgba(96,74,46,.26);
  --w-primary-top: #F2DCC1;
  --w-primary-bottom: #E7C6A1;
  --w-primary-lip: #BF936A;
  --w-tape: #F2E6CC;
  --w-tape-tick: rgba(112,82,50,.42);
  --w-tape-fill: #DDAE80;
}
.w-material[data-theme="dark"] {
  --w-active-fill: var(--w-selected);
  --w-thread: rgba(147,168,157,.52);
  --w-weave: rgba(238,236,221,.014);
  --w-lift: rgba(0,15,17,.22);
  --w-button-thread: rgba(32,61,64,.27);
  --w-paper: #2C4B49;
  --w-paper-edge: rgba(0,0,0,.28);
  --w-paper-shadow: 0 0 0 1px var(--w-paper-edge), 0 2px 0 var(--w-paper-edge), 0 6px 10px -8px rgba(0,8,10,.55);
  --w-panel-edge: rgba(0,0,0,.30);
  --w-panel-shadow: 0 18px 40px -16px rgba(0,0,0,.7), 0 3px 0 rgba(0,15,17,.25), inset 0 0 0 5px rgba(0,0,0,.10);
  /* Evening panels catch a faint lamplight at the top. */
  --w-lamp: radial-gradient(120% 55% at 50% -8%, rgba(255,207,150,.10), transparent 70%);
  /* A pale thread edge: a dark one vanished against evening fills. */
  --w-button-edge: rgba(147,168,157,.42);
  --w-lip: rgba(0,8,10,.42);
  --w-primary-top: #EFC7A2;
  --w-primary-bottom: #E2B088;
  --w-primary-lip: #9C7150;
  --w-tape: #3A5856;
  --w-tape-tick: rgba(238,220,190,.35);
  --w-tape-fill: #C9976D;
}
.w-material .w-sewn {
  position: relative;
  isolation: isolate;
  background-color: var(--w-canvas);
  background-image: var(--w-lamp),repeating-linear-gradient(0deg,var(--w-weave) 0 1px,transparent 1px 4px),repeating-linear-gradient(90deg,var(--w-weave) 0 1px,transparent 1px 5px);
  box-shadow: 0 3px 0 var(--w-lift),inset 0 1px 0 rgba(255,255,255,.08);
}
/* A running stitch in real thread: whole round-capped stitches via a nine-slice
   image (design/build-stitches.py). Its centreline sits 8.5px inside the edge;
   keep painted controls at least 10px from a sewn panel's edge. */
.w-material .w-sewn::after {
  content: "";
  position: absolute;
  pointer-events: none;
  inset: 6px;
  border: 10px solid transparent;
  border-image: var(--w-seam) 10 / 10px round;
}
.w-material .w-sewn > * { position: relative; z-index: 1; }
.w-material .w-card { box-shadow: 0 2px 0 var(--w-lift); }
/* Buttons sit on a lip that compresses when pressed. translate composes with
   any positioning transform a button already has. It is not animated: on iOS an
   animating translate composites the panel, and iOS then stops drawing the sewn
   seam's border-image until the animation ends, so the seam flickered on every press. */
.w-material .w-button:not(.w-button--quiet) {
  position: relative;
  box-shadow: 0 3px 0 var(--w-lip),inset 0 1px 0 rgba(255,255,255,.45);
  transition: background-color var(--w-duration-control) var(--w-ease),box-shadow var(--w-duration-press) var(--w-ease);
}
.w-material .w-button--secondary { border-color: var(--w-button-edge); }
.w-material .w-button:not(.w-button--quiet):not(.w-button--secondary):not(.w-button--danger):not(:disabled) {
  background-image: linear-gradient(var(--w-primary-top),var(--w-primary-bottom));
  border-color: color-mix(in srgb,var(--w-primary-lip) 80%,transparent);
  box-shadow: 0 3px 0 var(--w-primary-lip),inset 0 1px 0 rgba(255,255,255,.55);
}
.w-material[data-theme="dark"] .w-button:not(.w-button--quiet) { box-shadow: 0 3px 0 var(--w-lip),inset 0 1px 0 rgba(255,255,255,.07); }
.w-material[data-theme="dark"] .w-button:not(.w-button--quiet):not(.w-button--secondary):not(.w-button--danger):not(:disabled) { box-shadow: 0 3px 0 var(--w-primary-lip),inset 0 1px 0 rgba(255,255,255,.4); }
.w-material .w-button:not(.w-button--quiet):active:not(:disabled) {
  translate: 0 2px;
  box-shadow: 0 1px 0 var(--w-lip),inset 0 1px 2px rgba(0,0,0,.12);
}
.w-material .w-button:disabled { box-shadow: none; background-image: none; }
.w-material .w-input { box-shadow: inset 0 2px 1px var(--w-lift); }
.w-material .w-chip {
  position: relative;
  box-shadow: 0 2px 0 var(--w-lift),inset 0 1px 0 rgba(255,255,255,.18);
  transition: box-shadow var(--w-duration-press) var(--w-ease),background-color var(--w-duration-control) var(--w-ease);
}
.w-material .w-chip::after {
  content: "";
  position: absolute;
  inset: 4px;
  border: 1px dashed var(--w-thread);
  border-radius: inherit;
  opacity: .65;
  pointer-events: none;
}
.w-material .w-chip[aria-pressed="true"] { background: var(--w-active-fill); }
.w-material .w-chip[aria-pressed="true"], .w-material .w-chip:active {
  box-shadow: inset 0 1px 2px var(--w-lift);
}
.w-material .w-nav {
  position: relative;
  padding: 8px;
  border: 1px solid var(--w-divider);
  box-shadow: 0 2px 0 var(--w-lift),inset 0 1px 0 rgba(255,255,255,.12);
}
.w-material .w-nav::after {
  content: "";
  position: absolute;
  inset: 4px;
  border: 1px dashed var(--w-thread);
  border-radius: 13px;
  opacity: .65;
  pointer-events: none;
}
.w-material .w-nav__item { position: relative; z-index: 1; }
.w-material .w-nav__item[aria-current="page"] {
  background: var(--w-active-fill);
  box-shadow: 0 2px 0 var(--w-lift),0 -1px 0 rgba(255,255,255,.18);
}
.w-material .w-nav__item[aria-current="page"]::after {
  content: "";
  position: absolute;
  height: 2px;
  bottom: 2px;
  inset-inline: 20%;
  background: var(--w-focus);
  border-radius: 2px;
  pointer-events: none;
}
@media (forced-colors: active) {
  .w-material .w-sewn { background-image: none; }
  .w-material .w-sewn::after, .w-material .w-button::after,
  .w-material .w-chip::after, .w-material .w-nav::after { display: none; }
}


/* Approved menu title patch (Round 11, option B). */
.w-menu-heading { text-align: center; padding: 0 40px 14px; }
.w-material .w-title-patch {
  position: relative; display: inline-block; max-width: 100%; margin: 0;
  padding: 10px 18px; border-radius: 6px;
  background: var(--w-active-fill) repeating-linear-gradient(0deg,rgba(255,255,255,.12) 0 1px,transparent 1px 3px);
  color: var(--w-text);
  box-shadow: 0 2px 0 var(--w-lift), 0 4px 8px -5px rgba(60,45,25,.35);
  font: 500 25px/1.22 var(--w-font-heading); letter-spacing: -.025em;
  text-wrap: balance; overflow-wrap: anywhere;
}
.w-material[data-theme="dark"] .w-title-patch { background-image: repeating-linear-gradient(0deg,rgba(255,255,255,.035) 0 1px,transparent 1px 3px); }
.w-material .w-title-patch::after {
  content: ""; position: absolute; inset: 3px; pointer-events: none;
  border: 8px solid transparent; border-image: var(--w-patch-seam) 8 / 8px round;
}
@media (max-width: 600px) { .w-material .w-title-patch { font-size: 24px; } }
@media (forced-colors: active) { .w-material .w-title-patch::after { display: none; } }

/* Generated by design/build-stitches.py: begin */
.w-material { --w-seam: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20width%3D%2730%27%20height%3D%2730%27%3E%3Cg%20fill%3D%27none%27%20stroke%3D%27rgba%28160%2C118%2C80%2C.62%29%27%20stroke-width%3D%271.5%27%20stroke-linecap%3D%27round%27%3E%3Cpath%20d%3D%27M12.75%202.5h4.5M12.75%2027.5h4.5M2.5%2012.75v4.5M27.5%2012.75v4.5%27/%3E%3Cpath%20d%3D%27M3.37%206.50A7.5%207.5%200%200%201%206.50%203.37%27/%3E%3Cpath%20d%3D%27M23.50%203.37A7.5%207.5%200%200%201%2026.63%206.50%27/%3E%3Cpath%20d%3D%27M26.63%2023.50A7.5%207.5%200%200%201%2023.50%2026.63%27/%3E%3Cpath%20d%3D%27M6.50%2026.63A7.5%207.5%200%200%201%203.37%2023.50%27/%3E%3C/g%3E%3C/svg%3E"); --w-patch-seam: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20width%3D%2724%27%20height%3D%2724%27%3E%3Cg%20fill%3D%27none%27%20stroke%3D%27rgba%28160%2C118%2C80%2C.55%29%27%20stroke-width%3D%271.3%27%20stroke-linecap%3D%27round%27%3E%3Cpath%20d%3D%27M10.2%202h3.6M10.2%2022h3.6M2%2010.2v3.6M22%2010.2v3.6%27/%3E%3Cpath%20d%3D%27M2.69%205.20A6%206%200%200%201%205.20%202.69%27/%3E%3Cpath%20d%3D%27M18.80%202.69A6%206%200%200%201%2021.31%205.20%27/%3E%3Cpath%20d%3D%27M21.31%2018.80A6%206%200%200%201%2018.80%2021.31%27/%3E%3Cpath%20d%3D%27M5.20%2021.31A6%206%200%200%201%202.69%2018.80%27/%3E%3C/g%3E%3C/svg%3E"); }
.w-material[data-theme="dark"] { --w-seam: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20width%3D%2730%27%20height%3D%2730%27%3E%3Cg%20fill%3D%27none%27%20stroke%3D%27rgba%28226%2C186%2C150%2C.48%29%27%20stroke-width%3D%271.5%27%20stroke-linecap%3D%27round%27%3E%3Cpath%20d%3D%27M12.75%202.5h4.5M12.75%2027.5h4.5M2.5%2012.75v4.5M27.5%2012.75v4.5%27/%3E%3Cpath%20d%3D%27M3.37%206.50A7.5%207.5%200%200%201%206.50%203.37%27/%3E%3Cpath%20d%3D%27M23.50%203.37A7.5%207.5%200%200%201%2026.63%206.50%27/%3E%3Cpath%20d%3D%27M26.63%2023.50A7.5%207.5%200%200%201%2023.50%2026.63%27/%3E%3Cpath%20d%3D%27M6.50%2026.63A7.5%207.5%200%200%201%203.37%2023.50%27/%3E%3C/g%3E%3C/svg%3E"); --w-patch-seam: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20width%3D%2724%27%20height%3D%2724%27%3E%3Cg%20fill%3D%27none%27%20stroke%3D%27rgba%28226%2C186%2C150%2C.5%29%27%20stroke-width%3D%271.3%27%20stroke-linecap%3D%27round%27%3E%3Cpath%20d%3D%27M10.2%202h3.6M10.2%2022h3.6M2%2010.2v3.6M22%2010.2v3.6%27/%3E%3Cpath%20d%3D%27M2.69%205.20A6%206%200%200%201%205.20%202.69%27/%3E%3Cpath%20d%3D%27M18.80%202.69A6%206%200%200%201%2021.31%205.20%27/%3E%3Cpath%20d%3D%27M21.31%2018.80A6%206%200%200%201%2018.80%2021.31%27/%3E%3Cpath%20d%3D%27M5.20%2021.31A6%206%200%200%201%202.69%2018.80%27/%3E%3C/g%3E%3C/svg%3E"); }
/* Generated by design/build-stitches.py: end */
