:root{--q-panel:var(--panel,#171c26);--q-text:var(--text,#f4f5f8);--q-muted:var(--muted,#adb6c5);--q-line:var(--line,rgba(128,128,128,.25));--q-accent:var(--accent,#e5c453)}
html[data-theme]{--panel-2:var(--surface-2,#202633)}
.q-nav,.q-main,.q-admin-heading,.q-tabs{width:min(1400px,calc(100% - 32px));margin:0 auto}
.q-nav{display:flex;gap:5px;align-items:center;flex-wrap:wrap;padding:14px 0;border-bottom:1px solid var(--q-line)}
.q-nav a,.q-tabs a{padding:8px 12px;border-radius:8px;text-decoration:none;color:var(--q-muted);font-size:.9rem;font-weight:650}
.q-nav a[aria-current],.q-tabs a[aria-current]{background:var(--q-accent);color:#151515}
.q-nav a:hover,.q-tabs a:hover{outline:1px solid var(--q-line)}
.q-theme{display:flex!important;align-items:center;gap:8px;margin-left:auto;font-size:.78rem}.q-theme select{width:auto!important;padding:6px!important}
.q-admin-heading{display:flex;align-items:center;justify-content:space-between;padding:28px 0 20px;gap:20px}.q-admin-heading h1{margin:0;font-size:clamp(1.8rem,4vw,2.8rem)}
.q-eyebrow{font-size:.7rem;letter-spacing:.15em;color:var(--q-accent);font-weight:800;margin:0 0 5px}.q-main{padding:10px 0 60px;display:grid;gap:20px}
.q-tabs{display:flex;gap:8px;margin-bottom:18px;flex-wrap:wrap}
.q-card{padding:24px;border:1px solid var(--q-line);border-radius:18px;background:var(--q-panel);color:var(--q-text)}
.q-card h2{font-size:1.35rem;margin:0 0 15px}.q-card h3{margin:6px 0}.q-card p{color:var(--q-muted)}.q-card small{display:block;color:var(--q-muted);font-size:.78rem}
.q-card form:not(.q-inline):not(.q-toolbar):not(.q-calendar-row){display:grid;gap:14px}.q-card label{display:grid;gap:6px;font-size:.88rem;font-weight:650;min-width:0}
.q-card input,.q-card select,.q-card textarea{width:100%;min-width:0;font:inherit;color:var(--q-text);background:var(--surface-2,#232b39);border:1px solid var(--q-line);padding:10px 12px;border-radius:9px}
.q-card input[type=checkbox]{width:19px;height:19px;accent-color:var(--q-accent)}.q-card textarea{resize:vertical}
.q-button,.q-primary{display:inline-flex;align-items:center;justify-content:center;width:auto!important;padding:10px 14px!important;border:1px solid var(--q-line)!important;border-radius:9px;font:inherit;font-size:.86rem;font-weight:700;text-decoration:none;cursor:pointer;background:var(--surface-2,#232b39);color:var(--q-text)}
.q-primary{background:var(--q-accent);color:#151515;border-color:transparent!important}.q-button:disabled,.q-primary:disabled{opacity:.6;cursor:wait}
.q-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.q-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.q-stats a{text-decoration:none;display:grid;gap:8px}.q-stats strong{font-size:2.5rem;color:var(--q-accent)}
.q-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin-bottom:16px}.q-toolbar label{flex:1;min-width:150px}.q-toolbar input,.q-toolbar select{width:100%}.q-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:12px 0}
.q-movie-row{display:grid;grid-template-columns:22px minmax(130px,1fr) minmax(120px,.6fr) auto;align-items:center;gap:16px;padding:15px 0;border-top:1px solid var(--q-line)}
.q-movie-row>span{font-size:.83rem;color:var(--q-muted)}.q-movie-row .q-saved{grid-column:2/-1;color:#36b877}.q-calendar-row,.q-history-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px 0;border-top:1px solid var(--q-line)}.q-inline{display:flex;gap:8px;align-items:center}
.q-calendar-row .q-button{white-space:nowrap;flex:0 0 auto}.q-calendar-row .q-inline{flex-wrap:nowrap}.q-calendar-row .q-inline input[type=date]{min-width:160px}
.q-notice{padding:14px 18px;border:1px solid var(--q-line);border-left:3px solid var(--q-accent);border-radius:10px;margin:12px 0;background:var(--q-panel);color:var(--q-text)}.q-error{border-color:#e77b80;color:#e77b80}.q-saved{color:#36b877}.q-incomplete{color:var(--q-muted)}
.q-narrow{max-width:540px;width:100%;margin:30px auto}.q-card pre{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--surface-2,#232b39);padding:16px;border-radius:9px;color:var(--q-text)}
.q-response-tools{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:8px 0}.q-response-tools p{font-size:.8rem;flex-basis:100%;margin:2px 0;color:var(--q-muted)}
.q-highlight{outline:3px solid var(--q-accent);outline-offset:5px}.q-module-admin>.q-card,.q-module-admin>.q-notice{width:min(1400px,calc(100% - 32px));margin:16px auto}
.q-module-admin .modal-backdrop{position:static!important;display:block!important;background:none!important;padding:0!important;width:min(1400px,calc(100% - 32px));margin:0 auto 40px}
.q-module-admin .modal-card,.q-module-admin .admin-modal{width:100%!important;max-width:none!important;max-height:none!important;overflow:visible!important;box-shadow:none!important;transform:none!important;margin:0!important}
.q-module-admin .modal-body{max-height:none!important;overflow:visible!important}.q-module-admin [data-admin-close],.q-module-admin .admin-status-row,.q-module-admin .admin-heading{display:none!important}
.q-module-admin .modal-card[role=dialog],.q-module-admin .admin-modal[role=dialog]{position:static!important}.q-admin-page{overflow-x:hidden}
.q-card summary{cursor:pointer;font-weight:700}.q-admin-page input:focus-visible,.q-admin-page button:focus-visible,.q-admin-page a:focus-visible{outline:2px solid var(--q-accent);outline-offset:3px}
[hidden]{display:none!important}
@media(max-width:800px){.q-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.q-grid:not(.q-stats){grid-template-columns:1fr}.q-calendar-row{flex-wrap:wrap}.q-calendar-row>strong{width:100%}.q-nav{gap:3px}.q-nav a{padding:7px 9px}.q-theme{margin-left:0}.q-card{padding:18px}.q-movie-row{grid-template-columns:22px minmax(0,1fr) auto;gap:10px}.q-movie-row>span{grid-column:2;grid-row:2}.q-movie-row>a{grid-column:3;grid-row:1/3}.q-inline input{min-width:0}.q-history-row{align-items:start}.q-admin-heading{align-items:start}.q-admin-heading .q-button{font-size:.75rem}}

/* 2026-09-22: keep planned screening controls in fixed columns so all dates align. */
.q-screening-row{
  display:grid;
  grid-template-columns:minmax(180px,1fr) 285px auto;
  align-items:center;
  gap:16px;
}
.q-screening-row>strong{min-width:0}
.q-screening-row>.q-inline:first-of-type{
  display:grid;
  grid-template-columns:minmax(160px,1fr) auto;
  gap:8px;
  width:285px;
  justify-self:start;
}
.q-screening-row>.q-inline:first-of-type input[type=date]{width:100%;min-width:160px}
.q-screening-row>.q-inline:last-of-type{justify-self:end}
@media(max-width:800px){
  .q-screening-row{display:flex;flex-wrap:wrap;gap:10px 12px}
  .q-screening-row>strong{width:100%}
  .q-screening-row>.q-inline:first-of-type{width:auto;max-width:100%;grid-template-columns:minmax(150px,1fr) auto}
  .q-screening-row>.q-inline:last-of-type{margin-left:auto}
}

/* Special Vote: safe live settings while an open poll remains structurally locked. */
.admin-live-setting { display: flex; flex-direction: column; gap: .45rem; }
.admin-inline-setting-form { display: flex; align-items: center; gap: .55rem; flex-wrap: wrap; }
.admin-inline-setting-form select { min-width: 12rem; }
