/* Organizer presentation. Backend authorization and form contracts are unchanged. */
:root{color-scheme:light;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;--bg:#f3f6fc;--surface:#fff;--surface-2:#f7f9fc;--text:#102654;--muted:#526078;--border:#c5d3e6;--accent:#0750cf;--danger:#a52237;--success:#096c58}
*{box-sizing:border-box} [hidden]{display:none!important}
body{margin:0;min-height:100dvh;background:var(--bg);color:var(--text)}
a{color:var(--accent);text-underline-offset:3px}button,input,select,textarea{font:inherit;min-height:46px;border:1px solid var(--border);border-radius:9px}
button{padding:10px 18px;background:var(--accent);color:white;font-weight:650;cursor:pointer}
button.secondary{background:var(--surface);color:var(--text)}button.compact{width:auto;margin:0}
button:disabled{cursor:not-allowed;opacity:.55}
input,select,textarea{width:100%;padding:11px 12px;background:var(--surface-2);color:var(--text)}textarea{resize:vertical}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.organizer-shell{width:min(100% - 48px,1540px);min-height:100dvh;margin:0 auto;padding:24px 0 60px}
.organizer-shell:has(#app-view[hidden]){width:100%;padding:0}
.eyebrow{margin:0 0 8px;color:var(--accent);font-size:.7rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase}
h1,h2,h3{margin:0 0 12px;line-height:1.15;letter-spacing:-.035em}h1{font-size:clamp(1.6rem,3vw,2.25rem)}h2{font-size:1.5rem}h3{font-size:1.08rem}
.intro,.muted{color:var(--muted);line-height:1.6;font-size:.88rem}
form{display:grid;gap:14px}label{display:grid;gap:7px;font-size:.86rem;font-weight:650}label span{color:var(--muted);font-size:.85em;font-weight:400}
.app-header,.toolbar,.editor-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}
.app-header{padding:0 0 22px;border-bottom:1px solid var(--border)}.app-header h1{margin:6px 0}.app-header .muted{margin:0;overflow-wrap:anywhere}
.organizer-brand img{width:110px;height:55px;object-fit:contain}.organizer-brand{display:block;line-height:0;margin-bottom:10px}
.organizer-header-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.toolbar{margin:22px 0;padding:16px 20px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}
.toolbar label{font-size:.78rem}.toolbar select{flex:1;max-width:450px}.toolbar #new-event{flex-shrink:0}
.organizer-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px;align-items:start}
.organizer-nav{position:sticky;top:24px;display:grid;gap:5px;padding:18px 12px;border-radius:14px;background:#071b46;color:#fff}
.organizer-nav-label{padding:10px 10px 4px;color:#b9cbea;font-size:.65rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}
.organizer-nav button{border:1px solid transparent;background:transparent;color:#eef4ff;text-align:left;font-size:.85rem;border-radius:8px;line-height:1.4;padding:10px}
.organizer-nav button:hover:not(:disabled){background:#143365}.organizer-nav button[aria-current]{background:#0750cf;border-color:#4384ec}
.organizer-nav .muted{padding:10px;margin:0;color:#c4d3ed;font-size:.72rem}
.workspace,.editor-panel{min-width:0}.event-list-panel,.organizer-overview,.editor-panel{border:1px solid var(--border);border-radius:16px;background:var(--surface);padding:clamp(20px,2.5vw,32px)}
.editor-panel>div>.catalog-panel{margin:0;padding:0;border:0}.editor-heading{align-items:flex-start;margin-bottom:16px}
.event-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.event-row,.overview-event{display:grid;gap:6px;width:100%;min-height:86px;padding:18px;text-align:left;background:var(--surface-2);color:var(--text);overflow-wrap:anywhere}
.event-row span,.overview-event span{color:var(--muted);font-size:.78rem;line-height:1.5}
.event-row:hover,.overview-event:hover{border-color:var(--accent);background:#edf3ff}
.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
fieldset{min-width:0;margin:0;padding:20px;border:1px solid var(--border);border-radius:12px;display:grid;gap:14px}
legend{padding:0 6px;color:var(--accent);font-size:.8rem;font-weight:750}
.creation-steps{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.creation-steps a{padding:8px 12px;border:1px solid var(--border);border-radius:6px;font-size:.75rem;text-decoration:none}
.state{display:inline-flex;align-items:center;padding:6px 10px;border:1px solid #b7dbd0;border-radius:6px;background:#e9f6f0;color:var(--success);font-size:.7rem;font-weight:700}
.state.blocked{background:#fff1f2;border-color:#edb8c0;color:var(--danger)}
.checklist{margin-top:24px;padding:22px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}
.checklist li{margin:10px 0;color:var(--muted);line-height:1.5}.checklist li.passed{color:var(--success)}.checklist li.failed{color:var(--danger)}
.status{margin:16px 0;padding:12px;border-radius:9px;color:var(--danger);line-height:1.5;overflow-wrap:anywhere;background:#fff1f2;font-size:.86rem}.status:empty{display:none}.status[data-kind=success]{color:var(--success);background:#e9f6f0}
.catalog-panel{margin-top:24px}.catalog-list{display:grid;gap:14px;margin:20px 0}
.catalog-card,.access-card{padding:18px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2);min-width:0;overflow-wrap:anywhere}
.catalog-card header{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.catalog-card p,.access-card p{margin:8px 0;color:var(--muted);font-size:.85rem;line-height:1.5}
.catalog-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.catalog-actions button{min-height:44px}
.order-list{display:grid;gap:12px;margin-top:16px}.order-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:18px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}
.order-card p{grid-column:1/-1;margin:0;color:var(--muted);font-size:.85rem;line-height:1.6;overflow-wrap:anywhere}
.access-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(210px,100%),1fr));gap:12px;margin:20px 0}
.check-field{align-content:center;grid-template-columns:auto 1fr}.check-field input{width:auto;min-height:24px}
details{margin-top:16px;padding:18px;border:1px solid var(--border);border-radius:12px}summary{cursor:pointer;font-weight:650;min-height:30px}details[open]>summary{margin-bottom:18px}
.overview-intro{display:flex;align-items:center;justify-content:space-between;gap:24px}.overview-intro h2{font-size:clamp(1.55rem,3vw,2.1rem);max-width:500px}.overview-intro p{color:var(--muted);font-size:.9rem;line-height:1.6;max-width:560px}.overview-intro button{flex-shrink:0}
.overview-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:28px 0}
.overview-metrics article{display:grid;gap:8px;padding:24px;border-radius:12px;background:#edf3ff;border:1px solid #ccdafa}.overview-metrics strong{font-size:2rem;color:var(--accent)}.overview-metrics span{font-size:.8rem;color:var(--muted)}
.overview-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}.overview-columns section>div{display:grid;gap:12px}
.organizer-empty{padding:22px;border:1px dashed #b6c8e4;border-radius:12px;background:#f5f8ff;color:var(--muted);font-size:.88rem;line-height:1.65;margin:12px 0}
.report-value{font-size:1.7rem!important;font-weight:750;color:var(--accent)!important}
@media(max-width:1100px){.organizer-layout{grid-template-columns:190px minmax(0,1fr);gap:16px}.overview-intro{align-items:flex-start;flex-direction:column}.overview-columns{grid-template-columns:1fr}}
@media(max-width:900px){.organizer-shell{width:calc(100% - 24px);padding-top:16px}.organizer-layout{grid-template-columns:1fr}.organizer-nav{position:static;grid-template-columns:1fr 1fr}.organizer-nav-label,.organizer-nav .muted{grid-column:1/-1}.organizer-nav.is-collapsed{display:none}.app-header{align-items:flex-start;flex-wrap:wrap}.organizer-header-actions{width:100%;justify-content:flex-start}.toolbar{flex-wrap:wrap}.toolbar label{width:100%}.toolbar select{min-width:0;max-width:none}.overview-metrics article{padding:16px}.event-list{grid-template-columns:1fr}}
@media(max-width:620px){.field-grid{grid-template-columns:1fr}.overview-metrics{gap:8px}.overview-metrics article{padding:12px}.overview-metrics span{font-size:.7rem}.overview-metrics strong{font-size:1.65rem}.toolbar #new-event{width:100%}.editor-heading{flex-wrap:wrap}fieldset,details,.checklist{padding:16px}.order-card{grid-template-columns:1fr}.order-card p{grid-column:auto}.catalog-actions button{flex:1}.organizer-overview,.editor-panel,.event-list-panel{padding:18px}.creation-steps a{flex:1 0 40%;text-align:center}.organizer-nav button{font-size:.8rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
.template-native-control {
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  margin:-1px!important;
  padding:0!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  white-space:nowrap!important;
  border:0!important;
}
.template-picker { margin:22px 0 8px; padding:20px; border:1px solid var(--border); border-radius:16px; background:color-mix(in srgb,var(--surface-2) 68%,transparent); }
.template-picker-heading { align-items:flex-start; }
.template-picker-heading h3 { margin-bottom:0; }
.template-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-top:18px; }
.template-card {
  min-width:0;
  overflow:hidden;
  border:1px solid var(--border);
  border-radius:16px;
  background:var(--surface);
  transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease;
}
.template-card[data-selected="true"] { border-color:var(--accent); box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 24%,transparent); }
.template-card[data-compatible="false"] { opacity:.68; }
.template-card:hover { transform:translateY(-2px); }
.template-preview { position:relative; aspect-ratio:3/2; overflow:hidden; border-bottom:1px solid var(--border); background:linear-gradient(135deg,var(--surface-2),var(--bg)); }
.template-preview img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.template-preview-placeholder {
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  padding:18px;
  color:var(--muted);
  font-size:clamp(1.1rem,2vw,1.5rem);
  font-weight:900;
  letter-spacing:.08em;
  text-align:center;
  text-transform:uppercase;
}
.template-card-body { display:grid; gap:9px; padding:16px; }
.template-card-body h4 { margin:0; font-size:1rem; }
.template-badges { display:flex; flex-wrap:wrap; gap:6px; min-height:24px; }
.template-badge { padding:4px 7px; border-radius:999px; background:color-mix(in srgb,var(--accent) 16%,var(--surface-2)); color:var(--accent); font-size:.68rem; font-weight:850; text-transform:uppercase; }
.template-badge.current { background:#e9f6f0; color:var(--success); }
.template-badge.warning { background:#fff1f2; color:var(--danger); }
.template-meta,.template-capabilities { margin:0; color:var(--muted); font-size:.8rem; line-height:1.45; }
.template-capabilities { min-height:2.35em; }
.template-select-button { width:100%; min-height:42px; margin-top:4px; }
.template-select-button[aria-pressed="true"] { background:transparent; color:var(--success); border-color:color-mix(in srgb,var(--success) 52%,var(--border)); }
.template-change-panel {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-top:16px;
  padding:16px;
  border:1px solid color-mix(in srgb,var(--accent) 45%,var(--border));
  border-radius:14px;
  background:var(--surface);
}
.template-change-panel[hidden] { display:none; }
.template-change-panel p { margin:6px 0 0; color:var(--muted); line-height:1.5; }
.template-change-actions { display:flex; flex-wrap:wrap; gap:8px; flex:0 0 auto; }

@media (max-width:980px) { .template-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:620px) {
  .template-picker { padding:16px; }
  .template-grid { grid-template-columns:1fr; }
  .template-change-panel { align-items:stretch; flex-direction:column; }
  .template-change-actions { display:grid; grid-template-columns:1fr; width:100%; }
}
