:root{--ink:#18354a;--green:#15574f;--blue:#159fdb;--line:#dbe7e7;--muted:#627586;--serif:'DM Serif Display',Georgia,serif;--sans:'Plus Jakarta Sans',Arial,sans-serif}
*{box-sizing:border-box}
[hidden]{display:none!important}
body{margin:0;min-width:320px;background:radial-gradient(circle at 90% 5%,#e5f7f2,transparent 38rem),#f5f9fa;color:var(--ink);font-family:var(--sans)}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
a{color:inherit}
.editor-header{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:76px;padding:10px max(4vw,calc((100vw - 1200px)/2));border-bottom:1px solid var(--line);background:rgba(255,255,255,.92)}
.editor-header>a:last-child{font-size:11px;font-weight:800;text-decoration:none}
.editor-header>a:last-child:hover{text-decoration:underline}
.editor-brand{display:flex;align-items:center;gap:11px;text-decoration:none}
.editor-brand img{width:48px;height:48px;padding:3px;border-radius:50%;background:#fff;box-shadow:0 5px 15px rgba(19,59,66,.12)}
.editor-brand span{color:#178a99;font-size:9px;font-weight:800;letter-spacing:.16em}
.editor-brand strong{display:block;margin-top:3px;color:var(--ink);font-size:12px;letter-spacing:.04em}
main{max-width:1200px;margin:auto;padding:34px 28px 85px}
.editor-intro{max-width:780px;margin:18px 0 35px}
.editor-intro>p,.section-label{margin:0;color:#188377;font-size:10px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.editor-intro h1{margin:12px 0;font:clamp(2.5rem,5vw,4.6rem)/1 var(--serif);letter-spacing:-.035em}
.editor-intro span,.auth-panel p,.editor-toolbar span{color:var(--muted);font-size:13px;line-height:1.7}
.editor-message{margin:0 0 20px;padding:15px 18px;border:1px solid #acd7cb;border-radius:14px;background:#e8f7f1;color:#16574d;font-size:13px;font-weight:700}
.editor-message.error{border-color:#ecc3bd;background:#fff0ee;color:#a13930}
.auth-panel{display:grid;grid-template-columns:1fr minmax(280px,400px);gap:35px;align-items:center;padding:clamp(25px,4vw,45px);border:1px solid var(--line);border-radius:28px;background:#fff;box-shadow:0 15px 42px rgba(17,55,67,.07)}
.auth-panel h2{max-width:550px;margin:12px 0;font:clamp(2rem,4vw,3.2rem)/1.08 var(--serif)}
.auth-panel form{display:grid;gap:17px}
label{display:block;color:#35556a;font-size:11px;font-weight:800}
label small{font-size:10px;font-weight:500}
input:not([type=checkbox]):not([type=file]),textarea,select{display:block;width:100%;min-height:46px;margin-top:8px;padding:11px 13px;border:1px solid #d4e2e5;border-radius:11px;background:#fbfdfd;color:var(--ink);font-size:13px;outline:none;transition:border-color .2s,box-shadow .2s}
textarea{resize:vertical;min-height:90px}
input:focus,textarea:focus,select:focus{border-color:#159fdb;box-shadow:0 0 0 3px rgba(21,159,219,.14)}
input[type=file]{display:block;width:100%;margin-top:9px;padding:12px;border:1px dashed #adc6c6;border-radius:11px;background:#f7fbfa;font-size:12px}
button[type=submit],#newEventButton{min-height:46px;padding:11px 18px;border:0;border-radius:12px;background:linear-gradient(110deg,#15574f,#168b7d);box-shadow:0 9px 20px rgba(21,87,79,.17);color:#fff;font-size:11px;font-weight:800;letter-spacing:.04em}
button[type=submit]:hover,#newEventButton:hover{filter:brightness(1.08)}
button:disabled{cursor:wait;opacity:.65}
.quiet-button{min-height:44px;padding:10px 15px;border:1px solid #d5e3e4;border-radius:11px;background:#fff;color:#315867;font-size:11px;font-weight:800}
.editor-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:0 0 19px}
.editor-toolbar h2{margin:7px 0 3px;font:2.2rem var(--serif)}
.editor-grid{display:grid;grid-template-columns:minmax(230px,305px) minmax(0,1fr);gap:20px;align-items:start}
.event-sidebar,.event-form{border:1px solid var(--line);border-radius:23px;background:#fff;box-shadow:0 12px 31px rgba(17,55,67,.055)}
.event-sidebar{padding:18px;position:sticky;top:20px}
.sidebar-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:13px}
.sidebar-title h3{margin:0;font:1.5rem var(--serif)}
#newEventButton{min-height:38px;padding:8px 13px}
.admin-events-list{display:grid;gap:8px}
.admin-events-list>p{color:var(--muted);font-size:12px}
.admin-event-item{display:block;width:100%;padding:13px;border:1px solid #e1ebea;border-radius:12px;background:#f8fbfb;color:var(--ink);text-align:left}
.admin-event-item:hover,.admin-event-item.active{border-color:#60b5a7;background:#eaf7f4}
.admin-event-item strong{display:block;font-size:12px;line-height:1.4}
.admin-event-item span{display:block;margin-top:5px;color:#64817f;font-size:10px}
.event-form{padding:27px}
.form-heading{display:flex;justify-content:space-between;gap:12px;align-items:start;margin-bottom:22px}
.form-heading h3{margin:7px 0 0;font:2rem var(--serif)}
#formMode{padding:7px 10px;border-radius:999px;background:#eaf7f4;color:#197568;font-size:9px;font-weight:800;letter-spacing:.08em}
.form-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.field-wide,.poster-preview{grid-column:1/-1}
.poster-preview{overflow:hidden;border:1px solid #dce8e7;border-radius:14px;background:#f7fbfa}
.poster-preview img{display:block;max-width:100%;max-height:300px;margin:auto;object-fit:contain}
.publish-toggle{display:flex;align-items:center;gap:12px;min-height:62px;padding:10px 13px;border:1px solid #dbe8e4;border-radius:11px;background:#f1faf7}
.publish-toggle input{flex:none;width:20px;height:20px;accent-color:#168b7d}
.publish-toggle span{font-size:12px}.publish-toggle small{display:block;margin-top:4px;color:#5c756e;line-height:1.4}
.form-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:23px;padding-top:22px;border-top:1px solid #e8efef}
@media(max-width:820px){.auth-panel,.editor-grid{grid-template-columns:1fr}.event-sidebar{position:static}.admin-events-list{grid-template-columns:repeat(2,minmax(0,1fr))}.editor-intro h1{font-size:3rem}}
@media(max-width:550px){.editor-header{padding:9px 17px}.editor-brand img{width:40px;height:40px}.editor-brand span{font-size:7px}.editor-brand strong{font-size:9px}.editor-header>a:last-child{font-size:9px}main{padding:24px 16px 65px}.editor-intro h1{font-size:2.6rem}.auth-panel,.event-form{padding:20px}.form-fields,.admin-events-list{grid-template-columns:1fr}.editor-toolbar h2{font-size:1.8rem}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
