
:root{--bg:#05080d;--panel:#0b1119;--line:#2c3948;--text:#fff;--muted:#9ba8b8;--gold:#f4b928;--green:#65e66f;--blue:#6dbdff;--purple:#db7bff;--red:#ff6978}
*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:radial-gradient(circle at 50% -20%,#10243a 0,#05080d 40%);color:#fff}a{color:inherit;text-decoration:none}button,input{font:inherit}
.topbar{min-height:76px;padding:0 30px;display:flex;align-items:center;border-bottom:1px solid #17202b;background:#05080df2;position:sticky;top:0;z-index:10}.brand{font-size:22px;font-weight:950;margin-right:42px}.brand b{color:var(--gold);margin-left:4px}nav{display:flex;gap:28px;flex:1}nav a{color:#d5dde7;padding:27px 0 23px;border-bottom:3px solid transparent}nav a.active{color:#fff;border-color:var(--gold)}.avatar{width:40px;height:40px;border:1px solid #4e5d6d;border-radius:50%;display:grid;place-items:center}
.page{max-width:1160px;margin:auto;padding:54px 26px 90px}.narrow{max-width:900px}.eyebrow{color:var(--gold);font-size:12px;font-weight:900;letter-spacing:.18em}.hero h1,.page h1{font-size:54px;line-height:1.04;margin:14px 0}.hero p{color:var(--muted);font-size:18px}.search-shell{display:flex;gap:10px;background:#0a1018;border:1px solid #2b3948;border-radius:18px;padding:8px;max-width:800px;margin-top:32px}.search-shell input{flex:1;background:transparent;border:0;outline:0;color:#fff;font-size:18px;padding:14px}.search-shell button{border:0;border-radius:13px;padding:0 26px;background:linear-gradient(#ffd45a,#e7a413);font-weight:900}.pills{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.pill{border:1px solid #293747;background:#0b121b;color:#d4dce6;border-radius:999px;padding:10px 15px}.pill.active{color:#ffd45a;border-color:#8a681a;background:#18150d}
.results-shell{margin-top:28px;background:#09101acc;border:1px solid #202b38;border-radius:24px;padding:24px}.results-head{display:flex;justify-content:space-between;align-items:end}.count{color:var(--muted)}.result-row{display:grid;grid-template-columns:1fr auto 20px;gap:20px;align-items:center;padding:18px 16px;border-top:1px solid #202b38;border-radius:14px}.result-row:hover{background:#111a24}.result-row strong{display:block;font-size:18px}.result-row span{display:block;color:var(--muted);font-size:13px}.availability{font-size:13px}.availability.yes{color:var(--green)}.availability.no{color:var(--red)}
.profile-page{max-width:1020px;margin:auto;padding:42px 26px 90px}.back{color:#bec9d5}.profile-card{margin-top:22px;border:1px solid #647180;border-radius:32px;padding:30px;background:linear-gradient(145deg,#1a2430,#060a10 70%);box-shadow:inset 0 1px #fff3,0 28px 90px #0008}.profile-top{display:flex;justify-content:space-between;align-items:center;gap:18px}.profile-top h1{font-size:54px;margin:0}.sport-label{color:var(--gold);font-weight:900;letter-spacing:.18em;font-size:12px}.address-card{display:grid;grid-template-columns:1fr 240px;gap:24px;margin-top:26px;border:1px solid #687687;border-radius:28px;padding:28px;background:linear-gradient(145deg,#17212c,#07101a 65%,#1b2631);box-shadow:inset 0 1px #fff3}.address-title-row{display:flex;gap:18px;align-items:center}.address-title-row h2{margin:0}.confidence{color:var(--green);font-weight:900}.address-text{font-size:25px;font-weight:650;line-height:1.55;margin:28px 0;color:#fff}.privacy-note{color:#9ca9b8;font-size:13px}.confidence-box{align-self:center;background:#0b121a;border:1px solid #3a4654;border-radius:20px;padding:20px}.confidence-box strong{display:block;color:var(--green);font-size:34px;margin:7px 0}.confidence-box small{color:var(--muted)}
.actions{display:grid;grid-template-columns:1fr 2fr;gap:14px;margin:18px 0}.metal-btn{border:1px solid #6d7988;border-radius:22px;padding:18px 24px;color:#fff;font-weight:900;cursor:pointer;background:linear-gradient(#303b48,#111820 48%,#27313b);box-shadow:inset 0 2px 1px #ffffff55,0 8px 22px #0007}.metal-btn.primary{color:#161108;border-color:#d9aa2f;background:linear-gradient(#ffd86c,#c98b13 52%,#efb429)}.gold-outline{color:#ffd45a}.wide{width:100%;margin-top:18px}.tags{display:flex;gap:10px;flex-wrap:wrap}.tag{border:1px solid #3b4755;border-radius:999px;padding:9px 13px;font-size:12px;font-weight:850}.tag.green{color:var(--green);border-color:#276c38}.tag.blue{color:var(--blue);border-color:#2b5476}.tag.purple{color:var(--purple);border-color:#663778}.accordions{display:grid;gap:10px;margin-top:22px}.accordions button{display:flex;justify-content:space-between;background:linear-gradient(#111923,#0a1118);border:1px solid #32404e;color:#fff;border-radius:19px;padding:21px;font-weight:750;font-size:17px}
.modal{position:fixed;inset:0;background:#000b;display:grid;place-items:center;padding:20px;z-index:20}.hidden{display:none!important}.modal-card{width:min(680px,100%);background:#0d151f;border:1px solid #485869;border-radius:28px;padding:30px;position:relative}.modal-close{position:absolute;right:18px;top:14px;background:none;border:0;color:#fff;font-size:30px}.item-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.item-grid button,.qty-grid button,.mini-actions button{border:1px solid #334252;background:#111b26;color:#fff;border-radius:16px;padding:14px}.item-grid button.selected,.qty-grid button.selected{border-color:var(--gold);color:#ffd45a;background:#211b0f}.qty-grid{display:flex;gap:9px}.tracking-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.tracking-row input{background:#081018;border:1px solid #334252;border-radius:14px;color:#fff;padding:14px}
.simple-list,.mailing-grid{display:grid;gap:12px}.simple-row,.mailing-card{background:#0a121b;border:1px solid #2e3d4c;border-radius:20px;padding:20px}.simple-row{display:grid;grid-template-columns:1fr auto 20px}.simple-row span{color:var(--muted)}.mailing-card{display:grid;grid-template-columns:1fr auto;gap:12px}.status{font-size:11px;font-weight:900;padding:7px 10px;border-radius:999px;height:max-content}.status.waiting{color:#ffd45a;background:#2a210c}.status.success{color:#71ea7b;background:#102a16}.status.rts,.status.failed{color:#ff7180;background:#31141a}.mini-actions{grid-column:1/-1;display:flex;gap:8px}
.binder-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.binder-card{min-height:220px;border:1px solid #647180;border-radius:26px;padding:24px;background:linear-gradient(145deg,#18212b,#090e14 62%,#222d38);box-shadow:inset 0 1px #fff3,0 18px 45px #0005}.empty{padding:30px;color:var(--muted);text-align:center}.import-card{background:#0a121b;border:1px solid #2f3e4e;border-radius:22px;padding:24px}.import-card input{display:block;margin:20px 0}.import-card pre{background:#05090d;padding:16px;border-radius:14px;color:#a6efaf}
@media(max-width:760px){.topbar{padding:0 14px;flex-wrap:wrap}.brand{margin-right:auto}nav{order:3;width:100%;overflow:auto}.page,.profile-page{padding-left:16px;padding-right:16px}.hero h1,.page h1{font-size:40px}.search-shell{flex-direction:column}.search-shell button{padding:14px}.profile-top{flex-direction:column;align-items:flex-start}.profile-top h1{font-size:40px}.address-card{grid-template-columns:1fr}.actions{grid-template-columns:1fr}.item-grid{grid-template-columns:repeat(2,1fr)}.tracking-row{grid-template-columns:1fr}.binder-grid{grid-template-columns:1fr}}


/* =========================================================
   v0.1.2 PROFILE VISUAL REFINEMENT
   Subtle metal — premium, not full chrome.
   ========================================================= */

.profile-body{
  background:
    radial-gradient(900px 520px at 50% 4%,rgba(30,62,92,.18),transparent 64%),
    linear-gradient(180deg,#05090e 0%,#060b11 55%,#04070b 100%);
}

.profile-page{
  max-width:1180px;
  padding-top:46px;
}

.profile-page .back{
  display:inline-flex;
  align-items:center;
  color:#d8e2ec;
  font-size:15px;
  margin-left:6px;
  transition:color .15s ease,transform .15s ease;
}

.profile-page .back:hover{
  color:#fff;
  transform:translateX(-2px);
}

.premium-profile-card{
  position:relative;
  margin-top:26px;
  padding:42px 44px 32px;
  border:1px solid rgba(188,201,215,.58);
  border-radius:38px;
  background:
    radial-gradient(620px 320px at 95% 0%,rgba(255,255,255,.055),transparent 58%),
    linear-gradient(145deg,#141d27 0%,#0b121a 37%,#070b10 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.20),
    inset 0 -1px 0 rgba(255,255,255,.04),
    0 34px 90px rgba(0,0,0,.46);
  overflow:hidden;
}

.premium-profile-card::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  border-radius:inherit;
  background:
    linear-gradient(115deg,
      rgba(255,255,255,.09) 0%,
      rgba(255,255,255,.015) 12%,
      transparent 26%,
      transparent 72%,
      rgba(255,255,255,.035) 92%);
  opacity:.72;
}

.premium-profile-card > *{
  position:relative;
  z-index:1;
}

.premium-profile-card .profile-top{
  padding:0 7px 30px;
}

.premium-profile-card .profile-top h1{
  color:#fff;
  font-size:62px;
  line-height:.98;
  letter-spacing:-.035em;
  font-weight:850;
  text-shadow:0 3px 18px rgba(255,255,255,.08);
}

.premium-profile-card .sport-label{
  margin-top:13px;
  color:#ffc52f;
  font-size:14px;
  letter-spacing:.26em;
}

.metal-btn{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  border-radius:26px;
  min-height:66px;
  transition:transform .16s ease,filter .16s ease,box-shadow .16s ease;
}

.metal-btn::after{
  content:"";
  position:absolute;
  z-index:-1;
  inset:1px;
  border-radius:inherit;
  pointer-events:none;
  background:
    linear-gradient(115deg,
      rgba(255,255,255,.24) 0%,
      rgba(255,255,255,.035) 18%,
      transparent 43%,
      rgba(255,255,255,.08) 76%,
      rgba(255,255,255,.18) 100%);
  mix-blend-mode:screen;
  opacity:.52;
}

.metal-btn:hover{
  transform:translateY(-1px);
  filter:brightness(1.07);
}

.metal-dark{
  border:1px solid #7c8997;
  color:#fff;
  background:
    linear-gradient(180deg,#3a4653 0%,#1b242d 18%,#0b1117 56%,#232d37 100%);
  box-shadow:
    inset 0 2px 1px rgba(255,255,255,.42),
    inset 0 -1px 0 rgba(255,255,255,.09),
    0 10px 25px rgba(0,0,0,.38);
}

.gold-outline{
  min-width:190px;
  color:#ffd04a;
  border-color:#758392;
  padding-inline:28px;
}

.premium-address-card{
  position:relative;
  grid-template-columns:112px minmax(0,1fr) 244px;
  align-items:center;
  gap:26px;
  min-height:282px;
  padding:32px 30px;
  border-radius:31px;
  border:1px solid rgba(170,187,203,.60);
  background:
    radial-gradient(460px 250px at 96% 10%,rgba(255,255,255,.08),transparent 60%),
    linear-gradient(132deg,#141e28 0%,#0a121a 48%,#111b25 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.20),
    0 12px 36px rgba(0,0,0,.22);
}

.premium-address-card::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  background:
    linear-gradient(145deg,
      transparent 0%,
      transparent 55%,
      rgba(255,255,255,.055) 76%,
      transparent 100%);
}

.address-emblem{
  width:92px;
  height:92px;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#f6bc26;
  font-size:48px;
  background:
    radial-gradient(circle at 38% 28%,#485462 0 5%,#161e27 24%,#05090d 62%,#1d2730 100%);
  border:1px solid #84909b;
  box-shadow:
    inset 0 2px 1px rgba(255,255,255,.52),
    inset 0 -4px 12px rgba(0,0,0,.68),
    0 10px 28px rgba(0,0,0,.38);
}

.address-emblem span{
  transform:translateY(-2px);
  text-shadow:0 0 18px rgba(244,185,40,.26);
}

.address-main{
  min-width:0;
}

.premium-address-card .address-title-row{
  gap:22px;
  flex-wrap:wrap;
}

.premium-address-card .address-title-row h2{
  font-size:23px;
  letter-spacing:.015em;
  color:#fff;
}

.premium-address-card .confidence{
  display:inline-flex;
  align-items:center;
  border:1px solid rgba(80,204,91,.42);
  border-radius:999px;
  padding:7px 11px;
  background:rgba(44,112,48,.12);
  color:#75f27f;
  font-size:12px;
  letter-spacing:.03em;
}

.premium-address-card .confidence::before{
  content:"✓";
  margin-right:7px;
  font-size:13px;
}

.premium-address-card .address-text{
  max-width:650px;
  margin:28px 0 26px;
  color:#fff;
  font-size:28px;
  line-height:1.52;
  letter-spacing:-.015em;
  font-weight:620;
}

.premium-address-card .privacy-note{
  color:#acb8c5;
  font-size:13px;
  line-height:1.5;
}

.privacy-lock{
  margin-right:7px;
  color:#8493a2;
}

.premium-address-card .confidence-box{
  position:relative;
  z-index:2;
  min-height:150px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  border-radius:22px;
  border:1px solid rgba(111,128,145,.58);
  background:
    linear-gradient(145deg,rgba(20,29,38,.95),rgba(6,11,16,.94));
  box-shadow:
    inset 0 1px rgba(255,255,255,.10),
    0 14px 30px rgba(0,0,0,.23);
}

.confidence-label{
  color:#f0f4f8;
  font-size:14px;
}

.premium-address-card .confidence-box strong{
  font-size:39px;
  line-height:1;
  margin:12px 0;
  color:#70ed78;
}

.premium-address-card .confidence-box small{
  color:#aab6c3;
  font-size:13px;
}

.premium-actions{
  grid-template-columns:minmax(270px,.72fr) minmax(420px,1.28fr);
  gap:18px;
  margin:22px 0 20px;
}

.premium-actions .metal-btn{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:17px;
  min-height:86px;
  text-align:left;
}

.premium-actions .button-icon{
  flex:0 0 auto;
  font-size:28px;
  line-height:1;
}

.premium-actions .metal-btn span:last-child{
  display:flex;
  flex-direction:column;
  gap:4px;
}

.premium-actions .metal-btn b{
  color:#fff;
  font-size:17px;
  letter-spacing:.025em;
}

.premium-actions .metal-btn small{
  color:#bdc8d3;
  font-size:12px;
  font-weight:550;
  letter-spacing:0;
}

.metal-gold{
  border-color:#f6c650;
  background:
    linear-gradient(180deg,#ffe181 0%,#dfa62b 19%,#ba7910 59%,#f0b72f 100%);
  color:#171005;
  box-shadow:
    inset 0 2px 1px rgba(255,255,255,.68),
    inset 0 -2px 0 rgba(117,68,0,.30),
    0 12px 31px rgba(193,126,12,.26);
}

.metal-gold::after{
  opacity:.68;
}

.premium-actions .metal-gold b,
.premium-actions .metal-gold small{
  color:#171005;
}

.premium-tags{
  gap:12px;
  margin:0 0 24px;
}

.premium-tags .tag{
  min-height:40px;
  display:inline-flex;
  align-items:center;
  padding:9px 15px;
  background:linear-gradient(180deg,rgba(18,27,37,.92),rgba(7,12,18,.96));
  box-shadow:inset 0 1px rgba(255,255,255,.05);
}

.premium-tags .neutral{
  color:#f2f5f8;
}

.premium-accordions{
  gap:11px;
}

.premium-accordions button{
  min-height:92px;
  align-items:center;
  padding:19px 25px;
  border-radius:22px;
  border-color:rgba(93,111,130,.50);
  background:
    linear-gradient(180deg,#111a23 0%,#0a1118 100%);
  box-shadow:
    inset 0 1px rgba(255,255,255,.055),
    0 9px 21px rgba(0,0,0,.14);
}

.premium-accordions button:hover{
  border-color:#708196;
  background:linear-gradient(180deg,#151f2a,#0c141d);
}

.accordion-copy{
  display:flex;
  flex-direction:column;
  gap:5px;
  text-align:left;
}

.accordion-copy b{
  color:#fff;
  font-size:18px;
}

.accordion-copy small{
  color:#a7b3c0;
  font-size:13px;
  font-weight:500;
}

.chevron{
  color:#e5ebf1;
  font-size:32px;
  font-weight:300;
}

.profile-footer{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  margin-top:16px;
  padding:18px 8px 2px;
  border-top:1px solid rgba(82,98,114,.28);
  color:#8f9baa;
  font-size:12px;
}

@media(max-width:900px){
  .premium-profile-card{
    padding:32px 26px 26px;
  }

  .premium-address-card{
    grid-template-columns:86px minmax(0,1fr);
  }

  .premium-address-card .confidence-box{
    grid-column:1/-1;
    min-height:auto;
  }

  .address-emblem{
    width:76px;
    height:76px;
    font-size:39px;
  }

  .premium-actions{
    grid-template-columns:1fr;
  }
}

@media(max-width:760px){
  .premium-profile-card{
    padding:24px 16px 22px;
    border-radius:27px;
  }

  .premium-profile-card .profile-top h1{
    font-size:43px;
  }

  .premium-address-card{
    grid-template-columns:1fr;
    padding:23px 20px;
    border-radius:24px;
  }

  .address-emblem{
    display:none;
  }

  .premium-address-card .address-text{
    font-size:22px;
  }

  .premium-actions .metal-btn{
    min-height:78px;
  }

  .profile-footer{
    align-items:flex-start;
    flex-direction:column;
  }
}

/* =========================================================
   v0.1.3 COMPACT DESKTOP PROFILE
   Keep the premium look, but show more of the card at once.
   ========================================================= */
@media (min-width: 901px){
  .profile-page{
    max-width:1120px;
    padding-top:28px;
    padding-bottom:54px;
  }

  .profile-page .back{
    margin-bottom:0;
    font-size:14px;
  }

  .premium-profile-card{
    margin-top:18px;
    padding:30px 36px 22px;
    border-radius:32px;
  }

  .premium-profile-card .profile-top{
    padding:0 5px 20px;
  }

  .premium-profile-card .profile-top h1{
    font-size:52px;
  }

  .premium-profile-card .sport-label{
    margin-top:8px;
    font-size:12px;
  }

  .gold-outline{
    min-width:176px;
    min-height:58px;
    padding:14px 24px;
    border-radius:22px;
  }

  .premium-address-card{
    grid-template-columns:86px minmax(0,1fr) 220px;
    gap:22px;
    min-height:218px;
    padding:23px 26px;
    border-radius:27px;
  }

  .address-emblem{
    width:72px;
    height:72px;
    font-size:36px;
  }

  .premium-address-card .address-title-row h2{
    font-size:20px;
  }

  .premium-address-card .confidence{
    padding:5px 10px;
    font-size:11px;
  }

  .premium-address-card .address-text{
    margin:18px 0 17px;
    font-size:24px;
    line-height:1.42;
  }

  .premium-address-card .privacy-note{
    font-size:12px;
  }

  .premium-address-card .confidence-box{
    min-height:124px;
    padding:17px 18px;
    border-radius:19px;
  }

  .confidence-label{
    font-size:13px;
  }

  .premium-address-card .confidence-box strong{
    font-size:34px;
    margin:9px 0;
  }

  .premium-actions{
    grid-template-columns:minmax(245px,.72fr) minmax(390px,1.28fr);
    gap:15px;
    margin:16px 0 15px;
  }

  .premium-actions .metal-btn{
    min-height:68px;
    border-radius:22px;
    gap:14px;
    padding:12px 20px;
  }

  .premium-actions .button-icon{
    font-size:23px;
  }

  .premium-actions .metal-btn b{
    font-size:15px;
  }

  .premium-actions .metal-btn small{
    font-size:11px;
  }

  .premium-tags{
    gap:9px;
    margin:0 0 15px;
  }

  .premium-tags .tag{
    min-height:34px;
    padding:7px 12px;
    font-size:11px;
  }

  .premium-accordions{
    gap:8px;
  }

  .premium-accordions button{
    min-height:66px;
    padding:13px 20px;
    border-radius:18px;
  }

  .accordion-copy{
    gap:2px;
  }

  .accordion-copy b{
    font-size:16px;
  }

  .accordion-copy small{
    font-size:11px;
  }

  .chevron{
    font-size:27px;
  }

  .profile-footer{
    margin-top:10px;
    padding:12px 6px 0;
    font-size:11px;
  }
}


/* =========================================================
   v0.2.0 — THE BINDER
   Nine-pocket virtual binder + project binders
   ========================================================= */
.binder-body{
  min-height:100vh;
  background:
    radial-gradient(900px 520px at 50% -5%,rgba(37,74,107,.20),transparent 62%),
    radial-gradient(700px 500px at 8% 75%,rgba(82,55,22,.09),transparent 65%),
    linear-gradient(180deg,#05080d,#07101a 48%,#05080d);
}

.binder-page{
  max-width:1240px;
  margin:0 auto;
  padding:34px 28px 80px;
}

.binder-heading{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:28px;
  margin-bottom:24px;
}

.binder-heading h1{
  margin:7px 0 5px;
  font-size:44px;
  line-height:1;
  letter-spacing:-.035em;
}

.binder-heading p{
  margin:0;
  color:#a9b5c2;
  font-size:15px;
}

.binder-create-btn{
  min-height:52px;
  border-radius:19px;
  padding:12px 20px;
  font-size:12px;
}

.binder-shelf-shell{
  margin-bottom:16px;
}

.binder-shelf-label{
  margin:0 0 8px 4px;
  color:#7f8c9b;
  font-size:10px;
  font-weight:900;
  letter-spacing:.18em;
}

.binder-shelf{
  display:flex;
  gap:10px;
  overflow-x:auto;
  padding:3px 3px 8px;
  scrollbar-width:thin;
}

.binder-tab-book{
  position:relative;
  flex:0 0 auto;
  min-width:190px;
  min-height:63px;
  padding:11px 16px 10px 27px;
  border:1px solid #39495a;
  border-radius:9px 18px 18px 9px;
  background:linear-gradient(145deg,#171f29,#080d13 72%);
  color:#fff;
  text-align:left;
  cursor:pointer;
  box-shadow:inset 0 1px rgba(255,255,255,.09),0 8px 19px rgba(0,0,0,.20);
}

.binder-tab-book:hover{
  border-color:#65768a;
  transform:translateY(-1px);
}

.binder-tab-book.active{
  border-color:#c9992b;
  background:linear-gradient(145deg,#2a2618,#0a0e13 68%);
  box-shadow:inset 0 1px rgba(255,255,255,.13),0 8px 23px rgba(0,0,0,.27),0 0 0 1px rgba(244,185,40,.11);
}

.binder-tab-book b{
  display:block;
  max-width:190px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:12px;
  letter-spacing:.025em;
}

.binder-tab-book small{
  display:block;
  margin-top:4px;
  color:#8f9dac;
  font-size:10px;
}

.binder-tab-book.active small{color:#c9b983}

.binder-mini-spine{
  position:absolute;
  inset:5px auto 5px 6px;
  width:9px;
  border-radius:4px;
  background:linear-gradient(90deg,#263543,#8393a3,#26333f);
  opacity:.72;
}

.binder-mini-spine.project{
  background:linear-gradient(90deg,#6f4e0c,#f0bd3b,#6b4807);
}

.binder-tab-book.new-book{
  border-style:dashed;
  color:#d7e1ea;
  background:#0a1017;
}

.binder-controls{
  margin-bottom:14px;
}

.binder-tabs{
  display:flex;
  gap:7px;
  padding:6px;
  overflow-x:auto;
  border:1px solid #253342;
  border-radius:18px;
  background:rgba(8,13,19,.84);
}

.binder-tabs button{
  flex:0 0 auto;
  border:1px solid transparent;
  border-radius:13px;
  padding:10px 13px;
  background:transparent;
  color:#aeb9c5;
  font-size:12px;
  font-weight:800;
  cursor:pointer;
}

.binder-tabs button span{
  display:inline-grid;
  min-width:22px;
  height:22px;
  margin-left:6px;
  place-items:center;
  border-radius:999px;
  background:#17212c;
  color:#aab6c3;
  font-size:10px;
}

.binder-tabs button.active{
  border-color:#5b6877;
  color:#fff;
  background:linear-gradient(180deg,#24303c,#101720);
  box-shadow:inset 0 1px rgba(255,255,255,.12);
}

.binder-tabs button.active span{
  background:#443510;
  color:#ffd361;
}

.project-binder-header{
  position:relative;
  display:grid;
  grid-template-columns:1fr auto;
  gap:12px 24px;
  margin:2px 0 14px;
  padding:20px 23px 17px;
  border:1px solid #4d5c6c;
  border-radius:23px;
  background:linear-gradient(145deg,#171f28,#090e14 72%);
  box-shadow:inset 0 1px rgba(255,255,255,.11),0 13px 32px rgba(0,0,0,.18);
}

.project-kicker{
  color:#f2bd36;
  font-size:10px;
  font-weight:900;
  letter-spacing:.19em;
}

.project-binder-header h2{
  margin:4px 0 3px;
  font-size:25px;
}

.project-progress-text{
  color:#aab6c3;
  font-size:12px;
}

.project-header-actions{
  display:flex;
  align-items:center;
  gap:10px;
}

.project-header-actions .metal-btn{
  min-height:45px;
  padding:10px 16px;
  border-radius:16px;
  font-size:11px;
}

.binder-quiet-btn{
  border:0;
  background:transparent;
  color:#778492;
  font-size:11px;
  cursor:pointer;
}

.binder-quiet-btn:hover{color:#ff7c88}

.project-progress-track{
  grid-column:1/-1;
  height:5px;
  overflow:hidden;
  border-radius:999px;
  background:#111922;
}

.project-progress-track span{
  display:block;
  width:0;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,#258b3a,#66e472);
  transition:width .3s ease;
}

.binder-viewer{
  position:relative;
  min-height:650px;
  padding:18px 18px 18px 62px;
  border:1px solid #4e5c69;
  border-radius:18px 34px 34px 18px;
  background:
    linear-gradient(90deg,rgba(255,255,255,.04),transparent 4%),
    linear-gradient(145deg,#161e27,#080d12 78%);
  box-shadow:inset 0 1px rgba(255,255,255,.15),0 28px 70px rgba(0,0,0,.34);
}

.binder-spine{
  position:absolute;
  top:18px;
  bottom:18px;
  left:16px;
  width:30px;
  border-right:1px solid rgba(255,255,255,.10);
  background:linear-gradient(90deg,#090d12,#222d37 62%,#090d12);
  border-radius:10px;
  display:flex;
  flex-direction:column;
  justify-content:space-around;
  align-items:center;
}

.binder-spine span{
  width:23px;
  height:23px;
  border:4px solid #8995a0;
  border-left-color:#38434e;
  border-radius:50%;
  background:#070a0e;
  box-shadow:inset 0 1px 2px #000,0 1px rgba(255,255,255,.14);
}

.binder-sheet-wrap{
  min-height:614px;
  padding:18px;
  border:1px solid rgba(155,171,186,.31);
  border-radius:22px;
  background:
    linear-gradient(110deg,rgba(255,255,255,.055),transparent 18%),
    linear-gradient(180deg,rgba(19,29,39,.90),rgba(7,12,17,.94));
  box-shadow:inset 0 1px rgba(255,255,255,.09);
}

.binder-sheet-head{
  min-height:48px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  padding:0 3px 12px;
}

.sheet-kicker{
  color:#8d9aaa;
  font-size:9px;
  font-weight:900;
  letter-spacing:.18em;
}

.binder-sheet-head h2{
  margin:3px 0 0;
  font-size:22px;
  color:#fff;
}

.sheet-legend{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
  color:#8e9aa8;
  font-size:9px;
}

.legend-dot{
  display:inline-block;
  width:9px;
  height:9px;
  border-radius:50%;
  margin-left:6px;
  border:1px solid rgba(255,255,255,.25);
}

.legend-dot.want,.tone-want{--tone:#8592a0;--tone-rgb:133,146,160}
.legend-dot.not-started,.tone-not-started{--tone:#636e79;--tone-rgb:99,110,121}
.legend-dot.wait-fresh,.tone-wait-fresh{--tone:#f7d84a;--tone-rgb:247,216,74}
.legend-dot.wait-gold,.tone-wait-gold{--tone:#dda91f;--tone-rgb:221,169,31}
.legend-dot.wait-amber,.tone-wait-amber{--tone:#df8921;--tone-rgb:223,137,33}
.legend-dot.wait-orange,.tone-wait-orange{--tone:#dc6128;--tone-rgb:220,97,40}
.legend-dot.wait-long,.tone-wait-long{--tone:#d94436;--tone-rgb:217,68,54}
.legend-dot.success,.tone-success{--tone:#5fe06b;--tone-rgb:95,224,107}
.legend-dot.failed,.tone-failed{--tone:#ef5b67;--tone-rgb:239,91,103}

.legend-dot{background:var(--tone)}

.pocket-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  perspective:1400px;
  transform-origin:left center;
}

.pocket-grid.flip-forward{animation:binderFlipForward .24s ease}
.pocket-grid.flip-back{animation:binderFlipBack .24s ease}

@keyframes binderFlipForward{
  0%{opacity:.35;transform:rotateY(-5deg) translateX(9px)}
  100%{opacity:1;transform:none}
}
@keyframes binderFlipBack{
  0%{opacity:.35;transform:rotateY(5deg) translateX(-9px)}
  100%{opacity:1;transform:none}
}

.binder-pocket{
  position:relative;
  min-height:145px;
  padding:7px;
  overflow:hidden;
  border:1px solid rgba(183,198,211,.20);
  border-radius:10px 10px 16px 16px;
  background:
    linear-gradient(125deg,rgba(255,255,255,.075),rgba(255,255,255,.01) 38%,rgba(255,255,255,.035)),
    rgba(17,27,36,.50);
  box-shadow:inset 0 1px rgba(255,255,255,.12),0 5px 13px rgba(0,0,0,.14);
  cursor:pointer;
}

.binder-pocket::before{
  content:"";
  position:absolute;
  inset:5px 8px auto;
  height:1px;
  background:rgba(255,255,255,.16);
}

.pocket-plastic{
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(115deg,rgba(255,255,255,.09),transparent 24%,transparent 72%,rgba(255,255,255,.035));
  z-index:3;
}

.binder-pocket-card{
  position:relative;
  z-index:2;
  min-height:129px;
  height:100%;
  display:flex;
  flex-direction:column;
  padding:12px 13px 10px;
  overflow:hidden;
  border:1px solid rgba(var(--tone-rgb),.55);
  border-radius:8px 8px 13px 13px;
  background:
    radial-gradient(220px 100px at 100% 0%,rgba(var(--tone-rgb),.13),transparent 65%),
    linear-gradient(145deg,#161f28,#090e14 72%);
  box-shadow:inset 4px 0 0 rgba(var(--tone-rgb),.88),inset 0 1px rgba(255,255,255,.08),0 4px 11px rgba(0,0,0,.22);
}

.binder-pocket:hover .binder-pocket-card{
  transform:translateY(-2px);
  border-color:rgba(var(--tone-rgb),.80);
}

.pocket-card-top{
  display:flex;
  justify-content:space-between;
  gap:10px;
  color:#8f9ba8;
  font-size:8px;
  font-weight:850;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.pocket-card-center{
  display:flex;
  flex:1;
  flex-direction:column;
  justify-content:center;
  min-height:70px;
}

.pocket-card-center h3{
  margin:4px 0 8px;
  color:#fff;
  font-size:17px;
  line-height:1.07;
  letter-spacing:-.02em;
}

.pocket-status{
  align-self:flex-start;
  max-width:100%;
  padding:4px 7px;
  overflow:hidden;
  border:1px solid rgba(var(--tone-rgb),.54);
  border-radius:999px;
  background:rgba(var(--tone-rgb),.10);
  color:var(--tone);
  font-size:8px;
  font-weight:950;
  letter-spacing:.07em;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.pocket-date{
  margin-top:6px;
  color:#93a0ad;
  font-size:8px;
}

.pocket-card-footer{
  min-height:14px;
  overflow:hidden;
  color:#7f8b97;
  font-size:8px;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.pocket-card-actions{
  margin-top:auto;
}

.pocket-send-btn{
  width:100%;
  border:1px solid #c99a2a;
  border-radius:999px;
  padding:6px 8px;
  background:linear-gradient(180deg,#f4c64c,#ad750e);
  color:#161006;
  font-size:8px;
  font-weight:950;
  letter-spacing:.04em;
  cursor:pointer;
  box-shadow:inset 0 1px rgba(255,255,255,.50);
}

.pocket-remove{
  position:absolute;
  top:5px;
  right:5px;
  z-index:5;
  width:21px;
  height:21px;
  display:none;
  place-items:center;
  border:1px solid #64444a;
  border-radius:50%;
  background:#180d11;
  color:#d58088;
  cursor:pointer;
}

.binder-pocket:hover .pocket-remove{display:grid}

.empty-pocket{
  cursor:default;
  opacity:.48;
}

.empty-pocket-inner{
  min-height:129px;
  display:grid;
  place-items:center;
  border:1px dashed rgba(155,169,183,.19);
  border-radius:9px 9px 14px 14px;
  color:#55616d;
  font-size:8px;
  font-weight:850;
  letter-spacing:.14em;
}

.binder-page-controls{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:16px;
  padding-top:14px;
}

.page-turn{
  border:1px solid #344455;
  border-radius:999px;
  padding:8px 13px;
  background:#0a1118;
  color:#aebac6;
  font-size:9px;
  font-weight:900;
  letter-spacing:.05em;
  cursor:pointer;
}

.page-turn:first-child{justify-self:start}
.page-turn:last-child{justify-self:end}
.page-turn:disabled{opacity:.27;cursor:default}

.page-number{
  color:#7f8c99;
  font-size:9px;
  font-weight:900;
  letter-spacing:.10em;
}

.projects-chapter{
  padding:23px;
  border:1px solid #344353;
  border-radius:25px;
  background:rgba(9,15,22,.83);
}

.projects-chapter-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:20px;
  margin-bottom:20px;
}

.projects-chapter-head h2{margin:5px 0 0}
.projects-chapter-head .metal-btn{min-height:48px;padding:10px 16px;border-radius:17px;font-size:11px}

.project-cover-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}

.project-cover{
  position:relative;
  min-height:235px;
  padding:26px 22px 20px 34px;
  overflow:hidden;
  border:1px solid #6b6042;
  border-radius:8px 24px 24px 8px;
  background:
    radial-gradient(260px 160px at 100% 0%,rgba(255,196,63,.10),transparent 65%),
    linear-gradient(145deg,#262316,#11130f 47%,#080c10 100%);
  color:#fff;
  text-align:left;
  cursor:pointer;
  box-shadow:inset 0 1px rgba(255,255,255,.14),0 14px 35px rgba(0,0,0,.27);
}

.project-cover:hover{transform:translateY(-2px);border-color:#a78738}
.project-cover-spine{position:absolute;inset:0 auto 0 0;width:18px;background:linear-gradient(90deg,#4b3509,#bf8b1b,#503708);box-shadow:inset -1px 0 rgba(255,255,255,.16)}
.project-cover-top{color:#cba74e;font-size:9px;font-weight:900;letter-spacing:.18em}
.project-cover h3{min-height:56px;margin:13px 0 21px;font-size:22px;line-height:1.15}
.project-cover-stat{display:flex;align-items:baseline;gap:8px}.project-cover-stat strong{font-size:34px;color:#65e171}.project-cover-stat span{color:#a8b3be;font-size:11px}
.project-cover-progress{height:6px;margin:10px 0 18px;border-radius:999px;background:#151a1b;overflow:hidden}.project-cover-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#278a3a,#64df70)}
.project-cover-bottom{display:flex;justify-content:space-between;color:#8e9aa5;font-size:10px}.project-cover-bottom b{font-size:18px;color:#d4b158}

.projects-empty{
  grid-column:1/-1;
  min-height:300px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:#a4b0bd;
}

.projects-empty h3{margin:8px 0 4px;color:#fff;font-size:23px}
.projects-empty p{max-width:520px;margin:0 0 20px;line-height:1.55}
.empty-binder-icon{font-size:56px;color:#4e5f70}
.projects-empty .metal-btn{min-height:51px;padding:11px 19px;border-radius:18px}

.binder-modal-card{max-width:620px}
.binder-modal-card h2{margin:7px 0 7px;font-size:30px}
.modal-copy{color:#9ba8b6;line-height:1.5}
.binder-input{width:100%;border:1px solid #39495a;border-radius:15px;background:#071019;color:#fff;padding:14px 15px;outline:none;font-size:15px}.binder-input:focus{border-color:#ad8427;box-shadow:0 0 0 3px rgba(244,185,40,.07)}

.binder-people-modal{height:min(690px,82vh);display:flex;flex-direction:column}
.project-search-shell{margin:8px 0 13px}.project-person-results{flex:1;min-height:0;overflow:auto;border-top:1px solid #263341}
.project-person-row{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;padding:13px 5px;border-bottom:1px solid #202c38}.project-person-row strong{display:block;color:#fff}.project-person-row span{display:block;margin-top:3px;color:#8f9dab;font-size:11px}.project-person-row button{border:1px solid #4b5c6d;border-radius:999px;padding:7px 11px;background:#111a23;color:#e6edf4;font-size:9px;font-weight:900;cursor:pointer}.project-person-row button:disabled{color:#61dc6d;border-color:#2a6534;opacity:.72;cursor:default}.project-search-hint{padding:28px 5px;color:#81909e;text-align:center}

@media(max-width:900px){
  .binder-page{padding-left:18px;padding-right:18px}
  .binder-heading{align-items:flex-start;flex-direction:column}
  .binder-heading h1{font-size:39px}
  .binder-viewer{padding-left:54px}
  .pocket-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .binder-pocket{min-height:137px;padding:5px}
  .binder-pocket-card,.empty-pocket-inner{min-height:125px}
  .pocket-card-center h3{font-size:14px}
  .project-cover-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:680px){
  .binder-page{padding:25px 11px 70px}
  .binder-create-btn{width:100%}
  .binder-tab-book{min-width:165px}
  .binder-viewer{padding:12px 10px 12px 42px;border-radius:14px 24px 24px 14px}
  .binder-spine{left:9px;width:27px}
  .binder-spine span{width:19px;height:19px;border-width:3px}
  .binder-sheet-wrap{padding:10px}
  .binder-sheet-head{align-items:flex-start;flex-direction:column;gap:8px}
  .sheet-legend{justify-content:flex-start}
  .pocket-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .project-cover-grid{grid-template-columns:1fr}
  .project-binder-header{grid-template-columns:1fr}
  .project-header-actions{justify-content:flex-start}
  .project-progress-track{grid-column:1}
}


/* =========================================================
   v0.2.1 — Binder card proportions + multi-item mailings
   ========================================================= */

/* Want List is intentionally blue so "saved / not mailed" never looks inactive. */
.legend-dot.want,.tone-want{
  --tone:#5aa8ff;
  --tone-rgb:90,168,255;
}

.tone-want{
  background:
    radial-gradient(240px 170px at 92% 6%,rgba(90,168,255,.22),transparent 66%),
    linear-gradient(155deg,#172637 0%,#0d1823 52%,#080d13 100%);
}

/* A real 3x3 sports-card sheet is roughly 5:7 overall:
   three 2.5x3.5 cards across and three down. */
.pocket-grid{
  aspect-ratio:5 / 7;
  grid-template-columns:repeat(3,minmax(0,1fr));
  grid-template-rows:repeat(3,minmax(0,1fr));
  gap:12px;
}

.binder-viewer{
  min-height:0;
}

.binder-sheet-wrap{
  min-height:0;
}

.binder-pocket{
  min-height:0;
  height:100%;
  padding:8px;
  border-radius:12px 12px 18px 18px;
}

.binder-pocket-card{
  min-height:0;
  height:100%;
  padding:14px 14px 12px;
  border-radius:10px 10px 15px 15px;
}

.empty-pocket-inner{
  min-height:0;
  height:100%;
  border-radius:10px 10px 15px 15px;
}

.pocket-card-center{
  min-height:0;
  justify-content:flex-end;
  padding:18px 0 10px;
}

.pocket-card-center::before{
  content:"";
  flex:1 1 auto;
  min-height:28px;
  margin-bottom:12px;
  border-radius:9px;
  background:
    radial-gradient(circle at 50% 35%,rgba(var(--tone-rgb),.13),transparent 38%),
    linear-gradient(145deg,rgba(255,255,255,.025),rgba(0,0,0,.08));
  border:1px solid rgba(var(--tone-rgb),.10);
}

.pocket-card-center h3{
  font-size:18px;
  margin:0 0 9px;
}

.pocket-status{
  font-size:8px;
  padding:5px 8px;
}

.pocket-card-footer{
  min-height:18px;
  padding-top:4px;
}

.pocket-send-btn{
  min-height:31px;
  border-radius:11px;
  font-size:8px;
}

/* Multi-item "I'm Sending Today" */
.multi-item-grid button{
  display:flex;
  min-height:58px;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:4px;
}

.multi-item-grid button small{
  color:#7f8d9b;
  font-size:8px;
  font-weight:900;
  letter-spacing:.08em;
}

.multi-item-grid button.selected small{
  color:#ffd45a;
}

.selected-items-shell{
  margin-top:18px;
  padding:14px;
  border:1px solid #2d3c4c;
  border-radius:18px;
  background:#081018;
}

.selected-items-label{
  margin-bottom:9px;
  color:#8997a5;
  font-size:9px;
  font-weight:950;
  letter-spacing:.14em;
}

.selected-mailing-items{
  display:grid;
  gap:8px;
}

.selected-items-empty{
  padding:7px 3px;
  color:#6f7f8e;
  font-size:12px;
}

.selected-mailing-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  align-items:center;
  gap:12px;
  padding:9px 10px 9px 13px;
  border:1px solid #344557;
  border-radius:14px;
  background:linear-gradient(180deg,#111c27,#0b131c);
}

.selected-mailing-name{
  color:#fff;
  font-size:13px;
  font-weight:850;
}

.selected-mailing-qty{
  display:grid;
  grid-template-columns:32px 34px 32px;
  align-items:center;
  border:1px solid #4c5d6d;
  border-radius:999px;
  overflow:hidden;
  background:#071019;
}

.selected-mailing-qty button{
  width:32px;
  height:32px;
  border:0;
  background:transparent;
  color:#fff;
  cursor:pointer;
  font-size:18px;
}

.selected-mailing-qty button:hover{
  background:#152231;
}

.selected-mailing-qty strong{
  color:#ffd45a;
  text-align:center;
  font-size:13px;
}

.selected-mailing-remove{
  border:0;
  background:transparent;
  color:#7d8c9a;
  font-size:8px;
  font-weight:900;
  letter-spacing:.08em;
  cursor:pointer;
}

.selected-mailing-remove:hover{
  color:#ff7a87;
}

@media(max-width:1000px){
  .pocket-grid{
    aspect-ratio:5 / 7;
  }
  .binder-pocket,
  .binder-pocket-card,
  .empty-pocket-inner{
    min-height:0;
  }
}

@media(max-width:760px){
  .pocket-grid{
    aspect-ratio:auto;
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-rows:none;
  }
  .binder-pocket{
    aspect-ratio:5 / 7;
  }
  .selected-mailing-row{
    grid-template-columns:1fr auto;
  }
  .selected-mailing-remove{
    grid-column:1/-1;
    justify-self:start;
  }
}


/* =========================================================
   v0.2.2 — Want List removal
   ========================================================= */
.want-pocket-actions{
  display:grid;
  grid-template-columns:1fr;
  gap:6px;
  width:100%;
}

.pocket-want-remove{
  min-height:24px;
  width:100%;
  border:0;
  background:transparent;
  color:#7f92a6;
  font-size:7px;
  font-weight:900;
  letter-spacing:.08em;
  cursor:pointer;
  border-radius:8px;
}

.pocket-want-remove:hover{
  color:#ff7a87;
  background:rgba(255,105,120,.07);
}

.tone-want .pocket-want-remove{
  color:#83a7ca;
}

.tone-want .pocket-want-remove:hover{
  color:#ff8a95;
}


/* =========================================================
   v0.2.3 — Compact Photo Binder
   ========================================================= */

/* Keep the real 3x3 portrait proportions, but stop letting the binder
   expand across the entire desktop. */
.binder-viewer{
  width:min(100%,860px);
  margin-left:auto;
  margin-right:auto;
  padding:14px 14px 14px 50px;
  border-radius:16px 28px 28px 16px;
}

.binder-spine{
  top:14px;
  bottom:14px;
  left:12px;
  width:26px;
}

.binder-spine span{
  width:19px;
  height:19px;
  border-width:3px;
}

.binder-sheet-wrap{
  padding:14px;
  border-radius:19px;
}

.binder-sheet-head{
  min-height:42px;
  padding-bottom:10px;
}

.binder-sheet-head h2{
  font-size:19px;
}

.sheet-legend{
  font-size:8px;
  gap:6px;
}

.legend-dot{
  width:8px;
  height:8px;
}

/* The whole nine-pocket page remains a 5:7 portrait sheet. */
.pocket-grid{
  aspect-ratio:5 / 7;
  gap:9px;
}

.binder-pocket{
  padding:6px;
  border-radius:10px 10px 15px 15px;
}

.binder-pocket-card{
  padding:9px 9px 8px;
  border-radius:8px 8px 13px 13px;
}

.pocket-card-top{
  flex:0 0 auto;
  min-height:14px;
  font-size:6.5px;
  letter-spacing:.10em;
}

/* Photo now owns most of the sports card. */
.pocket-photo-frame{
  position:relative;
  flex:1 1 auto;
  min-height:0;
  margin:6px 0 8px;
  overflow:hidden;
  border:1px solid rgba(var(--tone-rgb),.24);
  border-radius:7px;
  background:
    radial-gradient(circle at 50% 34%,rgba(var(--tone-rgb),.14),transparent 39%),
    linear-gradient(145deg,#18232e,#091018 70%);
  box-shadow:inset 0 1px rgba(255,255,255,.06);
}

.pocket-photo-frame img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center 22%;
}

.pocket-photo-shade{
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(180deg,transparent 58%,rgba(4,8,12,.48) 83%,rgba(4,8,12,.82) 100%),
    linear-gradient(120deg,rgba(255,255,255,.05),transparent 22%);
}

.pocket-photo-placeholder{
  width:100%;
  height:100%;
  min-height:74px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:7px;
  color:rgba(var(--tone-rgb),.82);
}

.pocket-photo-placeholder strong{
  font-size:31px;
  line-height:1;
  letter-spacing:-.05em;
  opacity:.82;
}

.pocket-photo-placeholder small{
  max-width:90%;
  color:#71808f;
  text-align:center;
  font-size:5.8px;
  font-weight:900;
  letter-spacing:.10em;
}

.pocket-photo-credit{
  position:absolute;
  right:5px;
  bottom:4px;
  z-index:2;
  max-width:72%;
  overflow:hidden;
  color:rgba(255,255,255,.72);
  font-size:5.4px;
  font-weight:800;
  letter-spacing:.04em;
  text-overflow:ellipsis;
  white-space:nowrap;
  text-shadow:0 1px 3px #000;
}

.pocket-card-info{
  flex:0 0 auto;
  min-width:0;
}

.pocket-card-info h3{
  margin:0 0 6px;
  overflow:hidden;
  color:#fff;
  font-size:14px;
  line-height:1.08;
  letter-spacing:-.02em;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.pocket-status-row{
  display:flex;
  align-items:center;
  gap:5px;
  min-width:0;
}

.pocket-status{
  flex:0 1 auto;
  max-width:58%;
  padding:4px 6px;
  font-size:6.5px;
}

.pocket-date{
  min-width:0;
  margin:0;
  overflow:hidden;
  color:#8795a3;
  font-size:6px;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.pocket-card-footer{
  min-height:13px;
  padding-top:5px;
  overflow:hidden;
  color:#788897;
  font-size:6px;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.pocket-card-actions{
  flex:0 0 auto;
  padding-top:6px;
}

.want-pocket-actions{
  gap:4px;
}

.pocket-send-btn{
  min-height:25px;
  border-radius:8px;
  font-size:6.5px;
}

.pocket-want-remove{
  min-height:17px;
  font-size:5.8px;
}

/* Project/want cards still communicate status with the colored side rail,
   but the photograph remains the visual focus. */
.tone-want,
.tone-not-started,
.tone-wait-fresh,
.tone-wait-gold,
.tone-wait-amber,
.tone-wait-orange,
.tone-wait-long,
.tone-success,
.tone-failed{
  background:
    radial-gradient(180px 90px at 100% 0%,rgba(var(--tone-rgb),.10),transparent 66%),
    linear-gradient(145deg,#151e27,#080d13 76%);
}

@media(max-width:950px){
  .binder-viewer{
    width:min(100%,760px);
  }
}

@media(max-width:760px){
  .binder-viewer{
    width:100%;
  }

  .pocket-grid{
    aspect-ratio:auto;
  }

  .binder-pocket{
    aspect-ratio:5 / 7;
  }

  .pocket-card-info h3{
    font-size:13px;
  }
}


/* =========================================================
   v0.2.4 — Status-colored sports card borders
   ========================================================= */

/* The status color now owns the physical edge of the virtual card.
   The center stays dark so the photo remains the focus. */
.binder-pocket-card{
  border:2px solid var(--tone);
  box-shadow:
    0 0 0 1px rgba(var(--tone-rgb),.18),
    0 0 14px rgba(var(--tone-rgb),.10),
    inset 0 1px 0 rgba(255,255,255,.06);
}

/* Give the sleeve/pocket only a faint matching tint so the card itself
   still reads as the colored object inside the binder pocket. */
.binder-pocket{
  border-color:rgba(var(--tone-rgb),.22);
  background:
    linear-gradient(145deg,
      rgba(var(--tone-rgb),.055),
      rgba(8,13,19,.60) 30%,
      rgba(7,11,16,.76) 100%);
}

/* Slightly richer edge on success / active waiting states. */
.tone-success{
  box-shadow:
    0 0 0 1px rgba(var(--tone-rgb),.22),
    0 0 18px rgba(var(--tone-rgb),.12),
    inset 0 1px 0 rgba(255,255,255,.06);
}

.tone-wait-fresh,
.tone-wait-gold,
.tone-wait-amber,
.tone-wait-orange,
.tone-wait-long{
  box-shadow:
    0 0 0 1px rgba(var(--tone-rgb),.20),
    0 0 16px rgba(var(--tone-rgb),.11),
    inset 0 1px 0 rgba(255,255,255,.06);
}

/* Want List = blue edge, Failed/RTS = red edge, untouched project members
   retain their neutral/not-started tone. */


/* =========================================================
   v0.2.4.1 — Laptop readability pass
   ========================================================= */

/* Binder heading / chapter title */
.binder-sheet-head .eyebrow{
  font-size:10px;
}

.binder-sheet-head h2{
  font-size:22px;
}

/* Upper-right waiting-age key */
.sheet-legend{
  gap:10px;
  font-size:10px;
  font-weight:800;
}

.legend-dot{
  width:9px;
  height:9px;
}

/* Card top labels */
.pocket-card-top{
  font-size:8.5px;
  font-weight:900;
  letter-spacing:.11em;
}

/* Player name and status area */
.pocket-card-info h3{
  font-size:17px;
  line-height:1.08;
  margin-bottom:7px;
}

.pocket-status{
  font-size:8.4px;
  padding:5px 8px;
}

.pocket-date{
  font-size:7.8px;
}

.pocket-card-footer{
  font-size:7.8px;
  line-height:1.25;
}

/* Want-list card actions */
.pocket-send-btn{
  font-size:8px;
  font-weight:950;
}

.pocket-want-remove{
  font-size:7px;
}

/* Binder chapter tabs and counts */
.binder-tabs button,
.binder-chapters button{
  font-size:12px;
}

.binder-tabs .count,
.binder-chapters .count{
  font-size:10px;
}

/* Page controls */
.binder-page-controls,
.page-number{
  font-size:11px;
}

/* Keep the larger text from crowding smaller screens */
@media(max-width:1100px){
  .sheet-legend{
    font-size:9.5px;
  }

  .pocket-card-info h3{
    font-size:16px;
  }

  .pocket-status{
    font-size:8px;
  }

  .pocket-date,
  .pocket-card-footer{
    font-size:7.5px;
  }
}


/* =========================================================
   v0.3.0 — SPORT BINDERS + CARD ZOOM
   ========================================================= */

.binder-tab-book.sport-book,
.binder-tab-book.projects-book{
  min-width:176px;
  padding-left:42px;
}

.sport-book-icon{
  position:absolute;
  left:18px;
  top:50%;
  transform:translateY(-50%);
  color:#dce6ef;
  font-size:16px;
  opacity:.88;
}

.binder-tab-book.active .sport-book-icon{color:#ffd45a}

.binder-tab-book.sport-baseball .binder-mini-spine{background:linear-gradient(90deg,#62470a,#e5b438,#654709)}
.binder-tab-book.sport-basketball .binder-mini-spine{background:linear-gradient(90deg,#713616,#e6813e,#713617)}
.binder-tab-book.sport-football .binder-mini-spine{background:linear-gradient(90deg,#46301b,#a1784e,#47311c)}
.binder-tab-book.sport-golf .binder-mini-spine{background:linear-gradient(90deg,#153d27,#54b578,#163e29)}
.binder-tab-book.sport-hockey .binder-mini-spine{background:linear-gradient(90deg,#173b55,#66add8,#173d58)}
.binder-tab-book.sport-other-sports .binder-mini-spine{background:linear-gradient(90deg,#413157,#a87bd6,#43315a)}

.binder-tab-book.projects-book .sport-book-icon{color:#eec14b}

/* Small dedicated zoom control. Clicking it never opens the address. */
.binder-pocket-card{position:relative}

.pocket-enlarge{
  position:absolute;
  right:7px;
  bottom:7px;
  z-index:8;
  width:29px;
  height:29px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid rgba(var(--tone-rgb),.72);
  border-radius:9px;
  background:rgba(4,9,14,.90);
  color:#fff;
  cursor:pointer;
  box-shadow:0 4px 12px rgba(0,0,0,.40),inset 0 1px rgba(255,255,255,.09);
}

.pocket-enlarge:hover{
  transform:scale(1.07);
  background:rgba(var(--tone-rgb),.18);
}

.pocket-enlarge svg{
  width:15px;
  height:15px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.pocket-card-footer,
.pocket-card-actions{
  padding-right:36px;
}

/* Full-size binder card viewer. */
.binder-card-preview-modal{
  width:min(850px,94vw);
  max-height:92vh;
  overflow:auto;
  padding:28px;
}

.preview-card-shell{
  display:grid;
  grid-template-columns:minmax(300px,370px) minmax(0,1fr);
  gap:30px;
  align-items:center;
}

.preview-sports-card{
  --tone:#6d7b89;
  --tone-rgb:109,123,137;
  width:100%;
  aspect-ratio:5 / 7;
  display:flex;
  flex-direction:column;
  padding:13px;
  border:4px solid var(--tone);
  border-radius:18px;
  background:
    radial-gradient(280px 150px at 100% 0%,rgba(var(--tone-rgb),.11),transparent 66%),
    linear-gradient(145deg,#151e27,#070c12 78%);
  box-shadow:
    0 0 0 1px rgba(var(--tone-rgb),.22),
    0 0 24px rgba(var(--tone-rgb),.16),
    0 24px 50px rgba(0,0,0,.45),
    inset 0 1px rgba(255,255,255,.08);
}

.preview-card-top{
  min-height:22px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  color:#b8c4d0;
  font-size:10px;
  font-weight:900;
  letter-spacing:.12em;
}

.preview-card-photo{
  flex:1 1 auto;
  min-height:0;
  margin:8px 0 13px;
  overflow:hidden;
  border:1px solid rgba(var(--tone-rgb),.36);
  border-radius:11px;
  background:#0b1219;
}

.preview-card-photo img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center 20%;
}

.preview-photo-placeholder{
  width:100%;
  height:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  color:#8da1b4;
}

.preview-photo-placeholder strong{
  font-size:72px;
  line-height:1;
}

.preview-photo-placeholder small{
  color:#718190;
  font-size:12px;
}

.preview-card-info h2{
  margin:0 0 10px;
  color:#fff;
  font-size:25px;
  line-height:1.05;
}

.preview-status-row{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

.preview-status{
  display:inline-flex;
  padding:7px 10px;
  border:1px solid var(--tone);
  border-radius:999px;
  color:var(--tone);
  font-size:10px;
  font-weight:950;
}

.preview-date{
  color:#99a8b6;
  font-size:10px;
}

.preview-items{
  min-height:18px;
  margin-top:9px;
  color:#b2bfcb;
  font-size:10px;
}

.preview-side h2{
  margin:0 0 12px;
  color:#fff;
  font-size:32px;
  line-height:1.05;
}

.preview-photo-credit{
  margin:18px 0 22px;
  padding-top:13px;
  border-top:1px solid #263442;
  color:#7d8b99;
  font-size:10px;
  line-height:1.45;
}

@media(max-width:760px){
  .preview-card-shell{grid-template-columns:1fr}

  .preview-sports-card{
    width:min(360px,86vw);
    margin:auto;
  }

  .preview-side h2{font-size:28px}
}


/* =========================================================
   v0.3.1 — Context-aware binder shelf / return navigation
   ========================================================= */
.binder-shelf .binder-tab-book{
  transition:transform .15s ease,border-color .15s ease,filter .15s ease;
}


/* =========================================================
   v0.3.2 — Personal photo refresh
   ========================================================= */
.preview-photo-actions{
  display:grid;
  gap:7px;
  margin-bottom:10px;
}

#previewRefreshPhoto{
  min-height:48px;
  font-size:11px;
}

.preview-refresh-message{
  min-height:16px;
  color:#9facb9;
  font-size:10px;
  line-height:1.35;
  text-align:center;
}

#previewRefreshPhoto:disabled{
  cursor:wait;
  opacity:.62;
}


/* =========================================================
   v0.4.0 — PROJECT BINDERS
   ========================================================= */

.project-status-strip{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  margin-top:2px;
}

.project-status-strip > div{
  min-height:50px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  border:1px solid #283746;
  border-radius:12px;
  background:linear-gradient(180deg,#111a23,#0b1117);
}

.project-status-strip strong{
  color:#fff;
  font-size:19px;
  line-height:1;
}

.project-status-strip span{
  margin-top:5px;
  color:#81909e;
  font-size:8px;
  font-weight:900;
  letter-spacing:.10em;
}

#projectNeedCount{color:#b6c1cc}
#projectWaitingCount{color:#e2bd46}
#projectCompleteCount{color:#65df72}
#projectRetryCount{color:#ee6c63}

.project-pocket-actions{
  width:100%;
  display:grid;
  grid-template-columns:1fr 1.35fr;
  gap:5px;
}

.project-pocket-actions .project-send-wide{
  grid-column:1 / -1;
}

.project-want-btn{
  min-height:28px;
  padding:5px 7px;
  border:1px solid #386ea8;
  border-radius:8px;
  background:linear-gradient(180deg,#17304a,#101d2a);
  color:#9bc9fa;
  font-size:7px;
  font-weight:950;
  letter-spacing:.02em;
  cursor:pointer;
}

.project-want-btn:hover{
  border-color:#62a7e9;
  color:#fff;
}

.project-pocket-actions .pocket-send-btn{
  min-height:28px;
  font-size:7px;
}

@media(max-width:760px){
  .project-status-strip{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}


/* =========================================================
   v0.5.0 — MAILING RESULTS + ADDRESS INTELLIGENCE
   ========================================================= */

.legend-dot.unsigned,
.tone-unsigned{
  --tone:#b98be8;
  --tone-rgb:185,139,232;
}

.status.unsigned{
  color:#d8b9ff;
  background:#241732;
}

.result-pocket-actions{
  width:100%;
}

.pocket-result-btn{
  width:100%;
  min-height:30px;
  border:1px solid #d6a928;
  border-radius:8px;
  background:linear-gradient(180deg,#34280d,#1d1709);
  color:#ffd861;
  font-size:7.4px;
  font-weight:950;
  letter-spacing:.035em;
  cursor:pointer;
}

.pocket-result-btn:hover{
  border-color:#ffd45a;
  color:#fff;
}

.result-preview-btn{
  margin-bottom:10px;
  border-color:#d4aa31;
  color:#ffe173;
  background:linear-gradient(180deg,#33270d,#171208);
}

.result-modal-card{
  width:min(650px,94vw);
  max-height:92vh;
  overflow:auto;
}

.result-outcome-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
  margin:20px 0 4px;
}

.result-outcome-grid button{
  min-height:76px;
  padding:13px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:5px;
  border:1px solid #354656;
  border-radius:14px;
  background:linear-gradient(180deg,#121c25,#0a1016);
  color:#dce5ed;
  cursor:pointer;
}

.result-outcome-grid button b{
  font-size:11px;
}

.result-outcome-grid button small{
  color:#8292a1;
  font-size:9px;
}

.result-outcome-grid button.selected{
  border-color:#e4b939;
  box-shadow:0 0 0 1px rgba(228,185,57,.18),0 0 18px rgba(228,185,57,.08);
}

.result-outcome-grid .result-success.selected{border-color:#5fe06b}
.result-outcome-grid .result-rts.selected{border-color:#ef5b67}
.result-outcome-grid .result-unsigned.selected{border-color:#b98be8}

.result-details{
  display:grid;
  gap:14px;
  margin-top:14px;
  padding-top:14px;
  border-top:1px solid #283745;
}

.result-date-label{
  display:grid;
  gap:7px;
}

.result-date-label span,
.result-detail-section .selected-items-label{
  color:#8f9dab;
  font-size:9px;
  font-weight:900;
  letter-spacing:.11em;
}

.result-date-label input,
.result-note{
  width:100%;
  box-sizing:border-box;
  border:1px solid #354655;
  border-radius:11px;
  background:#091017;
  color:#fff;
  padding:12px;
}

.result-note{
  min-height:78px;
  resize:vertical;
  font-family:inherit;
}

.result-detail-section{
  display:grid;
  gap:9px;
}

.result-signed-items{
  display:grid;
  gap:7px;
}

.result-signed-row{
  display:grid;
  grid-template-columns:1fr auto auto;
  align-items:center;
  gap:12px;
  padding:10px 12px;
  border:1px solid #2b3b49;
  border-radius:11px;
  background:#0b131a;
}

.result-signed-row b{
  display:block;
  color:#fff;
  font-size:11px;
}

.result-signed-row small{
  color:#7f8e9c;
  font-size:9px;
}

.result-signed-row > span{
  color:#7f8e9c;
  font-size:8px;
  font-weight:900;
}

.result-signed-qty{
  display:flex;
  align-items:center;
  gap:8px;
}

.result-signed-qty button{
  width:28px;
  height:28px;
  border:1px solid #435568;
  border-radius:8px;
  background:#111b24;
  color:#fff;
  cursor:pointer;
}

.result-signed-qty strong{
  min-width:18px;
  text-align:center;
  color:#fff;
}

.rts-reason-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
}

.rts-reason-grid button{
  min-height:42px;
  padding:8px;
  border:1px solid #3b4b59;
  border-radius:10px;
  background:#0b141c;
  color:#becbd6;
  font-size:8.5px;
  font-weight:900;
  cursor:pointer;
}

.rts-reason-grid button.selected{
  border-color:#ef5b67;
  color:#fff;
  background:#291218;
}

.result-info-note{
  padding:11px 12px;
  border:1px solid #344657;
  border-radius:11px;
  background:#0a1219;
  color:#a8b5c1;
  font-size:10px;
  line-height:1.45;
}

.premium-address-card .confidence-box strong{
  font-size:20px;
  line-height:1.08;
  word-break:normal;
}

.confidence.intelligence-available{color:#b9c6d2}
.confidence.intelligence-recent-success,
.confidence.intelligence-strong{color:#67e774}
.confidence.intelligence-mixed,
.confidence.intelligence-caution{color:#f3bd45}
.confidence.intelligence-likely-inactive{color:#f16a70}

.tag.amber{
  color:#f2c24f;
  border-color:rgba(242,194,79,.35);
  background:rgba(242,194,79,.08);
}

.tag.danger{
  color:#f17a80;
  border-color:rgba(241,122,128,.35);
  background:rgba(241,122,128,.08);
}

.mailings-intro{
  max-width:720px;
  color:#91a0ae;
  line-height:1.55;
}

.mailing-history-card{
  grid-template-columns:1fr auto;
}

.mailing-history-card .mini-actions{
  grid-column:1 / -1;
}

.mailing-result-btn,
.mailing-view-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:0 14px;
  border-radius:10px;
  font-size:9px;
  font-weight:950;
  text-decoration:none;
}

.mailing-result-btn{
  border:1px solid #d9ad2f;
  background:#2b210b;
  color:#ffd75a;
}

.mailing-view-btn{
  border:1px solid #3b4d5d;
  background:#0c141c;
  color:#c8d3dd;
}

.mailing-reason{
  margin-top:8px;
  color:#9eabb7;
  font-size:10px;
}

@media(max-width:640px){
  .result-outcome-grid,
  .rts-reason-grid{
    grid-template-columns:1fr;
  }

  .result-signed-row{
    grid-template-columns:1fr auto;
  }

  .result-signed-row > span{
    display:none;
  }
}


/* =========================================================
   v0.5.1 — RESULTS + INTELLIGENCE POLISH
   ========================================================= */

.result-modal-card{
  padding-top:25px;
  padding-bottom:22px;
}

.result-modal-card .eyebrow{font-size:11px}
.result-modal-card h2{font-size:30px}

.result-modal-card .modal-copy{
  font-size:14px;
  line-height:1.5;
}

.result-outcome-grid{
  margin-top:16px;
  gap:8px;
}

.result-outcome-grid button{
  min-height:70px;
  padding:11px;
}

.result-outcome-grid button b{font-size:12px}
.result-outcome-grid button small{font-size:10px}

.result-date-label span,
.result-detail-section .selected-items-label{
  font-size:10px;
}

.result-signed-row b{font-size:12px}

.result-signed-row small,
.result-info-note,
.preview-refresh-message{
  font-size:10.5px;
}

.rts-reason-grid button{font-size:9.5px}
.result-note{min-height:68px}

#resultSubmit{
  min-height:52px;
  position:sticky;
  bottom:0;
  z-index:4;
  box-shadow:0 -10px 24px rgba(5,10,15,.72);
}

/* Purple = delivered but unsigned. Red remains RTS/delivery failure. */
.tone-unsigned{
  --tone:#ba8ceb;
  --tone-rgb:186,140,235;
}

.status.unsigned{color:#dfc5ff}

.pocket-card-info h3{font-size:18px}
.pocket-status{font-size:9px}

.pocket-date,
.pocket-card-footer{
  font-size:8.4px;
}

/* Admin address review queue */
.admin-review-page{
  max-width:1180px;
  margin:0 auto;
}

.admin-review-heading{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:20px;
  margin-bottom:22px;
}

.admin-review-heading p{
  margin:6px 0 0;
  color:#8e9daa;
}

.admin-review-count{
  padding:10px 14px;
  border:1px solid #5f4920;
  border-radius:999px;
  color:#ffd45a;
  background:#241b08;
  font-size:10px;
  font-weight:950;
  letter-spacing:.08em;
}

.admin-review-list{
  display:grid;
  gap:18px;
}

.admin-review-card{
  padding:20px;
  border:1px solid #2b3a48;
  border-radius:18px;
  background:
    radial-gradient(500px 160px at 100% 0%,rgba(239,91,103,.05),transparent 70%),
    linear-gradient(180deg,#101922,#0a1016);
}

.admin-review-card-head{
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:flex-start;
}

.admin-review-card h2{
  margin:4px 0 7px;
  color:#fff;
  font-size:24px;
}

.review-address{
  color:#b8c4cf;
  font-size:13px;
}

.review-intel-badge{
  padding:8px 10px;
  border:1px solid #a64e56;
  border-radius:999px;
  color:#ff9198;
  background:#261216;
  font-size:9px;
  font-weight:950;
}

.review-metrics{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
  margin:16px 0;
}

.review-metrics > div{
  padding:12px;
  border:1px solid #273643;
  border-radius:12px;
  background:#0b131a;
}

.review-metrics strong{
  display:block;
  color:#fff;
  font-size:20px;
}

.review-metrics span{
  display:block;
  margin-top:4px;
  color:#7f8d9a;
  font-size:8px;
  font-weight:900;
  letter-spacing:.07em;
}

.review-columns{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
}

.review-columns section{
  padding:13px;
  border:1px solid #273643;
  border-radius:12px;
  background:#091118;
}

.review-columns h3{
  margin:0 0 10px;
  color:#d9e2ea;
  font-size:11px;
}

.review-evidence-row{
  display:grid;
  gap:3px;
  margin-bottom:8px;
  padding-bottom:8px;
  border-bottom:1px solid #1e2b35;
}

.review-evidence-row b{
  color:#f08087;
  font-size:10px;
}

.review-evidence-row span{
  color:#c5cfd8;
  font-size:10px;
}

.review-evidence-row small,
.alternate-address small,
.muted{
  color:#748390;
  font-size:9px;
}

.review-successes{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}

.review-success-pill{
  display:inline-flex;
  padding:6px 8px;
  border:1px solid #2c6f40;
  border-radius:999px;
  color:#7bec8b;
  background:#0d2114;
  font-size:9px;
}

.alternate-address{
  margin-bottom:8px;
  color:#c1ccd5;
  font-size:10px;
}

.review-admin-note{
  width:100%;
  box-sizing:border-box;
  min-height:64px;
  margin:14px 0 10px;
  padding:11px;
  border:1px solid #30414f;
  border-radius:11px;
  background:#081017;
  color:#fff;
  font-family:inherit;
  resize:vertical;
}

.review-actions{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}

.review-actions button{
  min-height:36px;
  padding:0 12px;
  border:1px solid #435565;
  border-radius:9px;
  background:#101a23;
  color:#d2dce5;
  font-size:8.5px;
  font-weight:950;
  cursor:pointer;
}

.review-actions button:hover{
  border-color:#d8ad31;
  color:#fff;
}

.review-actions .review-dismiss{margin-left:auto}

.admin-review-empty{
  display:grid;
  gap:6px;
  padding:32px;
  border:1px dashed #344653;
  border-radius:16px;
  text-align:center;
  color:#8896a3;
}

.admin-review-empty b{
  color:#dce4eb;
  font-size:16px;
}

@media(max-width:800px){
  .review-columns,
  .review-metrics{
    grid-template-columns:1fr;
  }

  .admin-review-heading,
  .admin-review-card-head{
    align-items:flex-start;
    flex-direction:column;
  }

  .review-actions .review-dismiss{
    margin-left:0;
  }
}


/* =========================================================
   v0.6.0 — USER ACCOUNTS
   ========================================================= */

.avatar{
  cursor:pointer;
  user-select:none;
}

.auth-body{
  min-height:100vh;
  margin:0;
  display:grid;
  place-items:center;
  background:
    radial-gradient(850px 500px at 16% 8%,rgba(221,171,44,.08),transparent 64%),
    radial-gradient(700px 420px at 100% 100%,rgba(64,103,139,.08),transparent 65%),
    #05090d;
}

.auth-shell{
  width:min(980px,92vw);
  min-height:590px;
  display:grid;
  grid-template-columns:1.05fr .95fr;
  overflow:hidden;
  border:1px solid #2e3c49;
  border-radius:26px;
  box-shadow:0 30px 85px rgba(0,0,0,.48);
}

.auth-brand-panel{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:42px;
  background:
    radial-gradient(420px 250px at 40% 25%,rgba(239,191,57,.08),transparent 68%),
    linear-gradient(145deg,#101820,#080d12);
}

.auth-brand{
  width:max-content;
  text-decoration:none;
}

.auth-brand-panel h1{
  max-width:460px;
  margin:10px 0 14px;
  color:#fff;
  font-size:48px;
  line-height:1;
}

.auth-brand-panel p{
  max-width:470px;
  color:#a6b3bf;
  font-size:15px;
  line-height:1.6;
}

.auth-brand-panel > small{
  color:#62717e;
  font-size:10px;
  letter-spacing:.04em;
}

.auth-card{
  padding:48px 42px;
  background:#0b1218;
}

.auth-card h2{
  margin:8px 0 26px;
  color:#fff;
  font-size:28px;
}

.auth-form{
  display:grid;
  gap:15px;
}

.auth-form label{
  display:grid;
  gap:7px;
}

.auth-form label > span{
  color:#8998a6;
  font-size:9px;
  font-weight:950;
  letter-spacing:.1em;
}

.auth-form label > small{
  color:#64727f;
  font-size:9px;
}

.auth-form input{
  width:100%;
  box-sizing:border-box;
  min-height:48px;
  padding:0 14px;
  border:1px solid #344552;
  border-radius:11px;
  outline:none;
  background:#071017;
  color:#fff;
  font:inherit;
}

.auth-form input:focus{
  border-color:#d2a938;
  box-shadow:0 0 0 2px rgba(210,169,56,.08);
}

.auth-message{
  min-height:18px;
  color:#ef7c83;
  font-size:10px;
  line-height:1.4;
}

.auth-switch{
  margin-top:22px;
  padding-top:18px;
  border-top:1px solid #26343f;
  color:#7e8e9b;
  font-size:11px;
}

.auth-switch a{
  color:#f0c64e;
  text-decoration:none;
  font-weight:900;
}

.account-page{
  max-width:1040px;
  margin:0 auto;
}

.account-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin-top:22px;
}

.account-card{
  padding:20px;
  border:1px solid #2c3a47;
  border-radius:17px;
  background:linear-gradient(180deg,#101922,#0a1016);
}

.account-card h2{
  margin:5px 0 13px;
  color:#fff;
  font-size:20px;
}

.account-identity-card{
  grid-column:1 / -1;
  display:flex;
  align-items:center;
  gap:17px;
}

.account-avatar-large,
.member-admin-avatar{
  flex:0 0 auto;
  display:grid;
  place-items:center;
  border:1px solid #536372;
  border-radius:50%;
  background:linear-gradient(145deg,#23313c,#0c141b);
  color:#fff;
  font-weight:950;
}

.account-avatar-large{
  width:72px;
  height:72px;
  font-size:22px;
}

.account-email{
  color:#82929f;
  font-size:12px;
}

.account-badges{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:10px;
}

.account-badges span,
.member-admin-role span{
  display:inline-flex;
  padding:6px 8px;
  border:1px solid #344757;
  border-radius:999px;
  color:#aebbc6;
  font-size:8px;
  font-weight:950;
  letter-spacing:.05em;
}

.account-badges .gold,
.member-admin-role .gold{
  color:#ffd55f;
  border-color:#6c5420;
  background:#241c08;
}

.account-form{
  display:grid;
  gap:9px;
}

.account-form input{
  min-height:43px;
  box-sizing:border-box;
  width:100%;
  padding:0 12px;
  border:1px solid #344552;
  border-radius:10px;
  background:#071017;
  color:#fff;
}

.logout-card{
  grid-column:1 / -1;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
}

.logout-card p{
  margin:4px 0 0;
  color:#7f8e9b;
  font-size:11px;
}

.account-logout-btn{
  min-height:42px;
  padding:0 18px;
  border:1px solid #784047;
  border-radius:10px;
  background:#241116;
  color:#ef8389;
  font-size:9px;
  font-weight:950;
  cursor:pointer;
}

.admin-members-page{
  max-width:1180px;
  margin:0 auto;
}

.admin-members-head{
  display:flex;
  justify-content:space-between;
  gap:24px;
  align-items:flex-end;
  margin-bottom:20px;
}

.admin-members-head p{
  max-width:720px;
  color:#8998a5;
}

.registration-toggle{
  display:flex;
  align-items:center;
  gap:9px;
  padding:10px 13px;
  border:1px solid #344653;
  border-radius:12px;
  background:#0c141b;
  cursor:pointer;
}

.registration-toggle input{
  width:18px;
  height:18px;
  accent-color:#dcb23d;
}

.registration-toggle span{
  display:grid;
  gap:2px;
}

.registration-toggle b{
  color:#dfe7ed;
  font-size:8px;
  letter-spacing:.08em;
}

.registration-toggle small{
  color:#8a98a4;
  font-size:9px;
}

.member-admin-list{
  display:grid;
  gap:11px;
}

.member-admin-card{
  display:grid;
  grid-template-columns:minmax(250px,1.4fr) auto minmax(300px,1fr) auto;
  align-items:center;
  gap:18px;
  padding:16px;
  border:1px solid #2b3a47;
  border-radius:16px;
  background:linear-gradient(180deg,#101820,#0a1016);
}

.member-admin-identity{
  display:flex;
  align-items:center;
  gap:12px;
}

.member-admin-avatar{
  width:46px;
  height:46px;
  font-size:13px;
}

.member-admin-identity h2{
  margin:0 0 4px;
  color:#fff;
  font-size:16px;
}

.member-admin-identity div > div{
  color:#a5b2bd;
  font-size:10px;
}

.member-admin-identity small{
  display:block;
  margin-top:4px;
  color:#687784;
  font-size:8.5px;
}

.member-admin-role{
  display:grid;
  gap:5px;
  justify-items:start;
}

.member-admin-role .active{
  color:#78e786;
  border-color:#2d7241;
}

.member-admin-role .inactive{
  color:#ef7f86;
  border-color:#754147;
}

.member-admin-stats{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:6px;
}

.member-admin-stats div{
  padding:8px;
  border:1px solid #273641;
  border-radius:9px;
  background:#091118;
  text-align:center;
}

.member-admin-stats strong{
  display:block;
  color:#fff;
  font-size:15px;
}

.member-admin-stats span{
  color:#72818e;
  font-size:7px;
  font-weight:950;
}

.member-admin-actions button{
  min-height:35px;
  padding:0 10px;
  border:1px solid #4c5e6d;
  border-radius:9px;
  background:#101921;
  color:#d0dae2;
  font-size:7.5px;
  font-weight:950;
  cursor:pointer;
}

.owner-lock{
  color:#877236;
  font-size:8px;
  font-weight:950;
}

@media(max-width:900px){
  .auth-shell{
    grid-template-columns:1fr;
  }

  .auth-brand-panel{
    min-height:220px;
  }

  .auth-brand-panel h1{
    font-size:38px;
  }

  .member-admin-card{
    grid-template-columns:1fr;
  }

  .member-admin-stats{
    grid-template-columns:repeat(4,1fr);
  }
}

@media(max-width:680px){
  .account-grid{
    grid-template-columns:1fr;
  }

  .account-identity-card,
  .logout-card{
    grid-column:auto;
  }

  .logout-card{
    align-items:flex-start;
    flex-direction:column;
  }

  .admin-members-head{
    align-items:flex-start;
    flex-direction:column;
  }

  .member-admin-stats{
    grid-template-columns:repeat(2,1fr);
  }

  .auth-card,
  .auth-brand-panel{
    padding:28px 24px;
  }
}


/* =========================================================
   v0.6.1 — MEMBER EXPERIENCE POLISH
   ========================================================= */

/* Account */
.required-note{
  display:inline-flex;
  margin-left:7px;
  padding:4px 6px;
  border:1px solid #68521d;
  border-radius:999px;
  color:#f0c64e;
  background:#221a07;
  font-size:7px;
  font-weight:950;
  letter-spacing:.08em;
  vertical-align:middle;
}

.account-card-copy{
  margin:-5px 0 13px;
  color:#81909d;
  font-size:10px;
  line-height:1.5;
}

.return-address-card{
  grid-column:1 / -1;
}

.return-address-form{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px 12px;
}

.return-field{
  display:grid;
  gap:6px;
}

.return-field-wide{
  grid-column:1 / -1;
}

.return-field span{
  color:#8494a2;
  font-size:8px;
  font-weight:950;
  letter-spacing:.08em;
}

.return-form-message{
  grid-column:1 / -1;
  margin-top:2px;
}

.return-save-btn{
  grid-column:1 / -1;
  justify-self:start;
  min-width:210px;
  min-height:46px;
  padding:10px 18px;
}

/* Player page action flow */
.profile-action-stack{
  margin:16px 0 15px;
}

.profile-primary-actions{
  grid-template-columns:minmax(260px,.9fr) minmax(390px,1.35fr);
  margin:0;
}

.profile-secondary-actions{
  display:flex;
  justify-content:center;
  margin-top:9px;
}

.profile-print-btn{
  min-width:178px;
  min-height:34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:7px 16px;
  border:1px solid #455665;
  border-radius:12px;
  background:linear-gradient(180deg,#151f28,#0b1218);
  color:#c9d3dc;
  box-shadow:inset 0 1px rgba(255,255,255,.07);
  cursor:pointer;
}

.profile-print-btn span{
  color:#8ea0af;
  font-size:11px;
}

.profile-print-btn b{
  font-size:9px;
  letter-spacing:.07em;
}

.profile-print-btn:hover{
  border-color:#6b7c8b;
  color:#fff;
}

.profile-print-btn:disabled{
  opacity:.42;
  cursor:not-allowed;
}

/* Tiny Binder finder — outside the binder, directly above the legend area. */
.binder-find-bar{
  width:min(860px,100%);
  margin:4px auto 7px;
  display:flex;
  justify-content:flex-end;
  position:relative;
  z-index:24;
}

.binder-find-shell{
  width:210px;
  position:relative;
}

.binder-find-shell > input{
  width:100%;
  height:32px;
  box-sizing:border-box;
  padding:0 30px 0 29px;
  border:1px solid #344654;
  border-radius:10px;
  outline:none;
  background:#081017;
  color:#e7edf2;
  font-size:10px;
}

.binder-find-shell > input:focus{
  border-color:#687b8d;
  box-shadow:0 0 0 2px rgba(104,123,141,.08);
}

.binder-find-shell > input::placeholder{
  color:#667684;
}

.binder-find-icon{
  position:absolute;
  left:10px;
  top:50%;
  transform:translateY(-50%);
  z-index:2;
  color:#8799a8;
  font-size:13px;
  pointer-events:none;
}

.binder-find-clear{
  position:absolute;
  right:6px;
  top:50%;
  transform:translateY(-50%);
  z-index:3;
  width:22px;
  height:22px;
  padding:0;
  border:0;
  background:transparent;
  color:#758795;
  cursor:pointer;
  font-size:15px;
}

.binder-find-results{
  position:absolute;
  top:37px;
  right:0;
  width:250px;
  overflow:hidden;
  border:1px solid #344654;
  border-radius:11px;
  background:#091118;
  box-shadow:0 15px 35px rgba(0,0,0,.48);
}

.binder-find-results button{
  width:100%;
  min-height:40px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:8px 11px;
  border:0;
  border-bottom:1px solid #1e2b35;
  background:transparent;
  color:#e3eaf0;
  text-align:left;
  cursor:pointer;
}

.binder-find-results button:last-child{
  border-bottom:0;
}

.binder-find-results button:hover{
  background:#101c25;
}

.binder-find-results button span{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:10px;
  font-weight:850;
}

.binder-find-results button small{
  flex:0 0 auto;
  color:#7e8d99;
  font-size:8px;
}

.binder-find-empty{
  padding:11px;
  color:#778692;
  font-size:9px;
  text-align:center;
}

.binder-pocket.binder-search-hit .binder-pocket-card{
  animation:binderSearchPulse .72s ease-in-out 3;
}

@keyframes binderSearchPulse{
  0%,100%{
    transform:translateY(0);
    box-shadow:
      0 0 0 1px rgba(var(--tone-rgb),.22),
      0 6px 18px rgba(0,0,0,.34);
  }
  50%{
    transform:translateY(-3px);
    box-shadow:
      0 0 0 3px rgba(255,211,82,.78),
      0 0 24px rgba(255,211,82,.30),
      0 9px 22px rgba(0,0,0,.42);
  }
}

@media(max-width:760px){
  .profile-primary-actions{
    grid-template-columns:1fr;
  }

  .profile-secondary-actions{
    justify-content:flex-start;
  }

  .return-address-form{
    grid-template-columns:1fr;
  }

  .return-field-wide,
  .return-form-message,
  .return-save-btn{
    grid-column:auto;
  }

  .binder-find-bar{
    padding:0 8px;
  }
}


/* =========================================================
   v0.6.2 — MOBILE + PWA POLISH
   Desktop layouts remain unchanged. These rules activate on
   tablets/phones and in installed standalone mode.
   ========================================================= */

html{
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}

button,
a,
input,
textarea{
  -webkit-tap-highlight-color:transparent;
}

.pwa-standalone body{
  min-height:100dvh;
}

.pwa-standalone .topbar{
  padding-top:env(safe-area-inset-top);
}

/* Make modal content usable on short phone screens without trapping controls. */
.modal{
  overflow-y:auto;
  overscroll-behavior:contain;
}

.modal-card{
  max-height:calc(100dvh - 32px);
  overflow-y:auto;
  overscroll-behavior:contain;
}

.modal-close{
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  padding:0;
  line-height:1;
  cursor:pointer;
}

/* Tablet */
@media(max-width:900px){
  .page,
  .profile-page,
  .binder-page{
    padding-bottom:calc(72px + env(safe-area-inset-bottom));
  }

  .metal-btn{
    touch-action:manipulation;
  }

  .admin-review-card,
  .member-admin-card,
  .account-card{
    overflow-wrap:anywhere;
  }
}

/* Phone */
@media(max-width:760px){
  body{
    min-width:0;
    overflow-x:hidden;
  }

  /* Two-row mobile header. The nav remains horizontally scrollable so
     we don't hide or collapse features behind a hamburger menu. */
  .topbar{
    min-height:0;
    padding:
      max(9px, env(safe-area-inset-top))
      12px
      0;
    align-items:center;
    row-gap:5px;
    column-gap:12px;
    background:rgba(5,8,13,.98);
  }

  .brand{
    margin-right:auto;
    font-size:19px;
    line-height:40px;
  }

  .avatar{
    width:40px;
    height:40px;
    flex:0 0 40px;
  }

  .topbar nav{
    order:3;
    width:calc(100% + 24px);
    margin:0 -12px;
    padding:0 12px;
    gap:20px;
    overflow-x:auto;
    overflow-y:hidden;
    border-top:1px solid #15202a;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }

  .topbar nav::-webkit-scrollbar{
    display:none;
  }

  .topbar nav a{
    flex:0 0 auto;
    min-height:44px;
    display:flex;
    align-items:center;
    padding:12px 0 9px;
    white-space:nowrap;
    font-size:13px;
  }

  .page,
  .profile-page{
    padding-top:28px;
    padding-left:14px;
    padding-right:14px;
  }

  .hero h1,
  .page h1{
    font-size:clamp(34px,10vw,42px);
  }

  .eyebrow{
    font-size:10px;
  }

  /* Search */
  .hero p{
    font-size:15px;
  }

  .search-shell{
    margin-top:22px;
    padding:6px;
    gap:6px;
    border-radius:15px;
  }

  .search-shell input,
  .binder-input,
  .tracking-row input,
  .account-form input,
  .auth-form input,
  .result-date-label input,
  .result-note{
    font-size:16px; /* prevents iOS focus zoom */
  }

  .search-shell input{
    min-height:48px;
    padding:10px 12px;
  }

  .search-shell button{
    min-height:46px;
  }

  .pill{
    min-height:42px;
    padding:9px 13px;
  }

  .results-shell{
    margin-top:20px;
    padding:14px;
    border-radius:18px;
  }

  .results-head{
    align-items:flex-start;
    gap:10px;
  }

  .result-row{
    grid-template-columns:minmax(0,1fr) 18px;
    gap:7px 10px;
    padding:16px 10px;
    min-height:72px;
  }

  .result-row .availability{
    grid-column:1 / -1;
    font-size:11px;
  }

  .result-row > b{
    grid-column:2;
    grid-row:1;
    align-self:center;
  }

  /* Player profile */
  .profile-page .back{
    min-height:40px;
    margin-left:0;
    display:inline-flex;
    align-items:center;
  }

  .premium-profile-card{
    margin-top:10px;
    padding:20px 12px 18px;
    border-radius:22px;
  }

  .premium-profile-card .profile-top{
    padding:0 4px 16px;
  }

  .premium-profile-card .profile-top h1{
    font-size:clamp(34px,11vw,44px);
  }

  .premium-profile-card .sport-label{
    margin-top:8px;
    font-size:11px;
  }

  .premium-address-card{
    padding:18px 16px;
    border-radius:19px;
    gap:15px;
  }

  .premium-address-card .address-title-row{
    gap:10px;
  }

  .premium-address-card .address-title-row h2{
    font-size:17px;
  }

  .premium-address-card .confidence{
    padding:6px 9px;
    font-size:10px;
  }

  .premium-address-card .address-text{
    margin:17px 0;
    font-size:19px;
    line-height:1.48;
  }

  .premium-address-card .privacy-note{
    font-size:11px;
  }

  .premium-address-card .confidence-box{
    padding:15px;
    border-radius:16px;
  }

  .premium-address-card .confidence-box strong{
    font-size:24px;
  }

  .profile-action-stack{
    margin:12px 0 14px;
  }

  .profile-primary-actions{
    gap:9px;
  }

  .premium-actions .metal-btn{
    min-height:64px;
    border-radius:18px;
    padding:11px 14px;
    gap:11px;
  }

  .premium-actions .button-icon{
    font-size:22px;
  }

  .premium-actions .metal-btn b{
    font-size:14px;
  }

  .premium-actions .metal-btn small{
    font-size:10px;
  }

  .profile-secondary-actions{
    justify-content:center;
    margin-top:8px;
  }

  .profile-print-btn{
    min-height:44px;
    min-width:160px;
  }

  .premium-accordions button{
    min-height:70px;
    padding:14px 15px;
    border-radius:16px;
  }

  .accordion-copy b{
    font-size:15px;
  }

  .accordion-copy small{
    font-size:11px;
  }

  .chevron{
    font-size:27px;
  }

  /* General send/result modals */
  .modal{
    place-items:start center;
    padding:
      max(10px, env(safe-area-inset-top))
      9px
      max(10px, env(safe-area-inset-bottom));
  }

  .modal-card{
    width:100%;
    max-height:calc(100dvh - 20px);
    padding:22px 15px 18px;
    border-radius:20px;
  }

  .modal-card h2,
  .binder-modal-card h2,
  .result-modal-card h2{
    padding-right:36px;
    font-size:clamp(24px,8vw,30px);
  }

  .item-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
  }

  .item-grid button,
  .qty-grid button,
  .mini-actions button{
    min-height:48px;
    padding:10px;
  }

  .qty-grid{
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:6px;
  }

  .tracking-row{
    gap:8px;
  }

  .tracking-row input{
    min-height:48px;
  }

  /* Binder keeps the page metaphor but cards become readable.
     Nine cards remain a "page"; they simply flow in two columns. */
  .binder-page{
    padding:23px 8px calc(66px + env(safe-area-inset-bottom));
  }

  .binder-heading{
    margin-bottom:16px;
    gap:14px;
  }

  .binder-heading h1{
    font-size:37px;
  }

  .binder-heading p{
    font-size:13px;
    line-height:1.45;
  }

  .binder-create-btn{
    min-height:48px;
    border-radius:15px;
  }

  .binder-shelf-shell{
    margin-bottom:10px;
  }

  .binder-tab-book{
    min-width:150px;
    min-height:58px;
  }

  .binder-tab-book.sport-book,
  .binder-tab-book.projects-book{
    min-width:154px;
  }

  .binder-tabs{
    border-radius:14px;
    padding:4px;
    gap:4px;
  }

  .binder-tabs button{
    min-height:44px;
    padding:8px 10px;
    font-size:10px;
  }

  .project-binder-header{
    padding:16px;
    border-radius:17px;
  }

  .project-header-actions{
    display:grid;
    grid-template-columns:1fr;
    width:100%;
  }

  .project-header-actions .metal-btn{
    width:100%;
    min-height:48px;
  }

  .project-status-strip{
    grid-template-columns:repeat(2,1fr);
  }

  /* Mobile binder finder is just an icon-sized control until tapped. */
  .binder-find-bar{
    min-height:36px;
    padding:0 5px;
    margin:2px auto 6px;
  }

  .binder-find-shell{
    width:36px;
    transition:width .18s ease;
  }

  .binder-find-shell:focus-within{
    width:min(220px,calc(100vw - 34px));
  }

  .binder-find-shell > input{
    height:36px;
    padding-left:31px;
    font-size:16px;
  }

  .binder-find-shell:not(:focus-within) > input{
    padding-right:0;
    color:transparent;
    caret-color:transparent;
  }

  .binder-find-shell:not(:focus-within) > input::placeholder{
    color:transparent;
  }

  .binder-find-results{
    width:min(270px,calc(100vw - 24px));
    top:41px;
  }

  .binder-find-results button{
    min-height:48px;
  }

  .binder-viewer{
    width:100%;
    padding:9px 7px 9px 31px;
    border-radius:13px 20px 20px 13px;
  }

  .binder-spine{
    top:11px;
    bottom:11px;
    left:6px;
    width:20px;
    border-radius:8px;
  }

  .binder-spine span{
    width:14px;
    height:14px;
    border-width:2px;
  }

  .binder-sheet-wrap{
    padding:8px;
    border-radius:15px;
  }

  .binder-sheet-head{
    padding:0 1px 9px;
    gap:7px;
  }

  .binder-sheet-head h2{
    font-size:18px;
  }

  .sheet-legend{
    width:100%;
    justify-content:flex-start;
    gap:6px;
    font-size:8px;
    line-height:1.3;
  }

  .legend-dot{
    width:8px;
    height:8px;
    margin-left:4px;
  }

  .pocket-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;
  }

  .binder-pocket{
    aspect-ratio:5 / 7;
    padding:4px;
    border-radius:8px 8px 12px 12px;
  }

  .binder-pocket-card{
    padding:7px;
    border-radius:7px 7px 10px 10px;
  }

  .pocket-card-top{
    font-size:6.8px;
  }

  .pocket-card-info h3,
  .pocket-card-center h3{
    font-size:13px;
  }

  .pocket-status{
    font-size:7px;
    padding:4px 5px;
  }

  .pocket-date,
  .pocket-card-footer{
    font-size:6.7px;
  }

  .pocket-enlarge{
    width:36px;
    height:36px;
    right:5px;
    bottom:5px;
  }

  .pocket-result-btn,
  .pocket-send-btn{
    min-height:36px;
    font-size:7px;
  }

  .binder-page-controls{
    grid-template-columns:1fr auto 1fr;
    gap:5px;
    margin-top:10px;
  }

  .page-turn{
    min-height:44px;
    padding:0 8px;
    font-size:8px;
  }

  .page-number{
    align-self:center;
    font-size:8px;
    white-space:nowrap;
  }

  /* Enlarged binder card becomes a true phone-first card view. */
  .binder-card-preview-modal{
    width:100%;
    max-height:calc(100dvh - 18px);
    padding:18px 10px 14px;
  }

  .preview-card-shell{
    display:flex;
    flex-direction:column;
    gap:17px;
  }

  .preview-sports-card{
    width:min(360px,calc(100vw - 42px));
    max-height:70dvh;
    margin:0 auto;
  }

  .preview-side{
    width:100%;
  }

  .preview-side h2{
    font-size:26px;
  }

  #previewRefreshPhoto,
  #previewReportResult,
  #previewOpenPlayer{
    min-height:52px;
  }

  /* Lists */
  .simple-row,
  .mailing-card{
    padding:15px;
    border-radius:15px;
  }

  .simple-row{
    grid-template-columns:minmax(0,1fr) auto 14px;
    gap:8px;
    min-height:62px;
    align-items:center;
  }

  .mailing-history-card{
    grid-template-columns:1fr;
  }

  .mailing-history-card .status{
    justify-self:start;
  }

  .mailing-history-card .mini-actions{
    grid-column:1;
  }

  .mailing-result-btn,
  .mailing-view-btn{
    min-height:44px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex:1;
  }

  /* Account */
  .account-page{
    padding-top:27px;
  }

  .account-grid{
    gap:10px;
  }

  .account-card{
    padding:16px;
    border-radius:14px;
  }

  .account-identity-card{
    align-items:center;
  }

  .account-avatar-large{
    width:58px;
    height:58px;
  }

  .account-form input{
    min-height:48px;
  }

  .account-form .metal-btn,
  .return-save-btn{
    min-height:48px;
    width:100%;
    justify-self:stretch;
  }

  .logout-card{
    gap:12px;
  }

  .account-logout-btn{
    min-height:46px;
    width:100%;
  }

  /* Admin remains fully usable from a phone. */
  .admin-members-page,
  .admin-review-page{
    padding-top:28px;
  }

  .registration-toggle{
    min-height:48px;
  }

  .member-admin-card,
  .admin-review-card{
    padding:14px;
    border-radius:14px;
  }

  .member-admin-stats{
    grid-template-columns:repeat(2,1fr);
  }

  .member-admin-actions button,
  .review-actions button{
    min-height:44px;
  }

  .review-actions{
    display:grid;
    grid-template-columns:1fr;
  }

  .review-actions button{
    width:100%;
  }

  .review-actions .review-dismiss{
    margin-left:0;
  }

  .import-card{
    padding:17px;
    border-radius:16px;
  }

  .import-card input[type="file"]{
    max-width:100%;
  }

  /* Authentication screens */
  .auth-body{
    display:block;
    min-height:100dvh;
    padding:
      max(12px, env(safe-area-inset-top))
      10px
      max(12px, env(safe-area-inset-bottom));
  }

  .auth-shell{
    width:100%;
    min-height:0;
    border-radius:20px;
  }

  .auth-brand-panel{
    min-height:165px;
    padding:24px 20px;
  }

  .auth-brand-panel h1{
    font-size:34px;
  }

  .auth-card{
    padding:26px 20px;
  }

  .auth-form input{
    min-height:50px;
  }

  .auth-form .metal-btn{
    min-height:52px;
  }
}

/* Very narrow phones: one card across instead of shrinking the card. */
@media(max-width:360px){
  .pocket-grid{
    grid-template-columns:1fr;
  }

  .binder-pocket{
    width:min(250px,100%);
    justify-self:center;
  }

  .qty-grid{
    grid-template-columns:repeat(3,1fr);
  }
}

/* Landscape phone: keep content usable without huge vertical cards. */
@media(max-height:520px) and (orientation:landscape){
  .modal{
    padding:7px;
  }

  .modal-card,
  .binder-card-preview-modal,
  .result-modal-card{
    max-height:calc(100dvh - 14px);
  }

  .preview-card-shell{
    display:grid;
    grid-template-columns:minmax(210px,310px) minmax(0,1fr);
    align-items:start;
  }

  .preview-sports-card{
    width:100%;
    max-height:none;
  }
}


/* =========================================================
   v0.7.0 — COMMUNITY RESULTS
   ========================================================= */

.community-page{
  max-width:1240px;
}

.community-hero{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:28px;
  margin-bottom:24px;
}

.community-hero h1{
  margin:10px 0 8px;
}

.community-hero h1 span{
  color:var(--gold);
}

.community-hero p{
  margin:0;
  color:var(--muted);
  font-size:16px;
  line-height:1.5;
}

.community-privacy{
  width:290px;
  flex:0 0 290px;
  padding:13px 15px;
  border:1px solid #263442;
  border-radius:14px;
  background:#091018;
}

.community-privacy b{
  display:block;
  color:#9eb0bf;
  font-size:8px;
  letter-spacing:.12em;
  margin-bottom:4px;
}

.community-privacy span{
  display:block;
  color:#687886;
  font-size:9px;
  line-height:1.45;
}

.community-stats{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
  margin-bottom:14px;
}

.community-stats article{
  min-height:118px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:17px;
  border:1px solid #263441;
  border-radius:17px;
  background:linear-gradient(180deg,#0c141d,#080e15);
}

.community-stats article > span{
  color:#778896;
  font-size:8px;
  font-weight:950;
  letter-spacing:.12em;
}

.community-stats article strong{
  margin:4px 0 3px;
  font-size:31px;
  line-height:1;
}

.community-stats article small{
  color:#62717d;
  font-size:7px;
  font-weight:850;
  letter-spacing:.08em;
}

.community-stat-success strong{color:var(--green)}
.community-stat-rts strong{color:var(--red)}
.community-stat-unsigned strong{color:var(--purple)}
.community-stat-days strong{color:var(--gold)}

.community-controls{
  padding:14px;
  border:1px solid #202d39;
  border-radius:18px;
  background:#081019;
}

.community-search-wrap{
  width:min(380px,100%);
  height:42px;
  position:relative;
  margin-bottom:12px;
}

.community-search-wrap input{
  width:100%;
  height:100%;
  padding:0 38px 0 38px;
  border:1px solid #334452;
  border-radius:12px;
  outline:0;
  background:#050b11;
  color:#fff;
  font-size:13px;
}

.community-search-wrap input:focus{
  border-color:#6c7f90;
  box-shadow:0 0 0 2px rgba(108,127,144,.08);
}

.community-search-icon{
  position:absolute;
  left:13px;
  top:50%;
  transform:translateY(-50%);
  z-index:2;
  color:#8496a5;
  font-size:16px;
}

.community-search-clear{
  position:absolute;
  right:8px;
  top:50%;
  transform:translateY(-50%);
  width:28px;
  height:28px;
  padding:0;
  border:0;
  background:transparent;
  color:#788997;
  cursor:pointer;
  font-size:17px;
}

.community-sport-pills{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-bottom:12px;
}

.community-sport-pills button,
.community-outcomes button{
  min-height:34px;
  padding:7px 12px;
  border:1px solid #2c3b48;
  border-radius:999px;
  background:#0b131b;
  color:#aebac5;
  cursor:pointer;
  font-size:8px;
  font-weight:950;
  letter-spacing:.06em;
}

.community-sport-pills button.active{
  border-color:#8a681a;
  background:#1a160b;
  color:#ffd45a;
}

.community-filter-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding-top:11px;
  border-top:1px solid #1d2934;
}

.community-outcomes{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}

.community-outcomes button{
  border-radius:9px;
}

.community-outcomes button.active{
  border-color:#607384;
  background:#17212a;
  color:#fff;
}

.community-outcomes button[data-outcome="success"].active{
  border-color:#347f43;
  color:var(--green);
}

.community-outcomes button[data-outcome="rts"].active{
  border-color:#8a3945;
  color:var(--red);
}

.community-outcomes button[data-outcome="unsigned"].active{
  border-color:#773b91;
  color:var(--purple);
}

.community-window{
  display:flex;
  align-items:center;
  gap:8px;
  flex:0 0 auto;
}

.community-window span{
  color:#687a88;
  font-size:8px;
  font-weight:950;
  letter-spacing:.1em;
}

.community-window select{
  height:34px;
  padding:0 29px 0 10px;
  border:1px solid #334452;
  border-radius:9px;
  outline:0;
  background:#0a121a;
  color:#c9d3dc;
  font-size:9px;
  font-weight:900;
}

.community-grid{
  display:grid;
  grid-template-columns:minmax(340px,.82fr) minmax(500px,1.35fr);
  gap:14px;
  margin-top:14px;
}

.community-panel{
  min-width:0;
  overflow:hidden;
  border:1px solid #202d39;
  border-radius:20px;
  background:#081019cf;
}

.community-panel-head{
  min-height:87px;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  padding:18px 19px 15px;
  border-bottom:1px solid #1c2934;
}

.community-panel-head h2{
  margin:5px 0 0;
  font-size:22px;
}

.community-panel-note{
  color:#657582;
  font-size:8px;
  text-align:right;
}

.community-signing-list,
.community-result-feed{
  min-height:210px;
}

.community-signer{
  width:100%;
  min-height:75px;
  display:grid;
  grid-template-columns:35px minmax(0,1fr) auto 15px;
  align-items:center;
  gap:10px;
  padding:10px 14px;
  border:0;
  border-bottom:1px solid #1b2731;
  background:transparent;
  color:#fff;
  text-align:left;
  cursor:pointer;
}

.community-signer:last-child{
  border-bottom:0;
}

.community-signer:hover,
.community-result-row:hover{
  background:#0f1922;
}

.community-signer-rank{
  color:#40515e;
  font-size:12px;
  font-weight:950;
  font-variant-numeric:tabular-nums;
}

.community-signer-main{
  min-width:0;
}

.community-signer-main b{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:14px;
}

.community-signer-main small{
  display:block;
  margin-top:4px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#758592;
  font-size:8px;
}

.community-intel{
  display:inline-flex;
  align-items:center;
  min-height:25px;
  padding:5px 8px;
  border:1px solid #3b4a57;
  border-radius:999px;
  color:#b9c4cd;
  background:#101820;
  font-size:7px;
  font-weight:950;
  letter-spacing:.055em;
  white-space:nowrap;
}

.community-intel.recent-success,
.community-intel.strong{
  border-color:#326f3b;
  color:#74e77e;
  background:#0d1c11;
}

.community-intel.mixed{
  border-color:#8d6920;
  color:#f0bd43;
  background:#1b160a;
}

.community-intel.caution{
  border-color:#9c5c28;
  color:#ffae61;
  background:#201409;
}

.community-intel.likely-inactive{
  border-color:#883641;
  color:#ff7e89;
  background:#200d11;
}

.community-open{
  color:#586b7a;
  font-size:19px;
}

.community-result-row{
  width:100%;
  min-height:77px;
  display:grid;
  grid-template-columns:5px minmax(150px,.8fr) minmax(210px,1.3fr) 75px 13px;
  align-items:center;
  gap:12px;
  padding:11px 14px;
  border:0;
  border-bottom:1px solid #1b2731;
  background:transparent;
  color:#fff;
  text-align:left;
  cursor:pointer;
}

.community-result-row:last-child{
  border-bottom:0;
}

.community-result-mark{
  width:4px;
  height:34px;
  border-radius:999px;
  background:#667784;
}

.community-result-row.success .community-result-mark{
  background:var(--green);
  box-shadow:0 0 12px rgba(101,230,111,.18);
}

.community-result-row.rts .community-result-mark{
  background:var(--red);
  box-shadow:0 0 12px rgba(255,105,120,.17);
}

.community-result-row.unsigned .community-result-mark{
  background:var(--purple);
  box-shadow:0 0 12px rgba(219,123,255,.17);
}

.community-result-person,
.community-result-status{
  min-width:0;
}

.community-result-person b,
.community-result-status b{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.community-result-person b{
  font-size:13px;
}

.community-result-person small{
  display:block;
  margin-top:3px;
  color:#6f808d;
  font-size:8px;
}

.community-result-status b{
  font-size:8px;
  letter-spacing:.07em;
}

.community-result-row.success .community-result-status b{color:var(--green)}
.community-result-row.rts .community-result-status b{color:var(--red)}
.community-result-row.unsigned .community-result-status b{color:var(--purple)}

.community-result-status small{
  display:block;
  margin-top:4px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#84939e;
  font-size:8px;
}

.community-result-date{
  color:#7c8c98;
  font-size:8px;
  text-align:right;
  white-space:nowrap;
}

.community-loading,
.community-empty{
  min-height:205px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:30px;
  color:#677785;
  text-align:center;
  font-size:10px;
}

.community-empty b{
  margin-bottom:5px;
  color:#b6c1ca;
  font-size:12px;
}

.community-empty.error b{
  color:var(--red);
}

@media(max-width:900px){
  .community-stats{
    grid-template-columns:repeat(3,1fr);
  }

  .community-grid{
    grid-template-columns:1fr;
  }
}

@media(max-width:760px){
  .community-page{
    padding-top:28px;
  }

  .community-hero{
    display:block;
  }

  .community-hero h1{
    font-size:40px;
  }

  .community-hero p{
    font-size:13px;
  }

  .community-privacy{
    width:100%;
    margin-top:14px;
  }

  .community-stats{
    grid-template-columns:repeat(2,1fr);
    gap:7px;
  }

  .community-stats article{
    min-height:97px;
    padding:13px;
  }

  .community-stats article strong{
    font-size:26px;
  }

  .community-stats article:first-child{
    grid-column:1 / -1;
  }

  .community-controls{
    padding:11px;
  }

  .community-search-wrap{
    width:100%;
    height:46px;
  }

  .community-search-wrap input{
    font-size:16px;
  }

  .community-sport-pills{
    flex-wrap:nowrap;
    overflow-x:auto;
    margin-left:-11px;
    margin-right:-11px;
    padding:0 11px 4px;
    scrollbar-width:none;
  }

  .community-sport-pills::-webkit-scrollbar{
    display:none;
  }

  .community-sport-pills button{
    flex:0 0 auto;
    min-height:40px;
  }

  .community-filter-row{
    display:block;
  }

  .community-outcomes{
    flex-wrap:nowrap;
    overflow-x:auto;
    margin:0 -11px;
    padding:0 11px 8px;
    scrollbar-width:none;
  }

  .community-outcomes::-webkit-scrollbar{
    display:none;
  }

  .community-outcomes button{
    flex:0 0 auto;
    min-height:40px;
  }

  .community-window{
    justify-content:flex-end;
    margin-top:9px;
  }

  .community-window select{
    min-height:40px;
  }

  .community-grid{
    gap:10px;
    margin-top:10px;
  }

  .community-panel{
    border-radius:17px;
  }

  .community-panel-head{
    min-height:78px;
    padding:15px;
  }

  .community-panel-head h2{
    font-size:20px;
  }

  .community-panel-note{
    max-width:115px;
  }

  .community-signer{
    min-height:73px;
    grid-template-columns:27px minmax(0,1fr) 13px;
    padding:10px 11px;
  }

  .community-signer .community-intel{
    grid-column:2;
    justify-self:start;
    margin-top:-5px;
  }

  .community-signer-main b{
    font-size:14px;
  }

  .community-signer-main small{
    white-space:normal;
    line-height:1.35;
  }

  .community-result-row{
    min-height:85px;
    grid-template-columns:4px minmax(0,1fr) 13px;
    gap:8px;
    padding:11px;
  }

  .community-result-person{
    grid-column:2;
    grid-row:1;
  }

  .community-result-status{
    grid-column:2;
    grid-row:2;
  }

  .community-result-date{
    grid-column:2;
    grid-row:3;
    text-align:left;
  }

  .community-result-row > .community-open{
    grid-column:3;
    grid-row:1 / 4;
  }

  .community-result-mark{
    grid-column:1;
    grid-row:1 / 4;
    height:46px;
  }

  .community-result-status small{
    white-space:normal;
    line-height:1.35;
  }
}


/* =========================================================
   v0.8.0 — ADDRESS DATABASE PREP CENTER
   ========================================================= */

.address-prep-page{
  max-width:1240px;
}

.address-prep-hero{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:28px;
  margin-bottom:19px;
}

.address-prep-hero h1{
  margin:9px 0 8px;
}

.address-prep-hero h1 span{
  color:var(--gold);
}

.address-prep-hero p{
  max-width:760px;
  margin:0;
  color:#82919d;
  font-size:14px;
  line-height:1.55;
}

.prep-safety-card{
  width:280px;
  flex:0 0 280px;
  padding:14px 15px;
  border:1px solid #3e6c50;
  border-radius:14px;
  background:#0a1710;
}

.prep-safety-card b{
  display:block;
  margin-bottom:5px;
  color:#69d680;
  font-size:9px;
  letter-spacing:.12em;
}

.prep-safety-card span{
  display:block;
  color:#80a58b;
  font-size:9px;
  line-height:1.45;
}

.prep-pipeline{
  display:grid;
  grid-template-columns:repeat(9,auto);
  align-items:center;
  justify-content:center;
  gap:12px;
  margin-bottom:14px;
  padding:15px;
  border:1px solid #202d38;
  border-radius:17px;
  background:#081019;
}

.prep-pipeline > div{
  min-width:145px;
  display:grid;
  grid-template-columns:26px 1fr;
  column-gap:8px;
  align-items:center;
}

.prep-pipeline strong{
  grid-row:1 / 3;
  width:26px;
  height:26px;
  display:grid;
  place-items:center;
  border:1px solid #4b5b69;
  border-radius:50%;
  color:#c6d1da;
  font-size:9px;
}

.prep-pipeline span{
  color:#c5d0d9;
  font-size:8px;
  font-weight:950;
  letter-spacing:.07em;
}

.prep-pipeline small{
  margin-top:2px;
  color:#61717e;
  font-size:7px;
}

.prep-pipeline i{
  color:#4b5b68;
  font-style:normal;
  font-size:20px;
}

.prep-upload-card,
.prep-runs-card{
  margin-bottom:14px;
  padding:19px;
  border:1px solid #263441;
  border-radius:19px;
  background:linear-gradient(180deg,#0b131b,#080e15);
}

.prep-card-head,
.prep-result-head,
.prep-detail-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:15px;
}

.prep-card-head h2,
.prep-result-head h2{
  margin:5px 0 0;
  font-size:22px;
}

.prep-file-note{
  color:#70818e;
  font-size:8px;
  font-weight:900;
  letter-spacing:.08em;
}

.prep-form{
  display:grid;
  grid-template-columns:1.35fr 1fr .75fr auto;
  gap:10px;
  align-items:end;
  margin-top:16px;
}

.prep-form label{
  min-width:0;
  display:grid;
  gap:6px;
}

.prep-form label > span{
  color:#788996;
  font-size:8px;
  font-weight:950;
  letter-spacing:.08em;
}

.prep-form label > span small{
  color:#566672;
  font-weight:700;
}

.prep-form input,
.prep-form select{
  width:100%;
  min-height:46px;
  box-sizing:border-box;
  padding:0 12px;
  border:1px solid #334452;
  border-radius:11px;
  outline:0;
  background:#061019;
  color:#d8e1e8;
  font-size:11px;
}

.prep-form input:focus,
.prep-form select:focus{
  border-color:#687c8d;
}

.prep-file-field input{
  padding:10px;
}

.prep-file-field input::file-selector-button{
  height:26px;
  margin-right:9px;
  padding:0 10px;
  border:1px solid #465868;
  border-radius:7px;
  background:#111b24;
  color:#b8c5cf;
  font-size:8px;
  font-weight:900;
  cursor:pointer;
}

#prepAnalyzeBtn{
  min-height:46px;
  white-space:nowrap;
}

.prep-rule-note{
  margin-top:12px;
  padding:10px 12px;
  border-left:3px solid #946f1e;
  background:#161308;
  color:#7f7360;
  font-size:9px;
  line-height:1.5;
}

.prep-rule-note b{
  color:#d4ba73;
}

.prep-message{
  min-height:16px;
  margin-top:9px;
  color:#8da0ae;
  font-size:9px;
}

.prep-result-section{
  margin-bottom:14px;
  padding:19px;
  border:1px solid #2e3e4b;
  border-radius:20px;
  background:#081019;
}

.prep-result-head{
  margin-bottom:13px;
}

.prep-result-head p{
  margin:5px 0 0;
  color:#6e7e8a;
  font-size:9px;
}

.prep-status{
  padding:7px 10px;
  border:1px solid #41505c;
  border-radius:999px;
  font-size:8px;
  font-weight:950;
  letter-spacing:.08em;
}

.prep-status.complete{
  border-color:#32703d;
  background:#0c1c11;
  color:#71df7d;
}

.prep-status.error{
  border-color:#8a3945;
  background:#200d11;
  color:#ff8490;
}

.prep-stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
}

.prep-stats article{
  min-height:86px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:13px;
  border:1px solid #263541;
  border-radius:13px;
  background:#0a1219;
}

.prep-stats article strong{
  font-size:25px;
  line-height:1;
}

.prep-stats article span{
  margin-top:5px;
  color:#687986;
  font-size:7px;
  font-weight:950;
  letter-spacing:.07em;
}

.prep-stats article.good strong{color:var(--green)}
.prep-stats article.gold strong{color:var(--gold)}
.prep-stats article.warning strong{color:#efad4b}
.prep-stats article.danger strong{color:var(--red)}

.prep-error-wide{
  grid-column:1 / -1;
  padding:18px;
  border:1px solid #7c3540;
  border-radius:13px;
  background:#1a0b0f;
}

.prep-error-wide b,
.prep-error-wide span{
  display:block;
}

.prep-error-wide b{
  color:#ff8792;
  font-size:12px;
}

.prep-error-wide span{
  margin-top:5px;
  color:#b77c82;
  font-size:9px;
}

.prep-downloads{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:7px;
  margin-top:10px;
}

.prep-download{
  min-height:66px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:11px;
  border:1px solid #33434f;
  border-radius:12px;
  background:#0d151d;
  color:#c7d2da;
  text-decoration:none;
}

.prep-download:hover{
  border-color:#647887;
  background:#101c25;
}

.prep-download b{
  font-size:8px;
  letter-spacing:.07em;
}

.prep-download span{
  margin-top:4px;
  color:#657582;
  font-size:7px;
  line-height:1.35;
}

.prep-download.gold{
  border-color:#7f641f;
  background:#171408;
}

.prep-download.gold b{
  color:#f0c750;
}

.prep-download.warning{
  border-color:#7d5424;
}

.prep-download.warning b{
  color:#eead59;
}

.prep-detail-grid{
  display:grid;
  grid-template-columns:1fr 1.25fr;
  gap:10px;
  margin-top:10px;
}

.prep-detail-card{
  min-width:0;
  overflow:hidden;
  border:1px solid #25333f;
  border-radius:14px;
  background:#091118;
}

.prep-detail-head{
  min-height:65px;
  padding:13px 14px;
  border-bottom:1px solid #1c2934;
}

.prep-detail-head h3{
  margin:4px 0 0;
  font-size:14px;
}

.prep-preview-row,
.prep-review-row{
  min-height:68px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:12px 13px;
  border-bottom:1px solid #192630;
}

.prep-preview-row:last-child,
.prep-review-row:last-child{
  border-bottom:0;
}

.prep-preview-row > div:first-child,
.prep-review-row > div:first-child{
  min-width:0;
}

.prep-preview-row b,
.prep-review-row b{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:13px;
  line-height:1.25;
}

.prep-preview-row small,
.prep-review-row small{
  display:block;
  margin-top:3px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#8496a4;
  font-size:10px;
  line-height:1.4;
}

.prep-preview-meta{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  gap:7px;
}

.prep-preview-meta span{
  color:#8fa0ad;
  font-size:9px;
}

.prep-preview-meta em,
.prep-preview-meta i{
  padding:4px 6px;
  border-radius:999px;
  font-size:8px;
  font-style:normal;
  font-weight:950;
}

.prep-preview-meta em{
  border:1px solid #7c5627;
  background:#1c140b;
  color:#efb35e;
}

.prep-preview-meta i{
  border:1px solid #31683a;
  background:#0b1810;
  color:#6dd578;
}

.prep-review-row{
  align-items:flex-start;
}

.prep-review-row > span{
  max-width:43%;
  flex:0 0 43%;
  color:#d5a05d;
  font-size:9px;
  line-height:1.45;
  text-align:right;
}

.prep-empty{
  min-height:125px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:20px;
  color:#657582;
  text-align:center;
  font-size:9px;
}

.prep-empty b{
  color:#aebac3;
  font-size:11px;
}

.prep-empty span{
  margin-top:4px;
}

.prep-empty.good{
  color:#66b978;
}

.prep-refresh-btn{
  min-height:34px;
  padding:0 12px;
  border:1px solid #3a4a57;
  border-radius:8px;
  background:#0c151d;
  color:#91a1ad;
  cursor:pointer;
  font-size:7px;
  font-weight:950;
}

.prep-run-list{
  margin-top:13px;
  overflow:hidden;
  border:1px solid #202d38;
  border-radius:13px;
}

.prep-run-row{
  width:100%;
  min-height:59px;
  display:grid;
  grid-template-columns:9px minmax(180px,.9fr) minmax(280px,1.4fr) 14px;
  align-items:center;
  gap:10px;
  padding:9px 12px;
  border:0;
  border-bottom:1px solid #1b2731;
  background:#081019;
  color:#d3dde4;
  text-align:left;
  cursor:pointer;
}

.prep-run-row:last-child{
  border-bottom:0;
}

.prep-run-row:hover{
  background:#0e1821;
}

.prep-run-state{
  width:7px;
  height:7px;
  border-radius:50%;
  background:#71828f;
}

.prep-run-state.complete{
  background:#60d773;
}

.prep-run-state.error{
  background:#f56d7b;
}

.prep-run-name{
  min-width:0;
}

.prep-run-name b,
.prep-run-name small{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.prep-run-name b{
  font-size:10px;
}

.prep-run-name small{
  margin-top:3px;
  color:#61717e;
  font-size:7px;
}

.prep-run-numbers{
  color:#788995;
  font-size:8px;
  text-align:right;
}

.prep-run-open{
  color:#566a79;
  font-size:18px;
}

.direct-import-warning{
  margin:14px 0;
  padding:14px;
  border:1px solid #7e4f25;
  border-radius:13px;
  background:#1c1209;
}

.direct-import-warning b,
.direct-import-warning span{
  display:block;
}

.direct-import-warning b{
  color:#f1ad59;
  font-size:9px;
  letter-spacing:.06em;
}

.direct-import-warning span{
  margin-top:5px;
  color:#aa8968;
  font-size:9px;
  line-height:1.5;
}

.direct-import-warning a{
  color:#f3c75c;
}

@media(max-width:1050px){
  .prep-pipeline{
    grid-template-columns:1fr;
    justify-items:stretch;
  }

  .prep-pipeline > div{
    min-width:0;
  }

  .prep-pipeline i{
    display:none;
  }

  .prep-form{
    grid-template-columns:1fr 1fr;
  }

  #prepAnalyzeBtn{
    grid-column:1 / -1;
  }

  .prep-downloads{
    grid-template-columns:repeat(3,1fr);
  }
}

@media(max-width:760px){
  .address-prep-page{
    padding-top:27px;
  }

  .address-prep-hero{
    display:block;
  }

  .address-prep-hero h1{
    font-size:38px;
  }

  .prep-safety-card{
    width:100%;
    margin-top:14px;
  }

  .prep-pipeline{
    padding:11px;
    gap:7px;
  }

  .prep-pipeline > div{
    min-height:48px;
    padding:7px;
    border:1px solid #1f2d38;
    border-radius:10px;
    background:#091219;
  }

  .prep-upload-card,
  .prep-runs-card,
  .prep-result-section{
    padding:13px;
    border-radius:16px;
  }

  .prep-form{
    grid-template-columns:1fr;
  }

  #prepAnalyzeBtn{
    grid-column:auto;
    min-height:50px;
  }

  .prep-form input,
  .prep-form select{
    min-height:48px;
    font-size:16px;
  }

  .prep-stats{
    grid-template-columns:repeat(2,1fr);
  }

  .prep-downloads{
    grid-template-columns:repeat(2,1fr);
  }

  .prep-download{
    min-height:72px;
  }

  .prep-detail-grid{
    grid-template-columns:1fr;
  }

  .prep-preview-row,
  .prep-review-row{
    min-height:62px;
  }

  .prep-review-row{
    display:block;
  }

  .prep-review-row > span{
    max-width:none;
    display:block;
    margin-top:7px;
    text-align:left;
  }

  .prep-run-row{
    min-height:70px;
    grid-template-columns:8px minmax(0,1fr) 12px;
  }

  .prep-run-numbers{
    grid-column:2;
    text-align:left;
  }

  .prep-run-open{
    grid-column:3;
    grid-row:1 / 3;
  }
}


/* v0.8.1 — sport / non-sport separation */
.prep-stats article.excluded strong{
  color:#9ba7b1;
}

.prep-download.excluded{
  border-color:#495762;
  background:#0b1117;
}

.prep-download.excluded b{
  color:#aeb9c2;
}

@media(min-width:1051px){
  .prep-downloads{
    grid-template-columns:repeat(7,minmax(0,1fr));
  }
}


/* v0.8.2 — cleaner intelligence */
.prep-stats article.enrichment strong{color:#d99b45}
.prep-download.enrichment{
  border-color:#725425;
  background:#171208;
}
.prep-download.enrichment b{color:#e2b55f}
@media(min-width:1051px){
  .prep-downloads{grid-template-columns:repeat(4,minmax(0,1fr));}
}


/* v0.8.6 Human Review Workflow */
.prep-detail-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}

.prep-review-progress{
  flex:0 0 auto;
  text-align:right;
}

.prep-review-progress b{
  display:block;
  color:#f4bd4e;
  font-size:12px;
  letter-spacing:.07em;
}

.prep-review-progress span{
  display:block;
  margin-top:3px;
  color:#8da0af;
  font-size:10px;
}

button.prep-review-row{
  width:100%;
  border:0;
  border-bottom:1px solid #192630;
  border-radius:0;
  background:transparent;
  color:inherit;
  font:inherit;
  cursor:pointer;
  text-align:left;
}

button.prep-review-row:hover{
  background:#0c1720;
}

button.prep-review-row:focus-visible{
  outline:2px solid #d7a93d;
  outline-offset:-3px;
}

.prep-review-action > span{
  color:#f4bd4e;
  font-weight:900;
  letter-spacing:.03em;
}

.prep-review-non-sport{
  opacity:.78;
}

.prep-review-dialog{
  width:min(760px, calc(100% - 28px));
  max-height:calc(100% - 36px);
  padding:0;
  border:1px solid #334653;
  border-radius:18px;
  background:#081119;
  color:#f2f5f7;
  box-shadow:0 28px 80px rgba(0,0,0,.55);
}

.prep-review-dialog::backdrop{
  background:rgba(0,0,0,.76);
}

.prep-review-dialog-shell{
  margin:0;
}

.prep-review-dialog-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding:20px 22px 17px;
  border-bottom:1px solid #1e2c36;
}

.prep-review-dialog-head h2{
  margin:4px 0 0;
  font-size:24px;
}

.prep-review-dialog-head p{
  margin:5px 0 0;
  color:#92a5b3;
  font-size:13px;
}

.prep-review-close{
  width:44px;
  height:44px;
  flex:0 0 auto;
  border:1px solid #324652;
  border-radius:10px;
  background:#0d1821;
  color:#cbd5dc;
  font-size:25px;
  cursor:pointer;
}

.prep-review-evidence{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1px;
  background:#1d2a34;
  border-bottom:1px solid #1d2a34;
}

.prep-review-evidence > div{
  min-width:0;
  padding:15px 18px;
  background:#0a141c;
}

.prep-review-evidence span,
.prep-review-choice-label{
  display:block;
  color:#7f94a3;
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
}

.prep-review-evidence b{
  display:block;
  margin-top:6px;
  color:#e7edf1;
  font-size:13px;
  line-height:1.45;
  overflow-wrap:anywhere;
}

.prep-review-choice-block{
  padding:19px 20px 6px;
}

.prep-sport-choices{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:9px;
  margin-top:11px;
}

.prep-sport-choices button{
  min-height:48px;
  padding:9px 11px;
  border:1px solid #354854;
  border-radius:10px;
  background:#0c1821;
  color:#e7edf1;
  font-size:13px;
  font-weight:850;
  cursor:pointer;
}

.prep-sport-choices button:hover{
  border-color:#71818d;
}

.prep-sport-choices button.selected{
  border-color:#d7a93d;
  background:#241b09;
  color:#ffd36d;
}

.prep-sport-choices button.not-sports{
  grid-column:1 / -1;
  border-color:#573237;
  color:#e8a0a7;
}

.prep-sport-choices button.not-sports.selected{
  border-color:#b95560;
  background:#2a1115;
  color:#ffb2ba;
}

.prep-review-decision-message{
  min-height:24px;
  padding:6px 20px 0;
  color:#e0ad54;
  font-size:12px;
}


.prep-review-remove{
  min-width:180px;
  min-height:52px;
  border:1px solid #8f3e45;
  border-radius:16px;
  background:#181015;
  color:#ff9ca5;
  font:800 13px/1 system-ui,-apple-system,"Segoe UI",sans-serif;
  letter-spacing:.04em;
  cursor:pointer;
}

.prep-review-remove:hover{
  background:#241116;
  border-color:#c65b64;
}

.prep-review-remove:disabled{
  opacity:.5;
  cursor:wait;
}

.prep-download.removed,
.prep-stats article.removed{
  border-color:#70383e;
  background:#160f13;
}

.prep-download.removed b,
.prep-stats article.removed strong{
  color:#ff9ca5;
}

.prep-review-dialog-actions{
  display:flex;
  justify-content:space-between;
  gap:14px;
  padding:12px 20px 20px;
}

.prep-review-dialog-actions .metal-btn{
  min-width:180px;
}

@media (max-width: 700px){
  .prep-detail-head{
    align-items:flex-start;
  }

  .prep-review-dialog{
    width:calc(100% - 18px);
  }

  .prep-review-dialog-head{
    padding:16px;
  }

  .prep-review-dialog-head h2{
    font-size:21px;
  }

  .prep-review-evidence{
    grid-template-columns:1fr;
  }

  .prep-sport-choices{
    grid-template-columns:1fr 1fr;
  }

  .prep-sport-choices button.not-sports{
    grid-column:1 / -1;
  }

  .prep-review-dialog-actions{
    padding:10px 16px 16px;
  }

  .prep-review-dialog-actions .metal-btn{
    width:100%;
  }
}


/* =========================================================
   v0.9.0 — COMMUNITY FOUNDATION
   ========================================================= */
.community-v09{max-width:1440px}
.community-tabs{display:flex;gap:8px;margin:0 0 22px;padding:7px;border:1px solid #263744;border-radius:14px;background:#081119;overflow-x:auto}
.community-tabs button{min-height:44px;padding:0 22px;border:1px solid transparent;border-radius:10px;background:transparent;color:#8ea0ae;font-size:11px;font-weight:950;letter-spacing:.07em;white-space:nowrap;cursor:pointer}
.community-tabs button.active{border-color:#73591c;background:#251d0b;color:#ffd45f}
.community-section.hidden{display:none!important}
.community-ticker{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;min-height:52px;margin-bottom:18px;padding:0 16px;border:1px solid #3b4d34;border-radius:13px;background:linear-gradient(90deg,#0b1712,#0b1218 52%,#0a1117)}
.community-ticker-label{color:#74dd83;font-size:10px;font-weight:950;letter-spacing:.1em}
.community-ticker button{min-width:0;border:0;background:transparent;color:#eaf0f4;text-align:left;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.community-ticker button b{margin-right:12px;font-size:14px}.community-ticker button span{color:#76df85;font-size:11px;font-weight:850}
.community-ticker button:disabled{cursor:default;color:#768693}.community-ticker-dots{color:#657683;font-size:9px;font-weight:800}
.community-section-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:20px}
.community-section-intro h1,.community-section-intro h2{margin:4px 0 4px;color:#fff;font-size:30px}.community-section-intro p{max-width:760px;margin:0;color:#8fa0ad;line-height:1.55}
.community-admin-link{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 15px;border:1px solid #4a5b68;border-radius:10px;color:#c8d4dd;background:#0d1720;text-decoration:none;font-size:9px;font-weight:950;letter-spacing:.06em;white-space:nowrap}
.community-action-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:18px}
.community-action-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:15px;min-height:96px;padding:16px 18px;border:1px solid #344855;border-radius:16px;background:linear-gradient(180deg,#101a23,#0a1118);color:#e8eef2;text-align:left;cursor:pointer}
.community-action-card.gold{border-color:#72591f;background:linear-gradient(180deg,#201a0d,#0d1217)}.community-action-icon{display:grid;place-items:center;width:48px;height:48px;border:1px solid #4a5e6b;border-radius:13px;color:#dce5eb;font-size:25px}.community-action-card.gold .community-action-icon{border-color:#8a6b24;color:#ffd45f}
.community-action-card b{display:block;font-size:14px;letter-spacing:.03em}.community-action-card small{display:block;margin-top:5px;color:#8798a5;font-size:11px}.community-action-card i{color:#758794;font-size:26px;font-style:normal}
.community-address-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}.community-request-list{display:grid}
.community-request-row{display:grid;grid-template-columns:110px minmax(0,1fr) auto;align-items:center;gap:13px;padding:15px 16px;border-bottom:1px solid #1d2c36}.community-request-row:last-child{border-bottom:0}.community-request-row.found{background:#0b1711}
.community-request-status{color:#e5b94d;font-size:9px;font-weight:950;letter-spacing:.06em}.community-request-row.found .community-request-status{color:#72de82}
.community-request-main b,.community-my-row b{display:block;color:#edf2f5;font-size:13px}.community-request-main small,.community-my-row small{display:block;margin-top:4px;color:#8495a2;font-size:10px}
.community-request-actions{display:flex;gap:7px}.community-request-actions button{min-height:36px;padding:0 11px;border:1px solid #80631f;border-radius:9px;background:#211a0b;color:#ffd45f;font-size:9px;font-weight:900;cursor:pointer}.community-request-actions button.secondary{border-color:#3d4e5a;background:#0d171f;color:#b9c6cf}
.community-my-row{display:grid;grid-template-columns:86px 1fr;gap:12px;align-items:center;padding:14px 15px;border-bottom:1px solid #1d2c36}.community-my-type{color:#d6b650;font-size:8px;font-weight:950;letter-spacing:.08em}.community-my-type.submitted{color:#6edb80}
.community-dialog{width:min(680px,calc(100% - 28px));max-height:calc(100% - 32px);padding:0;border:1px solid #334754;border-radius:18px;background:#081119;color:#edf2f5;box-shadow:0 26px 80px rgba(0,0,0,.58)}.community-dialog::backdrop{background:rgba(0,0,0,.78)}.community-dialog-shell{margin:0}.community-dialog-head{display:flex;justify-content:space-between;gap:20px;padding:20px 22px 16px;border-bottom:1px solid #1d2c36}.community-dialog-head h2{margin:4px 0 0;font-size:25px}.community-dialog-close{width:44px;height:44px;border:1px solid #344854;border-radius:10px;background:#0d1821;color:#c8d3da;font-size:24px;cursor:pointer}
.community-form-body{display:grid;gap:14px;padding:18px 22px}.community-form-body label>span,.community-contact-choice legend{display:block;margin-bottom:7px;color:#8295a3;font-size:9px;font-weight:950;letter-spacing:.08em}.community-form-body input[type=text],.community-form-body input[type=search],.community-form-body input:not([type]),.community-form-body select,.community-form-body textarea,.community-form-body input[type=file]{width:100%;min-height:46px;box-sizing:border-box;padding:10px 12px;border:1px solid #344854;border-radius:10px;background:#09131b;color:#edf2f5;font:inherit}.community-form-body textarea{min-height:86px;resize:vertical}.community-form-body input:focus,.community-form-body select:focus,.community-form-body textarea:focus{outline:2px solid #8b6c24;outline-offset:1px}.community-form-note{padding:11px 12px;border:1px solid #2e414e;border-radius:10px;background:#0b151d;color:#8fa1ae;font-size:10px;line-height:1.45}.community-form-message{min-height:20px;color:#e6ba4f;font-size:11px}.community-form-message.error{color:#ef858c}.community-dialog-actions{padding:0 22px 20px}.community-dialog-actions .wide{width:100%;min-height:50px}
.community-form-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.community-contact-choice{display:flex;gap:16px;margin:0;padding:12px;border:1px solid #30434f;border-radius:10px}.community-contact-choice legend{padding:0 5px}.community-contact-choice label,.community-check{display:flex!important;align-items:center;gap:8px;color:#cbd5dc;font-size:11px}.community-contact-choice input,.community-check input{width:auto!important;min-height:0!important}.community-check>span{margin:0!important;color:#cbd5dc!important;font-size:11px!important;font-weight:700!important;letter-spacing:0!important}
.community-person-suggestions{position:relative;z-index:5;margin-top:5px;border:1px solid #344854;border-radius:10px;background:#0b151d;overflow:hidden}.community-person-suggestions button{display:block;width:100%;padding:10px 12px;border:0;border-bottom:1px solid #22323d;background:transparent;color:#e8eef2;text-align:left;cursor:pointer}.community-person-suggestions button:last-child{border-bottom:0}.community-person-suggestions b{display:block;font-size:12px}.community-person-suggestions small{display:block;margin-top:3px;color:#81929f;font-size:9px}
.community-market-controls{display:grid;grid-template-columns:auto 180px minmax(220px,1fr) auto;align-items:center;gap:10px;margin-bottom:16px}.community-market-types{display:flex;gap:5px}.community-market-types button{min-height:40px;padding:0 12px;border:1px solid #344854;border-radius:9px;background:#0d171f;color:#9aabb7;font-size:9px;font-weight:900;cursor:pointer}.community-market-types button.active{border-color:#80631f;background:#211a0b;color:#ffd45f}.community-market-controls select,.community-market-controls input[type=search]{min-height:42px;padding:0 11px;border:1px solid #344854;border-radius:9px;background:#09131b;color:#e6edf1}.community-mine-toggle{display:flex;align-items:center;gap:7px;color:#a8b6c0;font-size:9px;font-weight:900;white-space:nowrap}.community-new-listing{min-width:160px}
.community-market-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.community-listing-card{min-width:0;overflow:hidden;border:1px solid #30424e;border-radius:16px;background:#0a1219}.community-listing-card.trade{border-color:#38536a}.community-listing-card.sale{border-color:#675322}.community-listing-card.wanted{border-color:#514069}.community-listing-photo{position:relative;aspect-ratio:16/10;background:#070c11;overflow:hidden}.community-listing-photo img{width:100%;height:100%;object-fit:cover;display:block}.community-listing-photo-empty{display:grid;place-content:center;height:100%;text-align:center;color:#60717e}.community-listing-photo-empty span{font-size:12px;font-weight:900;letter-spacing:.15em}.community-listing-photo-empty b{font-size:24px;color:#81919c}.community-listing-type{position:absolute;left:10px;bottom:10px;padding:6px 8px;border:1px solid #8a6c25;border-radius:8px;background:rgba(17,14,8,.9);color:#ffd35b;font-size:8px;font-weight:950;letter-spacing:.07em}.community-listing-card.trade .community-listing-type{border-color:#426682;color:#9fd1f3}.community-listing-card.wanted .community-listing-type{border-color:#66517f;color:#d3b5f2}.community-listing-body{padding:14px}.community-listing-title{display:flex;justify-content:space-between;gap:12px}.community-listing-title h3{margin:0;color:#fff;font-size:18px}.community-listing-title small{display:block;margin-top:3px;color:#7e909d;font-size:9px}.community-listing-title strong{color:#ffd45f;font-size:15px;white-space:nowrap}.community-listing-body>p{min-height:42px;margin:12px 0;color:#b9c5cd;font-size:11px;line-height:1.55}.community-trade-for{display:grid;gap:3px;padding:9px;border:1px solid #263742;border-radius:9px;background:#081018}.community-trade-for b{color:#8295a2;font-size:8px;letter-spacing:.07em}.community-trade-for span{color:#d3dce2;font-size:10px}.community-listing-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px}.community-listing-footer>span{color:#72838f;font-size:8.5px}.community-interest-btn,.community-close-listing{min-height:34px;padding:0 10px;border:1px solid #80631f;border-radius:8px;background:#211a0b;color:#ffd45f;font-size:8px;font-weight:950;cursor:pointer}.community-interest-btn.active{border-color:#347543;background:#0e2215;color:#77e487}.community-close-listing{border-color:#4d5d68;background:#0c151c;color:#aebbc4}.community-market-empty{grid-column:1/-1}
.admin-community-page{max-width:1120px;margin:0 auto}.admin-community-filters{display:flex;gap:7px;margin-bottom:12px}.admin-community-filters button{min-height:40px;padding:0 14px;border:1px solid #344854;border-radius:9px;background:#0d171f;color:#9aabb7;font-size:9px;font-weight:950;cursor:pointer}.admin-community-filters button.active{border-color:#80631f;background:#211a0b;color:#ffd45f}.admin-community-list{display:grid;gap:14px;margin-top:14px}.admin-community-card{padding:18px;border:1px solid #30424e;border-radius:16px;background:#0a1219}.admin-community-card-head{display:flex;justify-content:space-between;gap:18px}.admin-community-card h2{margin:7px 0 3px;color:#fff;font-size:22px}.admin-community-card-head small{color:#7f919d;font-size:10px}.admin-community-status{height:max-content;padding:6px 8px;border:1px solid #6d5521;border-radius:999px;color:#f2c755;font-size:8px;font-weight:950}.admin-community-status.accepted{border-color:#2d6e3c;color:#73df83}.admin-community-status.rejected{border-color:#773940;color:#ed8990}.admin-community-contact,.admin-community-note{margin-top:13px;padding:12px;border:1px solid #293b47;border-radius:10px;background:#081018}.admin-community-contact span,.admin-community-note span{display:block;color:#7f919d;font-size:8px;font-weight:950;letter-spacing:.07em}.admin-community-contact strong{display:block;margin-top:6px;color:#e7edf1;font-size:12px;line-height:1.5;white-space:pre-wrap}.admin-community-note p{margin:6px 0 0;color:#b8c5cd;font-size:11px}.admin-community-flags{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.admin-community-flags span{padding:6px 8px;border:1px solid #30424e;border-radius:999px;color:#93a4af;font-size:8px}
@media(max-width:980px){.community-address-layout{grid-template-columns:1fr}.community-market-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.community-market-controls{grid-template-columns:1fr 1fr}.community-market-types{grid-column:1/-1;overflow-x:auto}.community-mine-toggle{justify-self:end}}
@media(max-width:700px){.community-tabs{padding:5px}.community-tabs button{padding:0 15px}.community-ticker{grid-template-columns:auto minmax(0,1fr);gap:9px;padding:9px 12px}.community-ticker-dots{display:none}.community-ticker button b{display:block;margin:0;font-size:13px}.community-ticker button span{display:block;margin-top:2px;font-size:9px}.community-section-intro{align-items:flex-start;flex-direction:column}.community-section-intro h1,.community-section-intro h2{font-size:25px}.community-action-grid{grid-template-columns:1fr}.community-request-row{grid-template-columns:1fr}.community-request-actions{margin-top:2px}.community-dialog{width:calc(100% - 18px)}.community-dialog-head,.community-form-body{padding-left:16px;padding-right:16px}.community-dialog-actions{padding-left:16px;padding-right:16px}.community-form-two{grid-template-columns:1fr}.community-contact-choice{flex-direction:column;gap:10px}.community-market-controls{grid-template-columns:1fr}.community-market-types{grid-column:auto}.community-mine-toggle{justify-self:start}.community-market-grid{grid-template-columns:1fr}.community-new-listing{width:100%}.admin-community-card-head{flex-direction:column}}

/* =========================================================
   v0.9.1 — COMMUNITY READABILITY + ACTION COLORS
   Larger laptop-readable type across Community and stronger
   visual separation between Request and Submit actions.
   ========================================================= */
.community-tabs button{font-size:13px}
.community-ticker-label{font-size:12px}
.community-ticker button b{font-size:15px}
.community-ticker button span{font-size:13px}
.community-ticker-dots{font-size:11px}
.community-section-intro p{font-size:16px}
.community-admin-link{font-size:12px}

/* Address Board primary actions: blue request / gold submit */
.community-action-card:not(.gold){
  border-color:#376b8c;
  background:linear-gradient(180deg,#102536,#0b1720);
}
.community-action-card:not(.gold) .community-action-icon{
  border-color:#4d82a5;
  background:#0d2130;
  color:#9ed7fb;
}
.community-action-card:not(.gold) b{color:#d9efff}
.community-action-card.gold{
  border-color:#937020;
  background:linear-gradient(180deg,#2a210d,#151207);
}
.community-action-card.gold .community-action-icon{
  border-color:#a47c20;
  background:#211a08;
  color:#ffd45f;
}
.community-action-card b{font-size:17px}
.community-action-card small{font-size:14px;line-height:1.4;color:#a5b5c0}
.community-action-card i{font-size:30px}

.community-panel-note{font-size:12px}
.community-request-status{font-size:11px}
.community-request-main b,.community-my-row b{font-size:15px}
.community-request-main small,.community-my-row small{font-size:13px;line-height:1.4}
.community-request-actions button{font-size:11px}
.community-my-type{font-size:11px}

.community-form-body label>span,.community-contact-choice legend{font-size:12px}
.community-form-note{font-size:13px}
.community-form-message{font-size:13px}
.community-contact-choice label,.community-check{font-size:14px}
.community-check>span{font-size:14px!important}
.community-person-suggestions b{font-size:14px}
.community-person-suggestions small{font-size:12px}

/* Trade & Sale readability */
.community-market-types button{font-size:12px;min-height:42px;padding:0 14px}
.community-market-controls select,.community-market-controls input[type=search]{font-size:15px}
.community-mine-toggle{font-size:12px}
.community-listing-type{font-size:11px}
.community-listing-title small{font-size:12px}
.community-listing-body>p{font-size:14px}
.community-trade-for b{font-size:11px}
.community-trade-for span{font-size:13px}
.community-listing-footer>span{font-size:11px}
.community-interest-btn,.community-close-listing{font-size:11px;min-height:38px}
.community-empty{font-size:13px}
.community-empty b{font-size:15px}

@media(max-width:700px){
  .community-tabs button{font-size:12px}
  .community-section-intro p{font-size:15px}
  .community-action-card b{font-size:16px}
  .community-action-card small{font-size:13px}
  .community-market-types button{font-size:11px}
}


/* =========================================================
   v0.9.1.1 — METALLIC COMMUNITY PRIMARY ACTIONS
   Solid metallic blue Request button + solid metallic gold
   Submit button. Designed to stand out without changing layout.
   ========================================================= */

.community-action-card{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:100px;
  border-width:2px;
  border-style:solid;
  transform:translateZ(0);
  transition:
    transform .16s ease,
    filter .16s ease,
    box-shadow .16s ease,
    border-color .16s ease;
}

/* top-edge metal highlight */
.community-action-card::before{
  content:"";
  position:absolute;
  z-index:-1;
  left:14px;
  right:14px;
  top:2px;
  height:2px;
  border-radius:999px;
  opacity:.9;
  pointer-events:none;
}

/* restrained diagonal sheen */
.community-action-card::after{
  content:"";
  position:absolute;
  z-index:-1;
  inset:0;
  background:linear-gradient(
    112deg,
    rgba(255,255,255,.13) 0%,
    rgba(255,255,255,.035) 18%,
    transparent 38%,
    transparent 68%,
    rgba(255,255,255,.055) 82%,
    transparent 100%
  );
  pointer-events:none;
}

/* REQUEST AN ADDRESS — solid metallic blue */
.community-action-card:not(.gold){
  border-color:#45bfff;
  background:
    linear-gradient(180deg,
      #168fe0 0%,
      #0874c2 11%,
      #075aa2 42%,
      #064681 72%,
      #032c58 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.55),
    inset 0 -4px 9px rgba(0,19,44,.58),
    inset 0 0 24px rgba(30,157,239,.18),
    0 0 0 1px rgba(3,34,63,.9),
    0 8px 20px rgba(0,91,161,.22);
}
.community-action-card:not(.gold)::before{
  background:linear-gradient(90deg,
    transparent,
    rgba(214,246,255,.95) 18%,
    rgba(121,218,255,.8) 50%,
    rgba(214,246,255,.95) 82%,
    transparent);
}
.community-action-card:not(.gold) .community-action-icon{
  border:1px solid #75d2ff;
  background:
    linear-gradient(180deg,rgba(7,75,128,.92),rgba(2,35,69,.95));
  color:#fff;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.28),
    inset 0 -3px 6px rgba(0,0,0,.3),
    0 0 10px rgba(50,180,255,.2);
}
.community-action-card:not(.gold) b{color:#fff;text-shadow:0 1px 1px rgba(0,0,0,.35)}
.community-action-card:not(.gold) small{color:#d6efff}
.community-action-card:not(.gold) i{color:#fff}

/* SUBMIT AN ADDRESS — solid metallic gold */
.community-action-card.gold{
  border-color:#ffd65b;
  background:
    linear-gradient(180deg,
      #ffd34f 0%,
      #eeb51f 12%,
      #c98b08 43%,
      #a46604 73%,
      #653800 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.62),
    inset 0 -4px 9px rgba(76,38,0,.52),
    inset 0 0 24px rgba(255,217,82,.2),
    0 0 0 1px rgba(91,54,0,.9),
    0 8px 20px rgba(179,112,0,.23);
}
.community-action-card.gold::before{
  background:linear-gradient(90deg,
    transparent,
    rgba(255,252,206,.95) 18%,
    rgba(255,228,112,.9) 50%,
    rgba(255,252,206,.95) 82%,
    transparent);
}
.community-action-card.gold .community-action-icon{
  border:1px solid #ffe278;
  background:
    linear-gradient(180deg,rgba(156,100,0,.9),rgba(83,46,0,.96));
  color:#fff;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.3),
    inset 0 -3px 6px rgba(0,0,0,.28),
    0 0 10px rgba(255,198,27,.22);
}
.community-action-card.gold b{color:#fff;text-shadow:0 1px 1px rgba(72,38,0,.45)}
.community-action-card.gold small{color:#fff2c7}
.community-action-card.gold i{color:#fff}

/* Laptop readability */
.community-action-card b{
  font-size:18px;
  font-weight:950;
  letter-spacing:.025em;
}
.community-action-card small{
  margin-top:6px;
  font-size:14px;
  font-weight:650;
}
.community-action-card i{
  font-size:31px;
  font-weight:800;
}

/* Interaction */
@media (hover:hover) and (pointer:fine){
  .community-action-card:hover{
    transform:translateY(-2px);
    filter:saturate(1.07) brightness(1.05);
  }
  .community-action-card:not(.gold):hover{
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.62),
      inset 0 -4px 9px rgba(0,19,44,.55),
      inset 0 0 28px rgba(55,182,255,.24),
      0 0 0 1px rgba(3,34,63,.9),
      0 10px 24px rgba(0,124,211,.32);
  }
  .community-action-card.gold:hover{
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.7),
      inset 0 -4px 9px rgba(76,38,0,.5),
      inset 0 0 28px rgba(255,222,94,.25),
      0 0 0 1px rgba(91,54,0,.9),
      0 10px 24px rgba(202,132,0,.34);
  }
}

.community-action-card:active{
  transform:translateY(1px);
  filter:brightness(.92);
  box-shadow:
    inset 0 4px 10px rgba(0,0,0,.32),
    inset 0 -1px 0 rgba(255,255,255,.22);
}

.community-action-card:focus-visible{
  outline:3px solid #fff;
  outline-offset:3px;
}

@media(max-width:700px){
  .community-action-card{
    min-height:94px;
  }
  .community-action-card b{
    font-size:17px;
  }
  .community-action-card small{
    font-size:13px;
  }
}

@media(prefers-reduced-motion:reduce){
  .community-action-card{
    transition:none;
  }
}


/* =========================================================
   v0.9.2 — COMMUNITY HIERARCHY + READABILITY
   - My Binder moved ahead of Want Lists in the top navigation.
   - Community section tabs are now strong metallic buttons.
   - Community labels/details are laptop- and phone-readable.
   ========================================================= */

/* Top navigation readability */
.topbar nav a{
  font-size:16px;
  font-weight:650;
}

/* COMMUNITY PRIMARY SECTION BUTTONS
   Activity = green metal
   Address Board = blue metal
   Trade & Sale = gold metal
*/
.community-tabs{
  gap:12px;
  padding:9px;
  background:#081119;
  border-color:#30424f;
}

.community-tabs button{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:48px;
  padding:0 26px;
  border-width:2px;
  border-style:solid;
  border-radius:12px;
  color:#fff;
  font-size:14px;
  font-weight:950;
  letter-spacing:.055em;
  text-shadow:0 1px 1px rgba(0,0,0,.45);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.38),
    inset 0 -3px 7px rgba(0,0,0,.34),
    0 5px 12px rgba(0,0,0,.18);
  transition:transform .15s ease,filter .15s ease,box-shadow .15s ease;
}

.community-tabs button::before{
  content:"";
  position:absolute;
  z-index:-1;
  left:10px;
  right:10px;
  top:2px;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.78),transparent);
  pointer-events:none;
}

/* Activity */
.community-tabs button[data-community-tab="activity"]{
  border-color:#55c66a;
  background:linear-gradient(180deg,#35a44c 0%,#22853a 15%,#14672d 52%,#0b4920 78%,#062f16 100%);
}

/* Address Board */
.community-tabs button[data-community-tab="address"]{
  border-color:#48bfff;
  background:linear-gradient(180deg,#168fe0 0%,#0874c2 14%,#075aa2 48%,#064681 76%,#032c58 100%);
}

/* Trade & Sale */
.community-tabs button[data-community-tab="market"]{
  border-color:#ffd65b;
  background:linear-gradient(180deg,#ffd34f 0%,#eeb51f 14%,#c98b08 48%,#a46604 76%,#653800 100%);
}

.community-tabs button.active{
  color:#fff;
  border-color:#fff;
  filter:saturate(1.08) brightness(1.08);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.62),
    inset 0 -3px 7px rgba(0,0,0,.30),
    0 0 0 2px rgba(255,255,255,.12),
    0 8px 18px rgba(0,0,0,.28);
}

@media (hover:hover) and (pointer:fine){
  .community-tabs button:hover{
    transform:translateY(-2px);
    filter:saturate(1.1) brightness(1.08);
  }
}

.community-tabs button:active{
  transform:translateY(1px);
  filter:brightness(.92);
}

/* Community-wide readability */
.community-page{
  font-size:16px;
}

.community-privacy b{
  font-size:12px;
}
.community-privacy span{
  font-size:13px;
}

.community-stats article > span{
  font-size:12px;
}
.community-stats article small{
  font-size:11px;
}
.community-stats article strong{
  font-size:34px;
}

.community-search-wrap input{
  font-size:16px;
}

.community-sport-pills button,
.community-outcomes button{
  min-height:38px;
  font-size:12px;
  padding:8px 14px;
}

.community-window span{
  font-size:11px;
}
.community-window select{
  min-height:38px;
  font-size:12px;
}

.community-panel-note{
  font-size:12px;
}
.community-signer-main b{
  font-size:16px;
}
.community-signer-main small{
  font-size:12px;
}
.community-intel{
  min-height:29px;
  font-size:10px;
}

.community-result-person b{
  font-size:15px;
}
.community-result-person small{
  font-size:12px;
}
.community-result-status b{
  font-size:11px;
}
.community-result-status small{
  font-size:12px;
}
.community-result-date{
  font-size:11px;
}
.community-loading,
.community-empty{
  font-size:13px;
}

/* Address Board */
.community-request-status{
  font-size:12px;
}
.community-request-main b,
.community-my-row b{
  font-size:16px;
}
.community-request-main small,
.community-my-row small{
  font-size:13px;
}
.community-request-actions button{
  min-height:40px;
  font-size:12px;
}
.community-my-type{
  font-size:12px;
}
.community-admin-link{
  min-height:44px;
  font-size:12px;
}

/* Trade & Sale */
.community-market-types button{
  min-height:44px;
  font-size:13px;
}
.community-market-controls select,
.community-market-controls input[type=search]{
  min-height:46px;
  font-size:16px;
}
.community-mine-toggle{
  font-size:13px;
}
.community-listing-type{
  font-size:12px;
}
.community-listing-title small{
  font-size:13px;
}
.community-listing-body>p{
  font-size:15px;
}
.community-trade-for b{
  font-size:12px;
}
.community-trade-for span{
  font-size:14px;
}
.community-listing-footer>span{
  font-size:12px;
}
.community-interest-btn,
.community-close-listing{
  min-height:42px;
  font-size:12px;
}

/* Mobile: keep controls readable instead of shrinking them */
@media(max-width:760px){
  .topbar nav{
    gap:22px;
  }
  .topbar nav a{
    min-height:48px;
    padding:13px 0 10px;
    font-size:15px;
    font-weight:700;
  }

  .eyebrow{
    font-size:12px;
  }

  .community-tabs{
    gap:9px;
    padding:7px;
  }
  .community-tabs button{
    min-height:48px;
    padding:0 18px;
    font-size:13px;
  }

  .community-ticker-label{
    font-size:12px;
  }
  .community-ticker button b{
    font-size:15px;
  }
  .community-ticker button span{
    font-size:12px;
  }

  .community-stats article > span{
    font-size:11px;
  }
  .community-stats article small{
    font-size:10px;
  }

  .community-sport-pills button,
  .community-outcomes button{
    min-height:40px;
    font-size:12px;
  }

  .community-signer-main b{
    font-size:15px;
  }
  .community-signer-main small,
  .community-result-person small,
  .community-result-status small{
    font-size:12px;
  }
  .community-intel{
    font-size:10px;
  }

  .community-result-person b{
    font-size:15px;
  }
  .community-result-status b{
    font-size:11px;
  }
  .community-result-date{
    font-size:11px;
  }
}

@media(prefers-reduced-motion:reduce){
  .community-tabs button{
    transition:none;
  }
}

/* =========================================================
   v0.9.2.1 — BINDER BUTTON HIERARCHY + READABILITY
   Strong metallic controls throughout My Binder.
   ========================================================= */

/* Primary New Project Binder action — metallic gold */
.binder-create-btn{
  min-height:52px;
  padding:12px 22px;
  border:2px solid #ffd65b !important;
  border-radius:17px !important;
  background:linear-gradient(180deg,#ffd34f 0%,#eeb51f 14%,#c98b08 48%,#a46604 76%,#653800 100%) !important;
  color:#fff !important;
  font-size:13px !important;
  font-weight:950 !important;
  letter-spacing:.04em;
  text-shadow:0 1px 1px rgba(72,38,0,.5);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65),inset 0 -4px 8px rgba(76,38,0,.48),0 7px 17px rgba(164,102,4,.25) !important;
}

/* Binder shelf cards — metal buttons rather than flat dark cards */
.binder-tab-book{
  min-height:70px;
  border:2px solid #68839b;
  background:linear-gradient(180deg,#29435a 0%,#1b3449 18%,#102536 55%,#091925 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.34),inset 0 -4px 8px rgba(0,0,0,.38),0 6px 15px rgba(0,0,0,.25);
}
.binder-tab-book::after{
  content:"";
  position:absolute;
  left:14px;
  right:14px;
  top:2px;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,transparent,rgba(225,244,255,.75),transparent);
  pointer-events:none;
}
.binder-tab-book b{
  font-size:15px;
  font-weight:950;
  letter-spacing:.025em;
  text-shadow:0 1px 1px rgba(0,0,0,.45);
}
.binder-tab-book small{
  margin-top:5px;
  color:#d1e1ee;
  font-size:12px;
  font-weight:650;
}
.binder-tab-book.active{
  border-color:#ffd65b;
  background:linear-gradient(180deg,#d49a19 0%,#ae7708 20%,#805005 57%,#4b2c02 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55),inset 0 -4px 8px rgba(67,35,0,.5),0 7px 18px rgba(177,111,0,.27),0 0 0 1px rgba(255,214,91,.12);
}
.binder-tab-book.active small{color:#fff2c7}

.binder-tab-book.projects-book{
  border-color:#c9a03d;
  background:linear-gradient(180deg,#795d1c 0%,#5c4310 22%,#392a0b 60%,#211707 100%);
}
.binder-tab-book.new-book{
  border:2px solid #45bfff;
  border-style:solid;
  color:#fff;
  background:linear-gradient(180deg,#168fe0 0%,#0874c2 14%,#075aa2 48%,#064681 76%,#032c58 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.5),inset 0 -4px 8px rgba(0,19,44,.48),0 7px 17px rgba(0,91,161,.25);
}
.binder-tab-book.new-book small{color:#d8f0ff}

/* Chapter buttons: Want / Pending / Success / Retry / All Activity */
.binder-tabs{
  gap:10px;
  padding:8px;
  border-color:#34495b;
  background:#081119;
}
.binder-tabs button{
  position:relative;
  overflow:hidden;
  min-height:48px;
  padding:10px 18px;
  border:2px solid #657484;
  border-radius:13px;
  color:#fff;
  font-size:14px;
  font-weight:950;
  letter-spacing:.015em;
  text-shadow:0 1px 1px rgba(0,0,0,.45);
  background:linear-gradient(180deg,#4a5662 0%,#34414d 22%,#202c37 62%,#121b24 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.28),inset 0 -3px 7px rgba(0,0,0,.34),0 4px 10px rgba(0,0,0,.18);
}
.binder-tabs button::before{
  content:"";
  position:absolute;
  left:9px;
  right:9px;
  top:2px;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.68),transparent);
  pointer-events:none;
}
.binder-tabs button[data-chapter="want"]{
  border-color:#55baf5;
  background:linear-gradient(180deg,#168fd8 0%,#0b70b5 19%,#07548c 58%,#04375d 100%);
}
.binder-tabs button[data-chapter="pending"]{
  border-color:#ffd45a;
  background:linear-gradient(180deg,#d8aa22 0%,#ad7e0c 22%,#775408 60%,#463003 100%);
}
.binder-tabs button[data-chapter="successes"]{
  border-color:#69df76;
  background:linear-gradient(180deg,#36a94d 0%,#25853a 22%,#17642c 60%,#0c421e 100%);
}
.binder-tabs button[data-chapter="failed"]{
  border-color:#ff747f;
  background:linear-gradient(180deg,#bb4350 0%,#91303c 22%,#67222c 60%,#3b1319 100%);
}
.binder-tabs button[data-chapter="all"]{
  border-color:#a3b4c5;
  background:linear-gradient(180deg,#657585 0%,#4b5c6b 22%,#31414f 60%,#1b2833 100%);
}
.binder-tabs button.active{
  border-color:#fff;
  color:#fff;
  filter:saturate(1.08) brightness(1.12);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55),inset 0 -3px 7px rgba(0,0,0,.28),0 0 0 2px rgba(255,255,255,.11),0 7px 16px rgba(0,0,0,.26);
}
.binder-tabs button span{
  min-width:25px;
  height:25px;
  margin-left:7px;
  background:rgba(5,12,18,.58);
  color:#fff;
  font-size:12px;
  font-weight:950;
  border:1px solid rgba(255,255,255,.16);
}
.binder-tabs button.active span{
  background:rgba(5,12,18,.72);
  color:#fff;
}

@media (hover:hover) and (pointer:fine){
  .binder-tab-book:hover,
  .binder-tabs button:hover,
  .binder-create-btn:hover{
    transform:translateY(-2px);
    filter:saturate(1.08) brightness(1.07);
  }
}

/* Do not make binder controls tiny on a phone. */
@media(max-width:760px){
  .binder-heading p{font-size:15px;line-height:1.5}
  .binder-shelf-label{font-size:12px}
  .binder-tab-book,
  .binder-tab-book.sport-book,
  .binder-tab-book.projects-book{
    min-width:175px;
    min-height:68px;
  }
  .binder-tab-book b{font-size:15px}
  .binder-tab-book small{font-size:12px}
  .binder-tabs{
    gap:8px;
    padding:7px;
  }
  .binder-tabs button{
    min-height:48px;
    padding:9px 15px;
    font-size:14px;
  }
  .binder-tabs button span{
    min-width:25px;
    height:25px;
    font-size:12px;
  }
  .binder-create-btn{font-size:14px !important}
}


/* =========================================================
   v0.9.2.2 — MAILING CARDS + COMMUNITY FILTER EMPHASIS
   ========================================================= */

/* ---------- MY MAILINGS: make each individual card distinct ---------- */
.mailing-history-card{
  position:relative;
  overflow:hidden;
  padding:24px;
  border-width:2px;
  background:
    linear-gradient(145deg,#111d28 0%,#0b151f 48%,#071019 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.055),
    inset 0 -8px 22px rgba(0,0,0,.16),
    0 9px 22px rgba(0,0,0,.20);
}

.mailing-history-card::before{
  content:"";
  position:absolute;
  left:0;
  top:18px;
  bottom:18px;
  width:6px;
  border-radius:0 6px 6px 0;
  background:#66798a;
  box-shadow:0 0 14px rgba(102,121,138,.30);
}

.mailing-history-card h3{
  margin:14px 0 12px;
  font-size:20px;
}

.mailing-history-card p{
  font-size:16px;
}

.mailing-history-card small{
  font-size:13px;
  color:#b8c6d1;
}

.mailing-history-card .sport-label{
  font-size:13px;
}

.mailing-history-card .status{
  font-size:12px;
  padding:8px 12px;
  border:1px solid currentColor;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12);
}

/* Waiting = gold */
.mailing-history-card.mailing-status-waiting{
  border-color:#8d6a16;
}
.mailing-history-card.mailing-status-waiting::before{
  background:linear-gradient(180deg,#ffe06b,#c38a08,#704400);
  box-shadow:0 0 15px rgba(230,170,19,.38);
}

/* Success = green */
.mailing-history-card.mailing-status-success{
  border-color:#286f3a;
}
.mailing-history-card.mailing-status-success::before{
  background:linear-gradient(180deg,#73ee82,#24a743,#0a5520);
  box-shadow:0 0 15px rgba(66,205,93,.35);
}

/* RTS / failed = red */
.mailing-history-card.mailing-status-rts,
.mailing-history-card.mailing-status-failed{
  border-color:#7b3440;
}
.mailing-history-card.mailing-status-rts::before,
.mailing-history-card.mailing-status-failed::before{
  background:linear-gradient(180deg,#ff7c8b,#cc3548,#711623);
  box-shadow:0 0 15px rgba(230,67,86,.35);
}

/* Returned unsigned = purple */
.mailing-history-card.mailing-status-unsigned{
  border-color:#6e3484;
}
.mailing-history-card.mailing-status-unsigned::before{
  background:linear-gradient(180deg,#e184ff,#9d3dc2,#55156f);
  box-shadow:0 0 15px rgba(183,76,221,.38);
}

.mailing-result-btn,
.mailing-view-btn{
  min-height:42px;
  padding:0 17px;
  font-size:12px;
  font-weight:950;
}

.mailing-result-btn{
  border:2px solid #ffd65b;
  background:linear-gradient(180deg,#e3ad1f,#9b6503);
  color:#fff;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.45),
    inset 0 -3px 6px rgba(70,34,0,.34);
}

.mailing-view-btn{
  border:2px solid #5d7b93;
  background:linear-gradient(180deg,#263b4d,#122230);
  color:#fff;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.15),
    inset 0 -3px 6px rgba(0,0,0,.30);
}

/* ---------- COMMUNITY ACTIVITY: search must look interactive ---------- */
.community-controls{
  border:2px solid #304451;
  background:linear-gradient(145deg,#0d1923,#08121b);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}

.community-search-wrap{
  height:48px;
  width:min(420px,100%);
}

.community-search-wrap input{
  border:2px solid #3499d2;
  background:
    linear-gradient(180deg,#10283a 0%,#091b29 55%,#06131e 100%);
  color:#fff;
  font-size:16px;
  font-weight:650;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.10),
    inset 0 -3px 8px rgba(0,0,0,.22),
    0 0 13px rgba(32,142,204,.12);
}

.community-search-wrap input::placeholder{
  color:#b7c8d5;
  opacity:.95;
}

.community-search-wrap input:focus{
  border-color:#6bd1ff;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.12),
    0 0 0 3px rgba(57,177,235,.14),
    0 0 18px rgba(57,177,235,.20);
}

.community-search-icon{
  color:#75d3ff;
  font-size:18px;
}

/* Sport filters: metallic blue; active = metallic gold */
.community-sport-pills{
  gap:9px;
}
.community-sport-pills button{
  min-height:42px;
  padding:8px 16px;
  border:2px solid #477a9d;
  background:linear-gradient(180deg,#214f70 0%,#153d5b 52%,#0c293f 100%);
  color:#fff;
  font-size:12px;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.16),
    inset 0 -3px 6px rgba(0,0,0,.24);
}
.community-sport-pills button.active{
  border-color:#ffd65b;
  background:linear-gradient(180deg,#e4ae22 0%,#b87806 56%,#754300 100%);
  color:#fff;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.42),
    inset 0 -3px 6px rgba(74,36,0,.30),
    0 0 12px rgba(219,157,16,.18);
}

/* Outcome filters: each has its own unmistakable metal color */
.community-outcomes{
  gap:9px;
}
.community-outcomes button{
  min-height:42px;
  padding:8px 16px;
  border-width:2px;
  color:#fff;
  font-size:12px;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.14),
    inset 0 -3px 6px rgba(0,0,0,.25);
}

.community-outcomes button[data-outcome="all"]{
  border-color:#718696;
  background:linear-gradient(180deg,#344858,#1b2d3b);
}
.community-outcomes button[data-outcome="success"]{
  border-color:#43a75b;
  background:linear-gradient(180deg,#267a3b,#114e25);
}
.community-outcomes button[data-outcome="rts"]{
  border-color:#c34a5a;
  background:linear-gradient(180deg,#7f2836,#49151f);
}
.community-outcomes button[data-outcome="unsigned"]{
  border-color:#a35ac0;
  background:linear-gradient(180deg,#6d3188,#3d1751);
}

.community-outcomes button.active{
  border-color:#fff !important;
  color:#fff !important;
  filter:brightness(1.16) saturate(1.08);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.35),
    inset 0 -3px 6px rgba(0,0,0,.24),
    0 0 0 2px rgba(255,255,255,.10),
    0 0 14px rgba(255,255,255,.09);
}

.community-window select{
  border:2px solid #587083;
  background:linear-gradient(180deg,#1d303f,#0e1c27);
  color:#fff;
  font-weight:800;
}

@media (hover:hover) and (pointer:fine){
  .mailing-history-card{
    transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease;
  }
  .mailing-history-card:hover{
    transform:translateY(-2px);
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.07),
      0 12px 27px rgba(0,0,0,.28);
  }

  .community-sport-pills button:hover,
  .community-outcomes button:hover{
    transform:translateY(-1px);
    filter:brightness(1.09);
  }
}

@media(max-width:700px){
  .mailing-history-card{
    padding:20px 18px 20px 22px;
  }
  .mailing-history-card h3{
    font-size:19px;
  }
  .mailing-history-card p{
    font-size:15px;
  }
  .mailing-history-card small{
    font-size:13px;
  }

  .community-search-wrap{
    height:50px;
  }
  .community-sport-pills button,
  .community-outcomes button{
    min-height:44px;
    font-size:13px;
    padding:9px 16px;
  }
}


/* =========================================================
   v0.9.2.3 — SEARCH RESULT CARDS
   Make each player result read as a distinct clickable card.
   ========================================================= */

.results-shell{
  border:2px solid #2b3d4b;
  background:linear-gradient(145deg,#0d1721 0%,#08111a 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.035),
    0 10px 28px rgba(0,0,0,.16);
}

#results{
  display:grid;
  gap:12px;
  margin-top:14px;
}

.result-row{
  position:relative;
  overflow:hidden;
  border:2px solid #344957;
  border-radius:16px;
  padding:18px 18px 18px 24px;
  background:
    linear-gradient(145deg,#142330 0%,#0d1923 48%,#09131c 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.07),
    inset 0 -6px 16px rgba(0,0,0,.13),
    0 6px 14px rgba(0,0,0,.17);
  transition:
    transform .14s ease,
    border-color .14s ease,
    box-shadow .14s ease,
    filter .14s ease;
}

.result-row::before{
  content:"";
  position:absolute;
  left:0;
  top:11px;
  bottom:11px;
  width:6px;
  border-radius:0 6px 6px 0;
}

/* Address available = green metallic edge */
.result-row.has-address{
  border-color:#315f43;
}
.result-row.has-address::before{
  background:linear-gradient(180deg,#7bf08c,#2db64d,#0d6125);
  box-shadow:0 0 14px rgba(67,210,94,.34);
}

/* No address = red metallic edge */
.result-row.no-address{
  border-color:#713640;
}
.result-row.no-address::before{
  background:linear-gradient(180deg,#ff8290,#d13b4f,#741a27);
  box-shadow:0 0 14px rgba(226,68,87,.31);
}

.result-row strong{
  font-size:19px;
  line-height:1.15;
  color:#fff;
}

.result-row span{
  margin-top:5px;
  font-size:14px;
  font-weight:650;
  color:#b7c8d5;
}

.result-row .availability{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:6px 12px;
  border:1px solid currentColor;
  border-radius:999px;
  font-size:13px;
  font-weight:850;
  background:rgba(0,0,0,.23);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}

.result-row .availability.yes{
  color:#6df57c;
  background:linear-gradient(180deg,rgba(31,115,50,.48),rgba(10,63,27,.55));
}

.result-row .availability.no{
  color:#ff7888;
  background:linear-gradient(180deg,rgba(128,39,53,.47),rgba(70,19,29,.55));
}

.result-row > b{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border:1px solid #607587;
  border-radius:50%;
  background:linear-gradient(180deg,#273c4d,#13232f);
  color:#fff;
  font-size:22px;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.14),
    inset 0 -3px 5px rgba(0,0,0,.24);
}

@media (hover:hover) and (pointer:fine){
  .result-row:hover{
    transform:translateY(-2px);
    filter:brightness(1.07);
    border-color:#7390a4;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.08),
      0 10px 22px rgba(0,0,0,.27);
  }
}

.result-row:focus-visible{
  outline:3px solid #fff;
  outline-offset:3px;
}

/* Keep phone results big enough to read and tap. */
@media(max-width:700px){
  #results{
    gap:10px;
  }

  .result-row{
    min-height:92px;
    padding:17px 14px 17px 21px;
  }

  .result-row strong{
    font-size:18px;
  }

  .result-row span{
    font-size:13px;
  }

  .result-row .availability{
    min-height:36px;
    width:max-content;
    max-width:100%;
    font-size:12px;
    padding:7px 11px;
  }

  .result-row > b{
    width:34px;
    height:34px;
    font-size:21px;
  }
}

@media(prefers-reduced-motion:reduce){
  .result-row{
    transition:none;
  }
}


/* =========================================================
   v0.9.3 — ADDRESS DESTINATIONS / ORGANIZATION SEARCH
   ========================================================= */

.result-row.destination-result{
  border-color:#75611f;
  background:linear-gradient(145deg,#1d2430 0%,#141c26 50%,#0b131c 100%);
}
.result-row.destination-result::before{
  background:linear-gradient(180deg,#ffe16c,#d59b12,#765000);
  box-shadow:0 0 15px rgba(224,170,34,.34);
}
.result-row .result-kind{
  color:#ffd45a;
  font-size:13px;
  font-weight:800;
  letter-spacing:.025em;
}

.destination-page{
  max-width:1320px;
}
.destination-hero{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:24px;
  margin:28px 0 24px;
  padding:28px;
  border:2px solid #314452;
  border-radius:20px;
  background:linear-gradient(145deg,#111d28,#09131c);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 10px 28px rgba(0,0,0,.18);
}
.destination-hero h1{
  margin:7px 0 6px;
  font-size:44px;
  line-height:1.05;
}
.destination-hero p{
  margin:0;
  font-size:16px;
  color:#b9c9d5;
}
.destination-availability{
  min-width:190px;
  padding:12px 16px;
  border:2px solid #80505a;
  border-radius:999px;
  background:linear-gradient(180deg,#592832,#32151d);
  color:#ff8995;
  text-align:center;
  font-size:12px;
  font-weight:950;
  letter-spacing:.06em;
}
.destination-availability.available{
  border-color:#3c9852;
  background:linear-gradient(180deg,#276f3a,#103e21);
  color:#79ef8b;
}
.destination-grid{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);
  gap:18px;
}
.destination-panel{
  border:2px solid #2e414f;
  border-radius:18px;
  padding:22px;
  background:linear-gradient(145deg,#0e1923,#08121a);
}
.destination-panel h2{
  margin:6px 0 18px;
  font-size:26px;
}
.destination-address-list,
.destination-people-list{
  display:grid;
  gap:12px;
}
.destination-address-card{
  display:grid;
  gap:9px;
  padding:18px;
  border:2px solid #315f43;
  border-radius:15px;
  background:linear-gradient(145deg,#13271c,#0b1912);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}
.destination-address-card>b{
  font-size:17px;
  line-height:1.45;
}
.destination-address-card small{
  font-size:13px;
  color:#b8c8bd;
}
.destination-address-status{
  width:max-content;
  padding:5px 9px;
  border:1px solid #4fae64;
  border-radius:999px;
  color:#78ed8a;
  font-size:10px;
  font-weight:950;
}
.destination-person-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:70px;
  padding:14px 16px;
  border:2px solid #334a5a;
  border-radius:14px;
  background:linear-gradient(145deg,#142431,#0c1822);
}
.destination-person-row span{
  display:grid;
  gap:4px;
}
.destination-person-row b{
  font-size:17px;
  color:#fff;
}
.destination-person-row small{
  font-size:13px;
  color:#a9bed0;
}
.destination-person-row i{
  font-size:26px;
  font-style:normal;
  color:#ffd24a;
}

@media(max-width:760px){
  .destination-hero{
    display:grid;
    align-items:start;
    padding:20px;
  }
  .destination-hero h1{
    font-size:34px;
  }
  .destination-availability{
    min-width:0;
    width:max-content;
    max-width:100%;
  }
  .destination-grid{
    grid-template-columns:1fr;
  }
  .destination-address-card>b,
  .destination-person-row b{
    font-size:16px;
  }
}
