/* WinterCon roster pages — shared look for Con Workers, Volunteers,
   Allies, and Sponsors. Lifted from the old combined people.html so the
   four scoped pages stay visually identical to what they replaced. */
:root{
  --bg:#fbfaf7;          /* warm ivory — not parchment, not gray */
  --ink:#26282e;         /* deep charcoal */
  --quiet:#8f8c84;       /* quiet labels */
  --hair:#e7e3da;        /* thin warm borders */
  --navy:#2c4468;        /* dark navy */
  --green:#2e6b4f;       /* forest green */
  --burgundy:#7d2c3a;    /* deep burgundy */
  --pine:#1f5e5a;        /* deep pine for allies */
  --goldink:#a97b12;     /* gold, used sparingly */
  --gold:#c9971f;
}
*{box-sizing:border-box;}
html,body{margin:0;background:var(--bg);color:var(--ink);font-family:'Helvetica Neue',Arial,sans-serif;}
.serif{font-family:'Iowan Old Style','Palatino Linotype',Palatino,Georgia,serif;}
#page{max-width:920px;padding:38px 52px 60px;}

/* ---- masthead ---- */
#crumb{font-size:12px;letter-spacing:.14em;text-transform:uppercase;}
#crumb a{color:var(--quiet);text-decoration:none;}
#crumb a:hover{color:var(--navy);}
#titlerow{display:flex;align-items:baseline;gap:13px;}
#titlerow .caticon{width:23px;height:23px;flex:none;transform:translateY(4px);}
h1{font-family:'Iowan Old Style','Palatino Linotype',Palatino,Georgia,serif;
   font-size:42px;font-weight:600;margin:10px 0 6px;letter-spacing:.01em;}
#titlerow #q{margin-left:auto;}
#mastrule{margin-top:18px;border-top:1px solid var(--ink);border-bottom:3px double var(--hair);height:5px;}

/* ---- sibling nav ---- */
#peoplenav{margin:8px 0 0;display:flex;gap:16px;flex-wrap:wrap;
  font-size:11px;letter-spacing:.16em;text-transform:uppercase;}
#peoplenav a{color:var(--quiet);text-decoration:none;}
#peoplenav a:hover{color:var(--navy);}
#peoplenav .here{color:var(--ink);font-weight:600;}

/* ---- toolbar ---- */
#q{font:inherit;font-size:14px;padding:8px 12px;border:1px solid var(--hair);border-radius:6px;
   background:#fff;min-width:250px;transition:border-color .15s;}
#q:focus{outline:none;border-color:var(--navy);}
#bar{display:flex;margin:14px 0 0;}
#counts{margin-left:auto;font-size:13px;color:var(--quiet);}
#counts b{color:var(--green);font-weight:600;}

/* ---- roster rows ---- */
main{margin-top:18px;}
.row{position:relative;padding:14px 8px 13px 0;border-bottom:1px solid var(--hair);
     animation:rise .18s ease-out;transition:background .15s;}
.row:hover{background:#fff;}
@keyframes rise{from{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}
.row .top{display:flex;align-items:baseline;gap:14px;}
.pname{font-family:'Iowan Old Style','Palatino Linotype',Palatino,Georgia,serif;
       font-size:17.5px;font-weight:600;min-width:40px;outline:none;border-radius:4px;padding:0 3px;}
.pname:empty::before{content:'add a name';font-style:italic;font-weight:400;color:#b9b5aa;}
.prole{font-size:13.5px;color:#55524b;outline:none;border-radius:4px;padding:0 3px;flex:1;}
.prole:empty::before{content:'role';color:#c4c0b5;font-style:italic;}
.dots{display:flex;gap:5px;align-items:center;}
.dot{width:13px;height:13px;min-width:13px;border-radius:50%;border:1.5px solid #b9b5aa;background:transparent;
     cursor:pointer;padding:0;transition:background .15s,border-color .15s;}
.dot:hover{border-color:var(--ink);}
.dot.y{background:#d9a520;border-color:#d9a520;}
.dot.g{background:var(--green);border-color:var(--green);}
.dot.x{background:#c9c5ba;border-color:#c9c5ba;}
.slab{font-size:12px;font-weight:600;margin-left:7px;min-width:96px;}
.s-idea{color:#8f8c84;} .s-contact{color:var(--goldink);} .s-talking{color:var(--navy);}
.s-committed{color:var(--green);} .s-declined{color:#9c8288;}
.pnotes{font-size:13px;color:#6d6a62;line-height:1.55;margin-top:4px;outline:none;border-radius:4px;padding:0 3px;}
.pnotes:empty::before{content:'notes';color:#c4c0b5;font-style:italic;}
.meta{display:flex;gap:18px;margin-top:5px;font-size:12px;color:var(--quiet);}
.meta span{outline:none;border-radius:4px;padding:0 3px;min-width:30px;}
.meta .pcontact:empty::before{content:'contact';color:#c9c5ba;font-style:italic;}
.meta .ploc:empty::before{content:'location';color:#c9c5ba;font-style:italic;}
[contenteditable]:focus{background:#fff;box-shadow:inset 0 0 0 1.5px var(--gold);}
.del{position:absolute;top:12px;right:6px;border:none;background:none;color:#c9c5ba;font-size:15px;
     cursor:pointer;opacity:0;transition:opacity .15s;padding:2px 6px;}
.row:hover .del{opacity:1;}
.del:hover{color:var(--burgundy);}

.recruit{margin:10px 0 0;}
.recruit button{font:inherit;font-size:13.5px;font-weight:600;border:none;background:none;cursor:pointer;
                padding:4px 0;transition:transform .15s;}
.recruit button:hover{transform:translateY(-1px);text-decoration:underline;}
.empty{margin:10px 0 0;font-size:13px;font-style:italic;color:var(--quiet);}

/* ---- quiet tools ---- */
#tools{margin-top:50px;padding-top:14px;border-top:1px solid var(--hair);display:flex;gap:20px;align-items:baseline;flex-wrap:wrap;}
#tools .lbl{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--quiet);}
#tools button{font:inherit;font-size:12.5px;border:none;background:none;color:#77746b;cursor:pointer;padding:0;}
#tools button:hover{color:var(--navy);text-decoration:underline;}

@media(max-width:700px){ #page{padding:26px 22px 50px;}
  #titlerow{flex-wrap:wrap;} #titlerow #q{margin:8px 0 0;width:100%;min-width:0;} }
