:root{
  --bg:#151018; --panel:#1D1622; --line:#2E2534; --ink:#EDE8F0; --dim:#9B90A5;
  --pink:#FA2E7B; --green:#3ED598;
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);
  font:15px/1.55 "Poppins",system-ui,-apple-system,Segoe UI,Roboto,sans-serif}
a{color:var(--pink);text-decoration:none}
a:hover{text-decoration:underline}
body.centered{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:20px}

.bar{display:flex;justify-content:space-between;align-items:center;gap:16px;
  padding:14px 22px;background:var(--panel);border-bottom:1px solid var(--line)}
.wrap{max-width:1240px;margin:0 auto;padding:24px 22px 60px}
.two-col{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:28px;align-items:start}
@media (max-width:1000px){.two-col{grid-template-columns:1fr}}

.card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:20px;margin-bottom:20px}
.card.narrow{width:min(380px,100%)}
h1{font-size:20px;font-weight:600;margin:0 0 16px}
fieldset{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:16px 18px 20px;margin:0 0 18px}
legend{padding:0 8px;color:var(--pink);font-weight:600;font-size:14px}

label{display:block;margin:12px 0 0;font-size:13px;color:var(--dim)}
.hint{color:#6F6478;font-size:12px}
input,textarea,select{width:100%;margin-top:5px;padding:9px 11px;background:#120E17;color:var(--ink);
  border:1px solid var(--line);border-radius:8px;font:inherit;font-size:14px}
input:focus,textarea:focus,select:focus{outline:2px solid var(--pink);outline-offset:1px;border-color:transparent}
input[type=file]{padding:7px;font-size:13px}
.row{display:flex;gap:10px;align-items:flex-end;margin-top:10px}
.row .grow,.grow{flex:1}
.stack{display:grid;gap:6px;margin-top:12px;padding-left:10px;border-left:2px solid var(--line)}

button{margin-top:16px;padding:10px 18px;border:0;border-radius:8px;background:var(--pink);color:#fff;
  font:inherit;font-weight:600;cursor:pointer}
button:hover{filter:brightness(1.08)}
button.link{background:none;color:var(--dim);padding:0;margin:0;font-weight:400;font-size:13px}
button.primary{width:100%;padding:14px}

.list{width:100%;border-collapse:collapse;margin-bottom:24px}
.list td{padding:11px 10px;border-bottom:1px solid var(--line);vertical-align:middle}
.list td form{display:inline}
.dim{color:var(--dim);font-size:13px}

.notice{background:rgba(62,213,152,.12);border:1px solid rgba(62,213,152,.4);color:#9BEBC8;
  padding:10px 14px;border-radius:8px;margin:0 0 16px;font-size:14px}
.error{background:rgba(250,46,123,.12);border:1px solid rgba(250,46,123,.45);color:#FFA8C6;
  padding:10px 14px;border-radius:8px;margin:0 0 16px;font-size:14px}

.col-preview{position:sticky;top:20px}
.slides{display:grid;gap:12px}
.slides img{width:100%;border-radius:10px;border:1px solid var(--line);display:block}
