/* Multi-event additions to the original, familiar styles. */
body.platform-public{background:var(--bg)}
.platform-admin{background:var(--background,#f9fafb)}
.platform-admin .admin-main{padding:16px}
.admin-nav{flex-wrap:wrap}
.admin-nav a.active{background:#2762ea;color:#fff}
.platform-admin h1{margin-top:16px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:16px}
.grid>.card{margin-top:0;min-width:0}
.actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:16px}
.actions form{margin:0}
.button,button{display:inline-block;line-height:1.5;text-decoration:none;background:var(--primary);color:var(--button-text,#fff)}
.button:hover,button:hover{filter:brightness(.94);text-decoration:none;color:var(--button-text,#fff)}
button{font:inherit;padding:10px 16px;border:1px solid transparent;border-radius:8px;cursor:pointer}
.secondary{background:var(--color-border,#e5e7eb);color:var(--color-text,#1f2937)}
.secondary:hover{color:var(--color-text,#1f2937)}
.danger{background:#dc2626;color:#fff}
.danger:hover{color:#fff}
input[type=datetime-local],input[type=color]{max-width:100%;padding:10px 12px;border:1px solid var(--color-border,#d1d5db);border-radius:8px;background:var(--color-surface,#fff);color:var(--color-text,#222);font:inherit}
input[type=datetime-local]{width:100%}
input[type=color]{width:100%;height:48px}
input,select,textarea{font:inherit}
label:has(input[type=checkbox]){display:flex;gap:8px;align-items:flex-start;font-weight:400}
input[type=checkbox]{flex-shrink:0;margin-top:4px;accent-color:var(--primary)}
.notice{padding:12px 14px;border:1px solid #a7f3d0;border-radius:8px;background:#ecfdf5;color:#065f46;margin:12px 0}
.notice.error{background:#fef2f2;border-color:#fecaca;color:#7f1d1d}
.table-scroll{overflow-x:auto}
details{margin-top:20px}summary{cursor:pointer;font-weight:600}
.preview{padding:20px;background:var(--background);border:1px solid var(--color-border,#e5e7eb);border-radius:10px;color:#222}
.preview p{color:inherit}
.platform-public .card{margin-bottom:16px}
.platform-public .grid{grid-template-columns:1fr}
.platform-public .site-footer{text-align:center;color:var(--text-muted)}
.site-footer a,.admin-footer a{margin:0 8px}
.admin-footer{padding:20px 16px}
:focus-visible{outline:3px solid #2563eb;outline-offset:3px}
@media(max-width:640px){.admin-header-inner{padding:12px}.admin-nav{gap:8px}.admin-nav a{padding:6px 10px}.actions{align-items:stretch}.actions .button,.actions>button{width:100%;text-align:center}.card{padding:16px}}

@media(prefers-color-scheme:dark){.platform-admin{background:#394655}.platform-admin main a:not(.button){color:#93c5fd}.platform-admin .preview{background:var(--background,#f9fafb);color:#222}}

/* Public start screen: original single-event layout and contact card. */
.platform-public .brand img{width:100%;height:100px;object-fit:contain}
.platform-public .site-title{margin-top:10px;font-size:1.5rem;font-weight:700;color:#1f2937;text-align:center}
.platform-public main.container{margin-top:32px}
.platform-public .contact-card{margin-top:16px}
.platform-public .contact-card .legal-links{margin-top:28px}
.platform-public .contact-card a{color:var(--primary)}
.platform-public .quantity-options{padding:0;margin:12px 0;border:0}
.platform-public .quantity-options legend{font-weight:600;padding:0}
.platform-public .quantity-options label{font-weight:400}
.platform-public .privacy-consent{align-items:flex-start}
.platform-public .all-events-link{margin:16px 0}
.platform-public .button.primary{background:var(--primary);color:var(--button-text,#fff)}
@media(max-width:640px){.platform-public .site-title{font-size:1.1rem}.platform-public .brand img{max-width:100%;height:auto;max-height:100px}.platform-public .contact-card .legal-links{line-height:1.8}}

/* Original blue dashed dividers keep related subject/body fields together. */
.platform-admin .event-editor .section-divider{height:0;border:0;border-top:2px dashed #2663eb;margin:30px 0}
.platform-admin .event-editor section>h2,.platform-admin .event-editor section>h3{margin-top:0}
.platform-admin .event-editor details>section{margin:0}

/* Clear form groups and breathing room before SMTP actions. */
.platform-admin .section-divider,.city-settings .section-divider{height:0;border:0;border-top:2px dashed #2663eb;margin:30px 0}
.city-settings>input[type=text]{display:block;width:100%;margin-bottom:20px}
.city-settings>label{margin-top:16px}
.smtp-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px;margin-bottom:16px}
.user-editor{max-width:760px}.user-editor input{display:block;margin-top:6px}.user-editor input[type=checkbox]{display:inline-block}

.city-settings input[type=file]{display:block;margin-top:8px;margin-bottom:16px}

/* Contact details and city logo editor. */
.city-settings #contact_details{display:block;width:100%;margin-top:8px;min-height:160px}
.city-settings #contact-help{margin:8px 0 24px}
.city-logo-editor{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,320px);gap:32px;align-items:start;margin:16px 0 28px}
.city-logo-current{min-width:0;text-align:right}
.city-logo-frame{background:#fff;border:1px solid var(--color-border,#e5e7eb);border-radius:10px;padding:16px;min-height:120px;display:flex;align-items:center;justify-content:center}
.city-logo-frame img{display:block;max-width:100%;max-height:140px;width:auto;height:auto;object-fit:contain}
.city-logo-frame img[hidden],.city-logo-frame p[hidden]{display:none}
.city-logo-frame p{color:#6b7280;margin:0;text-align:center}
.city-settings .city-logo-remove{justify-content:flex-end;margin-top:12px}
.city-settings input[type=file]{width:100%;max-width:100%;font:inherit;color:var(--color-text,#222)}
.city-settings input[type=file]::file-selector-button{font:inherit;font-weight:600;background:var(--primary,#2563eb);color:var(--button-text,#fff);border:0;border-radius:8px;padding:10px 16px;margin-right:12px;cursor:pointer}
.city-settings input[type=file]::file-selector-button:hover{filter:brightness(.94)}
@media(max-width:640px){.city-logo-editor{grid-template-columns:1fr;gap:16px}.city-logo-current{text-align:left}.city-settings .city-logo-remove{justify-content:flex-start}}

.event-access-list{border:1px solid var(--color-border,#e5e7eb);border-radius:8px;padding:12px 16px;margin:12px 0}
.event-access-list label{display:flex;gap:8px;align-items:flex-start}
.event-access-list input[type=checkbox]{width:auto;display:inline-block;flex-shrink:0}
