/* ==========================================================================
   EventVault — site chrome (header + footer)
   Companion to ev-cards.css, which defines the --ev-* tokens.
   ========================================================================== */

/* ---------- logo ------------------------------------------------------- */
.ev-logo{display:inline-flex;align-items:center;gap:9px;line-height:0}
.ev-logo__icon{width:34px;height:34px;flex:none}
.ev-logo__word{height:19px;width:auto;color:var(--ev-ink)}
.ev-logo__r{font:600 8px/1 var(--ev-ui);color:var(--ev-ink-3);align-self:flex-start;margin-top:2px}
.ev-logo--icon .ev-logo__icon{width:30px;height:30px}

/* ---------- header ----------------------------------------------------- */
/* The bar floats in a contained shell rather than bleeding edge to edge — it
   keeps the header from running under the viewport edge on wide screens and
   reads as a distinct object rather than a band of chrome. */
.ev-header{position:sticky;top:0;z-index:1030;padding:12px 20px 0;background:transparent}
@media (max-width:620px){.ev-header{padding:8px 10px 0}.ev-header__shell{border-radius:12px}}
.ev-header__shell{max-width:1320px;margin:0 auto;background:var(--ev-surface);
  border:1px solid var(--ev-line);border-radius:14px;overflow:hidden;
  box-shadow:0 1px 2px rgba(46,46,46,.05), 0 10px 28px rgba(46,46,46,.07)}
.ev-header__bar{display:flex;align-items:center;gap:18px;padding:11px 18px;min-width:0}
.ev-header__nav{display:flex;gap:18px;flex:0 1 auto;min-width:0;overflow:hidden}
.ev-header__nav a{font:600 14px/1 var(--ev-ui);color:var(--ev-ink-2);text-decoration:none;
  padding:8px 0;border-bottom:2px solid transparent;white-space:nowrap}
.ev-header__nav a:hover{color:var(--ev-ink)}
.ev-header__nav a.is-on{color:var(--ev-ink);border-bottom-color:var(--ev-coral)}
.ev-header__spacer{flex:1}
.ev-header__acct{display:flex;align-items:center;gap:9px;flex:none}

.ev-searchbtn{display:flex;align-items:center;gap:8px;background:var(--ev-paper);
  border:1px solid var(--ev-line);border-radius:8px;padding:9px 14px;
  font:400 13.5px/1 var(--ev-ui);color:var(--ev-ink-3);cursor:pointer;min-width:190px;text-align:left}
.ev-searchbtn:hover{border-color:var(--ev-ink-3);color:var(--ev-ink-2)}

.ev-id{display:inline-flex;align-items:center;gap:8px;background:var(--ev-coral-soft);
  border-radius:22px;padding:8px 14px;text-decoration:none;
  font:600 12.5px/1 var(--ev-ui);color:var(--ev-coral-ink);white-space:nowrap;max-width:230px}
.ev-id__dot{width:7px;height:7px;border-radius:50%;background:var(--ev-coral);flex:none}
.ev-id__txt{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ev-id:hover{background:#FBD9E1;color:var(--ev-coral-ink)}

.ev-count{display:inline-block;min-width:18px;padding:1px 5px;border-radius:9px;
  background:var(--ev-coral-deep);color:#fff;font:700 11px/1.5 var(--ev-ui);text-align:center;margin-left:5px}

/* time chips row */
.ev-header__when{border-top:1px solid var(--ev-line);background:var(--ev-paper)}
.ev-header__when-inner{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;overflow-x:auto;
  padding:10px 18px;scrollbar-width:none}
.ev-header__when-inner::-webkit-scrollbar{display:none}
.ev-header__when-label{font:600 10px/1 var(--ev-ui);letter-spacing:.12em;text-transform:uppercase;
  color:var(--ev-ink-3);flex:none;margin-right:2px}
.ev-tchip{font:600 12.5px/1 var(--ev-ui);padding:8px 13px;border-radius:20px;
  border:1px solid var(--ev-line);background:var(--ev-surface);color:var(--ev-ink-2);
  text-decoration:none;white-space:nowrap;flex:none}
.ev-tchip:hover{border-color:var(--ev-ink-3);color:var(--ev-ink)}
.ev-tchip--now{border-color:var(--ev-coral-deep);background:var(--ev-coral-deep);color:#fff}
.ev-tchip--now:hover{color:#fff;background:var(--ev-coral-ink)}
.ev-tchip--soon{border-color:var(--ev-coral);color:var(--ev-coral-ink);background:var(--ev-coral-soft)}

.ev-burger{display:none;background:none;border:1px solid var(--ev-line);border-radius:8px;
  padding:9px 11px;cursor:pointer;color:var(--ev-ink);font-size:15px;line-height:1}

@media (max-width:1080px){
  .ev-header__nav{display:none}
  .ev-burger{display:block}
  .ev-searchbtn{min-width:0;width:44px;padding:9px 0;justify-content:center}
  .ev-searchbtn span{display:none}
}
@media (max-width:620px){
  .ev-header__bar{gap:12px;padding:10px 13px}
  .ev-logo__word{height:16px}
  .ev-id{display:none}
}

/* mobile drawer */
.ev-drawer{display:none;border-top:1px solid var(--ev-line);background:var(--ev-surface)}
.ev-drawer.is-open{display:block}
.ev-drawer a{display:block;padding:13px 22px;border-bottom:1px solid var(--ev-line);
  font:600 15px/1 var(--ev-ui);color:var(--ev-ink);text-decoration:none}
.ev-drawer a:last-child{border-bottom:0}

/* ---------- footer ----------------------------------------------------- */
.ev-footer{background:var(--ev-surface);border-top:1px solid var(--ev-line);margin-top:60px}
.ev-footer__inner{max-width:1320px;margin:0 auto;padding:0 22px}
.ev-club{display:flex;gap:24px;justify-content:space-between;align-items:center;flex-wrap:wrap;
  background:var(--ev-coral-soft);border-radius:14px;padding:26px 28px;margin:36px 0 34px}
.ev-club h2{font:700 22px/1.2 var(--ev-ui);margin:0 0 5px;color:var(--ev-ink);letter-spacing:-.015em}
.ev-club p{margin:0;font:400 14px/1.5 var(--ev-ui);color:var(--ev-ink-2);max-width:52ch}
.ev-club form{display:flex;gap:9px;flex-wrap:wrap}
.ev-club input{border:1px solid var(--ev-line);border-radius:8px;padding:11px 14px;
  font:400 14px/1 var(--ev-ui);min-width:210px;background:var(--ev-surface);color:var(--ev-ink)}
.ev-club input:focus{outline:2px solid var(--ev-coral-deep);outline-offset:1px}

.ev-footer__cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:26px;padding-bottom:32px}
.ev-footer__cols h3{font:600 11px/1 var(--ev-ui);letter-spacing:.1em;text-transform:uppercase;
  color:var(--ev-ink-3);margin:0 0 11px}
.ev-footer__cols a{display:block;font:400 14px/1.35 var(--ev-ui);color:var(--ev-ink-2);
  text-decoration:none;padding:4px 0}
.ev-footer__cols a:hover{color:var(--ev-coral-ink)}
.ev-footer__base{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;
  border-top:1px solid var(--ev-line);padding:18px 0 40px;
  font:400 12.5px/1.5 var(--ev-ui);color:var(--ev-ink-3)}
.ev-footer__base a{color:var(--ev-ink-3);text-decoration:none;margin-left:16px}
.ev-footer__base a:hover{color:var(--ev-ink-2)}
.ev-footer__brand{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
