
:root{
  --wood:#1d1611;
  --wood2:#2d2118;
  --gold:#b68b4c;
  --paper:#f3e2bd;
  --paper2:#e5cb98;
  --ink:#271c12;
  --muted:#675843;
  --good:#24563a;
  --bad:#7a2a23;
}
*{box-sizing:border-box}
body{
  margin:0;
  font-family:Georgia,"Times New Roman",serif;
  color:#f3e7cc;
  background:
    radial-gradient(circle at 50% 0%,rgba(255,255,255,.05),transparent 30%),
    repeating-linear-gradient(90deg,rgba(255,255,255,.012) 0 1px,transparent 1px 8px),
    linear-gradient(#251b15,#15110e);
}
a{color:inherit}
.site-header{
  background:linear-gradient(#2f2118,#1c1510);
  border-bottom:4px solid var(--gold);
  box-shadow:0 6px 16px rgba(0,0,0,.35);
  padding:18px 26px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
}
.site-header h1{margin:0;font-size:clamp(26px,3vw,36px)}
.site-header .ver{font-size:.55em;color:#d9b46f}
.site-header p{margin:5px 0 0;color:#d9c8a7}
nav{display:flex;gap:10px;flex-wrap:wrap}
nav a{
  text-decoration:none;
  border:2px solid #a57b42;
  background:linear-gradient(#edd9ae,#d6b77d);
  color:#2a1c12;
  padding:10px 14px;
  border-radius:7px;
  font-weight:900;
}
nav a.active{background:linear-gradient(#c39a5b,#aa8045)}
.page-wrap{max-width:1320px;margin:0 auto;padding:24px 22px 44px}
.flash-stack{display:grid;gap:10px;margin-bottom:16px}
.flash{
  padding:12px 14px;border-radius:8px;
  background:#f4e2bf;color:#2e2015;border:1px solid #b48d55
}
.flash.success{background:#dce9dd;border-color:#78967d;color:#214731}
.flash.error{background:#efd8d5;border-color:#b16d65;color:#6f241f}

.panel, .start-panel, .timeline-panel, .final-panel{
  color:var(--ink);
  background:
    linear-gradient(rgba(246,232,197,.98),rgba(229,206,156,.98)),
    repeating-linear-gradient(0deg,rgba(84,58,28,.025) 0 1px,transparent 1px 5px);
  border:8px solid #3f2919;
  outline:3px solid #b1884e;
  border-radius:12px;
  box-shadow:0 14px 28px rgba(0,0,0,.32);
}
.panel{padding:22px}
.panel h2, .timeline-panel h2{
  margin:0 0 10px;
  font-size:28px;
  border-bottom:3px double #8c6738;
  padding-bottom:8px;
}
.help{font-size:14px;line-height:1.48;color:#66543e}
.small-note{font-size:12px;color:#6d5a43;line-height:1.45}
.tag{
  display:inline-block;
  margin:2px 4px 0 0;
  padding:3px 8px;
  border-radius:999px;
  border:1px solid #a27b43;
  background:#dbc18d;
  font-size:11px;
}

.start-panel{
  max-width:760px;
  margin:0 auto 20px;
  padding:26px 24px;
  text-align:center;
}
.start-panel h2{margin:0 0 8px;font-size:clamp(34px,5vw,52px);color:#5b321d}
.start-panel p{max-width:620px;margin:8px auto 18px;color:#5f4c38;line-height:1.5}
.start-controls{
  display:flex;justify-content:center;align-items:end;gap:12px;flex-wrap:wrap
}
.start-controls .field{min-width:280px;text-align:left}
.start-controls label{display:block;margin-bottom:6px;font-weight:900}
.hidden{display:none !important}

.primary-btn,.secondary-btn,.danger-btn,.secondary-link{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:42px;padding:10px 16px;border-radius:7px;text-decoration:none;
  font-weight:900;border:2px solid #2d1d12
}
.primary-btn{background:linear-gradient(#745033,#4c311e);color:#f7e4ba}
.secondary-btn,.secondary-link{background:linear-gradient(#8a7b67,#665a4d);color:#f4e7c7}
.danger-btn{background:linear-gradient(#8d3c33,#662720);color:#fff2ea}

input,select,textarea{
  width:100%;
  border:2px solid #aa844d;
  border-radius:6px;
  padding:10px 11px;
  background:#fff9ea;
  color:#2a2117;
  font:inherit;
}
textarea{min-height:96px;resize:vertical}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.form-grid .full{grid-column:1/-1}
.form-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.preview-img{
  width:250px;aspect-ratio:16/9;border:7px solid #452c19;border-radius:7px;
  overflow:hidden;background:#b99c68;margin-top:8px
}
.preview-img img{width:100%;height:100%;object-fit:cover}

.admin-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(380px,.9fr);gap:22px}
.admin-tools{display:grid;grid-template-columns:minmax(220px,2fr) minmax(120px,1fr) minmax(140px,1fr) auto auto;gap:10px;margin:10px 0 14px}
.event-list{max-height:480px;overflow:auto;border-top:1px solid #c6a975;padding-top:8px}
.event-item{padding:10px 2px;border-bottom:1px solid #d1bc91}
.event-row{
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start
}
.event-row-actions{display:flex;gap:8px;flex-wrap:wrap}
.inline-form{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.tag-manager,.backup-panel{margin-top:22px;padding-top:16px;border-top:2px solid rgba(111,78,39,.25)}
.tag-manager-row{
  display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;gap:10px;align-items:center;
  padding:10px 0;border-bottom:1px solid #d1bc91
}
.backup-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}

.play-topbar{
  display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;
  margin-bottom:16px;padding:10px 14px;border:1px solid rgba(205,166,95,.28);
  background:rgba(238,218,178,.06);border-radius:8px
}
.books{font-size:30px;letter-spacing:4px}
.scoreline{font-size:18px;font-weight:900}
.notice{
  padding:12px 15px;border-radius:7px;background:#eee0bd;color:#31251a;border:1px solid #b58f58;margin:11px 0 18px
}
.notice.good{background:#dce9db;border-color:#78977c;color:#244c31}
.notice.bad{background:#ecd7d3;border-color:#aa6e68;color:#672822}
.result-banner{
  text-align:center;font-size:clamp(42px,7vw,76px);font-weight:900;letter-spacing:.1em;
  margin:0 0 18px;padding:15px;border:6px double;border-radius:9px;
  box-shadow:0 8px 22px rgba(0,0,0,.28)
}
.result-banner.correct{background:#e3efe0;border-color:#588166;color:#245237}
.result-banner.incorrect{background:#f0dcda;border-color:#a85b55;color:#772922}
.play-layout{display:grid;grid-template-columns:minmax(360px,520px) minmax(0,1fr);gap:32px;align-items:start}
.card{
  width:min(100%,520px);
  aspect-ratio:2/3;
  position:relative;
  margin:0 auto;
  background:url("card_frame.png") center/100% 100% no-repeat;
  filter:drop-shadow(0 14px 24px rgba(0,0,0,.34));
  color:var(--ink);
}
.image-frame{
  position:absolute;
  left:11.85%;
  top:11.16%;
  width:76.3%;
  height:32.35%;
  z-index:2;
  overflow:hidden;
  background:#3e3226;
  clip-path:polygon(0% 8.5%,4.3% 0%,95.7% 0%,100% 8.5%,100% 91.5%,95.7% 100%,4.3% 100%,0% 91.5%);
}
.image-frame img{width:100%;height:100%;display:block;object-fit:cover;object-position:center center}
.card-text{position:absolute;inset:0;z-index:3;color:var(--ink);overflow:hidden;pointer-events:none}
.intro-copy{
  position:absolute;left:10%;right:10%;top:46.5%;height:11.8%;
  margin:0;display:flex;align-items:center;justify-content:center;text-align:center;
  font-size:clamp(19px,2.45vw,31px);line-height:1.12;font-weight:900
}
.reveal-head{
  position:absolute;left:14.2%;right:14.2%;top:46.3%;height:12.8%;
  display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;overflow:hidden
}
.reveal-year{margin:0 0 4px;font-size:clamp(27px,3vw,39px);line-height:1;font-weight:900}
.reveal-title{margin:0;font-size:clamp(16px,1.9vw,23px);line-height:1.08;font-weight:900}
.reveal-body{
  position:absolute;left:14.7%;right:14.7%;top:63.6%;bottom:8.8%;
  overflow:auto;text-align:left;padding:0;font-size:clamp(11.5px,1.23vw,14px);line-height:1.30
}
.place-banner{
  position:absolute;left:16%;right:16%;top:66.2%;z-index:4;text-align:center;
  font-size:clamp(16px,1.75vw,24px);line-height:1.2;font-style:italic;color:#4a3724
}
.card-controls{display:flex;justify-content:center;margin-top:16px}

.timeline-panel{padding:22px}
.timeline-guide{
  margin:0 0 10px;padding:8px 10px;text-align:center;font-size:13px;font-weight:800;
  letter-spacing:.03em;color:#f3e5c5;background:rgba(48,34,23,.94);border:1px solid rgba(218,184,116,.35);border-radius:7px
}
.timeline-scroll{max-height:900px;overflow-y:auto;padding-right:6px}
.slot{
  min-height:52px;border:3px dashed #9a7443;border-radius:7px;background:#fff6df;
  display:flex;align-items:center;justify-content:center;padding:10px 12px 10px 55px;
  color:#5f452b;font-weight:900;position:relative;z-index:1;width:100%;margin:8px 0
}
.slot::before{content:"";position:absolute;left:14px;width:18px;height:18px;border-radius:50%;background:#d7b36d;border:4px solid #5b3e24}
.slot:hover{background:#f1dfb8;border-color:#4e321c}
.event-row.timeline-event{
  margin-left:44px;background:#f4e5c2;border:1px solid #b18c52;border-left:7px solid #54361f;
  padding:11px 13px;border-radius:6px;position:relative;z-index:1
}
.event-row.timeline-event::before{
  content:"";position:absolute;left:-35px;top:50%;width:15px;height:15px;margin-top:-7px;border-radius:50%;background:#684522;border:4px solid #ebd7aa
}
.event-row.timeline-event .date{font-weight:900;font-size:17px}
.event-row.timeline-event .name{font-size:14px;color:#64533e;margin-top:3px}
.jump-controls{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:10px 0 0}
.timeline-count{text-align:center;margin-top:8px;font-size:12px;color:#6d5a43}
.final-panel{padding:24px 22px;margin-bottom:18px;text-align:center}
.final-score{font-size:clamp(34px,5vw,54px);font-weight:900;margin:12px 0 5px}
.final-subtitle{font-size:18px;margin-bottom:18px;color:#5e4d38}
.final-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:650px;margin:0 auto 18px}
.final-stat{background:#f8edd1;border:1px solid #b49159;border-radius:7px;padding:11px 9px}
.final-stat strong{display:block;font-size:24px;color:#4a3020}
.final-stat span{display:block;margin-top:3px;font-size:12px;color:#6b5941}
.final-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}

@media(max-width:980px){
  .play-layout,.admin-grid{grid-template-columns:1fr}
}
@media(max-width:760px){
  .admin-tools{grid-template-columns:1fr}
  .tag-manager-row{grid-template-columns:1fr}
  .form-grid{grid-template-columns:1fr}
  .form-grid .full{grid-column:auto}
}
@media(max-width:640px){
  .final-stats{grid-template-columns:1fr}
}

.field-counter{
  margin-top:5px;
  font-size:12px;
  color:#6d5a43;
  text-align:right;
}
.field-counter.near-limit{
  color:#8a5c13;
  font-weight:700;
}
.field-counter.at-limit{
  color:#8a321e;
  font-weight:900;
}
.field-counter.over-limit{
  color:#9b1c13;
  font-weight:900;
}
.combined-counter{
  margin-top:4px;
  padding-top:4px;
  border-top:1px dotted #b79b6b;
}


/* v24 admin layout repairs */
.admin-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:22px;
}

.admin-grid > .panel{
  min-width:0;
  width:100%;
}

.admin-tools{
  display:grid;
  grid-template-columns:minmax(180px,2fr) minmax(120px,1fr) minmax(140px,1fr);
  gap:10px;
  margin:10px 0 14px;
  align-items:end;
}

.admin-tools > *{
  min-width:0;
  width:100%;
}

.admin-tools .secondary-btn,
.admin-tools .secondary-link{
  width:auto;
  justify-self:start;
}

.event-row{
  grid-template-columns:minmax(0,1fr);
  gap:10px;
}

.event-row-actions{
  justify-content:flex-start;
}

.tag-manager-row{
  display:grid;
  grid-template-columns:minmax(180px,1fr) minmax(0,1.3fr);
  gap:10px 14px;
  align-items:start;
}

.tag-manager-row > div:first-child{
  min-width:0;
}

.tag-manager-row form{
  min-width:0;
}

.tag-manager-row .inline-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px;
  align-items:center;
}

.tag-manager-row input[type="text"]{
  min-width:0;
  width:100%;
}

.tag-manager-row .secondary-btn,
.tag-manager-row .danger-btn{
  white-space:normal;
  width:auto;
  max-width:100%;
}

.tag-manager-row form:nth-of-type(1),
.tag-manager-row form:nth-of-type(3){
  justify-self:start;
}

.backup-actions{
  align-items:flex-start;
}

@media(min-width:980px){
  .admin-grid{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  }

  .admin-tools{
    grid-template-columns:minmax(180px,2fr) minmax(120px,1fr) minmax(140px,1fr) auto auto;
  }

  .event-row{
    grid-template-columns:minmax(0,1fr) auto;
  }

  .tag-manager-row{
    grid-template-columns:minmax(140px,.9fr) minmax(0,1.5fr);
  }
}

@media(max-width:760px){
  .admin-tools{
    grid-template-columns:1fr;
  }

  .admin-tools .secondary-btn,
  .admin-tools .secondary-link{
    width:100%;
    justify-self:stretch;
  }

  .tag-manager-row{
    grid-template-columns:1fr;
  }

  .tag-manager-row .inline-form{
    grid-template-columns:1fr;
  }

  .tag-manager-row .secondary-btn,
  .tag-manager-row .danger-btn{
    width:100%;
  }
}


/* v25 filter row repair */
.admin-tools{
  display:grid !important;
  grid-template-columns:minmax(180px,2fr) minmax(120px,1fr) minmax(140px,1fr) !important;
  gap:10px !important;
  align-items:end !important;
}

.admin-tools > input,
.admin-tools > select{
  min-width:0 !important;
  width:100% !important;
}

.admin-tools .secondary-btn,
.admin-tools .secondary-link{
  width:auto !important;
  min-width:0 !important;
  max-width:100% !important;
  justify-self:start !important;
}

.admin-tools .secondary-btn{
  grid-column:1 / 2 !important;
}

.admin-tools .secondary-link{
  grid-column:2 / 3 !important;
}

@media(max-width:760px){
  .admin-tools{
    grid-template-columns:1fr !important;
  }

  .admin-tools .secondary-btn,
  .admin-tools .secondary-link{
    grid-column:auto !important;
    width:100% !important;
    justify-self:stretch !important;
  }
}


/* v36 admin layout restoration */
.admin-grid{
  display:grid !important;
  grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr) !important;
  gap:22px !important;
  align-items:start !important;
}
.admin-grid > .panel{
  min-width:0 !important;
  width:100% !important;
}
@media(max-width:900px){
  .admin-grid{
    grid-template-columns:1fr !important;
  }
}

/* v36 Body Text line-break preservation */
.reveal-body{
  white-space:pre-line;
}


/* v37 placement/reveal flow */
.timeline-heading-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  border-bottom:3px double #8c6738;
  padding-bottom:8px;
  margin-bottom:10px;
}
.timeline-heading-row h2{
  margin:0;
  padding:0;
  border:0;
}
.timeline-result{
  font-size:24px;
  font-weight:900;
  letter-spacing:.03em;
  padding:4px 10px;
  border-radius:6px;
}
.timeline-result.correct{
  color:#245237;
  background:#dce9db;
  border:1px solid #78977c;
}
.timeline-result.incorrect{
  color:#772922;
  background:#f0dcda;
  border:1px solid #a85b55;
}
.reveal-next-wrap{
  display:flex;
  justify-content:center;
  margin:0 0 12px;
}
.next-event-prominent{
  width:100%;
  min-height:54px;
  padding:12px 18px;
  border:3px solid #2d1d12;
  border-radius:8px;
  background:linear-gradient(#8a5b34,#57351f);
  color:#f9e9c6;
  font-size:22px;
  font-weight:900;
  letter-spacing:.04em;
  box-shadow:0 5px 12px rgba(0,0,0,.25);
}
.next-event-prominent:hover{
  background:linear-gradient(#996a40,#624027);
}


/* v38 reveal Next Event overlay */
.card{
  position:relative;
}
.reveal-next-wrap{
  position:absolute;
  left:7%;
  right:7%;
  top:1.2%;
  z-index:12;
  display:flex;
  justify-content:center;
  margin:0;
  pointer-events:auto;
}
.next-event-prominent{
  width:100%;
  min-height:52px;
  padding:10px 16px;
  border:3px solid #2d1d12;
  border-radius:8px;
  background:linear-gradient(#8a5b34,#57351f);
  color:#f9e9c6;
  font-size:21px;
  font-weight:900;
  letter-spacing:.04em;
  box-shadow:0 4px 10px rgba(0,0,0,.28);
}


/* v39 Timeline intro instruction */
.timeline-result.instruction{
  color:#5f452b;
  background:#f4e5c2;
  border:1px solid #b18c52;
  font-size:16px;
  font-weight:900;
  letter-spacing:0;
  max-width:52%;
  text-align:right;
}


/* v41 timeline/card height matching */
.timeline-panel{
  box-sizing:border-box;
  display:flex;
  flex-direction:column;
  min-height:0;
  overflow:hidden;
}
.timeline-scroll{
  flex:1 1 auto;
  min-height:0;
  max-height:none;
  overflow-y:auto;
}
.jump-controls-top{
  margin:0 0 10px;
}

/* v41 two-second placement result */
.placement-flash{
  position:fixed;
  left:50%;
  top:24%;
  transform:translate(-50%,-50%);
  z-index:2000;
  padding:22px 46px;
  border-radius:14px;
  background:rgba(255,255,255,.97);
  border:5px solid currentColor;
  box-shadow:0 14px 38px rgba(0,0,0,.34);
  font-size:60px;
  line-height:1;
  font-weight:1000;
  letter-spacing:.02em;
  text-transform:uppercase;
  pointer-events:none;
}
.placement-flash.correct{color:#159447;}
.placement-flash.incorrect{color:#e01919;}

/* v41 larger bright-red Display Next Event button */
.next-event-prominent{
  min-height:76px !important;
  padding:17px 20px !important;
  background:#ef1010 !important;
  color:#fff !important;
  border:4px solid #7e0000 !important;
  border-radius:10px !important;
  font-size:30px !important;
  line-height:1.05 !important;
  font-weight:1000 !important;
  letter-spacing:.025em !important;
  box-shadow:0 6px 16px rgba(0,0,0,.36) !important;
}
.next-event-prominent:hover{
  background:#ff2a2a !important;
}

@media(max-width:980px){
  .timeline-panel{
    height:auto !important;
    max-height:none !important;
    overflow:visible;
  }
  .timeline-scroll{
    max-height:900px;
  }
}


/* v42 scroll guidance around Oldest/Newest controls */
.jump-controls{
  align-items:center;
}
.jump-scroll-note{
  font-size:11px;
  line-height:1.2;
  color:#6b5941;
  font-weight:800;
  text-align:center;
  max-width:125px;
}

/* v42 timeline thumbnails */
.event-row.timeline-event{
  display:block;
  overflow:hidden;
  padding:0;
  min-height:58px;
}
.timeline-event-copy{
  min-height:58px;
  padding:9px 72px 9px 13px;
  box-sizing:border-box;
}
.event-row.timeline-event .date{
  font-weight:900;
  font-size:17px;
}
.event-row.timeline-event .name{
  font-size:14px;
  color:#64533e;
  margin-top:3px;
  padding-right:0;
}
.timeline-thumb{
  position:absolute;
  top:-1px;
  right:-1px;
  bottom:-1px;
  width:64px;
  height:calc(100% + 2px);
  object-fit:cover;
  border-left:1px solid #b18c52;
  border-radius:0 6px 6px 0;
  display:block;
}

/* v42 final timeline screen */
.final-panel{
  max-width:980px;
  margin-left:auto;
  margin-right:auto;
}
.final-timeline-section{
  margin:22px auto 20px;
  max-width:860px;
  text-align:left;
}
.final-timeline-section h3{
  margin:0 0 12px;
  text-align:center;
  font-size:28px;
  color:#4a3020;
}
.final-timeline{
  display:flex;
  flex-direction:column;
  gap:10px;
  max-height:560px;
  overflow-y:auto;
  padding:4px 6px 4px 2px;
}
.final-timeline-row{
  display:grid;
  grid-template-columns:150px minmax(0,1fr);
  min-height:92px;
  overflow:hidden;
  border:2px solid #9e7744;
  border-radius:8px;
  background:#f4e5c2;
  box-shadow:0 3px 8px rgba(0,0,0,.12);
}
.final-timeline-art{
  width:150px;
  height:100%;
  min-height:92px;
  object-fit:cover;
  border-right:2px solid #9e7744;
}
.final-timeline-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:12px 15px;
}
.final-timeline-date{
  font-size:18px;
  font-weight:900;
  color:#3d2b1d;
}
.final-timeline-title{
  margin-top:4px;
  font-size:17px;
  line-height:1.25;
  color:#5a4630;
  font-weight:800;
}

@media(max-width:700px){
  .jump-scroll-note{
    display:none;
  }
  .timeline-event-copy{
    padding-right:62px;
  }
  .timeline-thumb{
    width:54px;
  }
  .final-timeline-row{
    grid-template-columns:110px minmax(0,1fr);
  }
  .final-timeline-art{
    width:110px;
  }
}


/* v43 All History inclusion checkbox */
.checkbox-line{
  display:flex;
  align-items:center;
  gap:9px;
  min-height:38px;
  padding:7px 9px;
  border:1px solid #b99b68;
  border-radius:6px;
  background:#f6e9cb;
  font-weight:800;
  box-sizing:border-box;
}
.checkbox-line input[type="checkbox"]{
  width:auto;
  min-width:18px;
  height:18px;
  margin:0;
}


/* v44 timeline event-row background */
.event-row.timeline-event{
  background:#d8f7fb;
}


/* v45 categorized tag entry */
.tag-sections{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.tag-entry-section{
  border:1px solid #b99b68;
  border-radius:7px;
  background:#f8edcf;
  padding:10px;
}
.tag-entry-controls{
  display:grid;
  grid-template-columns:minmax(170px,.9fr) minmax(220px,1.4fr);
  gap:8px;
  align-items:center;
}
.tag-entry-section label{
  display:block;
  margin-bottom:6px;
  font-weight:900;
}
.tag-entry-section select,
.tag-entry-section input{
  width:100%;
  min-width:0;
}
@media(max-width:900px){
  .tag-sections{
    grid-template-columns:1fr;
  }
}
@media(max-width:650px){
  .tag-entry-controls{
    grid-template-columns:1fr;
  }
}


/* v46 tag-field containment repair */
.tag-sections{
  min-width:0;
  width:100%;
  box-sizing:border-box;
}
.tag-entry-section{
  min-width:0;
  width:100%;
  box-sizing:border-box;
  overflow:hidden;
}
.tag-entry-controls{
  width:100%;
  min-width:0;
  box-sizing:border-box;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
}
.tag-entry-controls > *{
  min-width:0;
  max-width:100%;
  width:100%;
  box-sizing:border-box;
}
.tag-entry-section select,
.tag-entry-section input{
  min-width:0 !important;
  max-width:100% !important;
  width:100% !important;
  box-sizing:border-box !important;
}


/* Live-site header adaptation: keeps the v46 game presentation while branding the public site. */
.live-site-header{
  background:linear-gradient(#2f2118,#1c1510);
  border-bottom:4px solid var(--gold);
  box-shadow:0 6px 16px rgba(0,0,0,.35);
  padding:14px 24px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  flex-wrap:wrap;
}
.live-site-header a{
  color:#f3e7cc;
  text-decoration:none;
  font-weight:900;
}
.live-site-header .site-name{
  font-size:24px;
}
.live-site-header .game-name{
  font-size:18px;
  color:#d9c8a7;
}
.page-wrap.live{
  padding-top:24px;
}
