:root{--bg:#04060c;--bg-elevated:#0b1324;--bg-soft:#0b1529;--border:#1e2f4f;--text:#f8fafc;--muted:#c2ccde;--muted-strong:#8fa1c2;--accent:#3b82f6;--accent-strong:#60a5fa;--admin-data-max-width:1440px}*,:before,:after{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--text);margin:0;padding:0;font-family:Inter,SF Pro Text,Segoe UI,system-ui,-apple-system,sans-serif}body{line-height:1.6}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.site{min-height:100vh;position:relative}.page{z-index:1;padding:96px 24px 72px;position:relative}.container{max-width:1200px;margin:0 auto}.admin-container-wide{width:min(var(--admin-data-max-width), calc(100vw - 48px));max-width:var(--admin-data-max-width);margin:0 auto}.admin-section-wide{width:100%;max-width:var(--admin-data-max-width)}.admin-table-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.section{margin-top:64px}.section-tight{margin-top:40px}.hero{gap:28px;display:grid}.logo-placeholder{border:1px dashed var(--border);color:var(--muted-strong);letter-spacing:.12em;text-transform:uppercase;justify-content:center;align-items:center;width:fit-content;padding:14px 18px;font-size:14px;display:inline-flex}.logo-image{width:220px;height:auto;display:block}.hero-title{letter-spacing:.01em;margin:0;font-size:clamp(32px,4vw,54px);font-weight:600;line-height:1.15}.hero-title span{display:block}.hero-lede{color:var(--muted);margin:0;font-size:18px}.lede{color:var(--muted);margin:0 0 20px;font-size:17px}.card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:16px;padding:24px;box-shadow:0 18px 40px #00000038}.card h3{margin-top:0;margin-bottom:10px;font-size:18px}.card p{color:var(--muted);margin:0}.card-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;display:grid}.records-list{gap:10px;margin:16px 0 0;padding:0;list-style:none;display:grid}.records-list li{color:var(--muted);padding-left:18px;position:relative}.records-list li:before{content:"•";color:#6ea8ff;position:absolute;left:0}.metrics{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:18px;display:grid}.metric{border:1px solid var(--border);background:var(--bg-soft);border-radius:14px;padding:18px}.metric-value{font-size:28px;font-weight:600}.metric-label{color:var(--muted);font-size:14px}.form-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;display:grid}.form-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:16px;padding:24px}.form-title{margin:0 0 14px;font-size:18px}.field{gap:8px;margin-bottom:14px;display:grid}.field label{color:var(--muted-strong);font-size:13px}.field input,.field select{border:1px solid var(--border);color:var(--text);background:#0b1222;border-radius:10px;padding:10px 12px;font-size:14px}.checkbox-row{color:var(--muted);align-items:flex-start;gap:10px;margin-bottom:16px;font-size:13px;display:flex}.checkbox-row input{margin-top:3px}.cta-button{background:var(--accent);color:#f8fafc;cursor:pointer;border:none;border-radius:10px;width:100%;padding:12px 16px;font-weight:600}.cta-button:hover{background:var(--accent-strong)}.footer{color:var(--muted-strong);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px 32px;max-width:100%;margin-top:72px;font-size:13px;display:grid}@media (min-width:700px){.footer{grid-template-columns:1fr 1fr 1fr auto}}.footer a{color:var(--accent)}.back-link{color:var(--muted-strong);margin-bottom:24px;font-size:14px;display:inline-block}.back-link:hover{color:var(--accent);text-decoration:none}.starfield{pointer-events:none;opacity:.52;z-index:0;width:100%;height:100%;position:fixed;inset:0}.section-title{margin:0 0 12px;font-size:22px}.pill{border:1px solid var(--border);color:var(--muted-strong);text-transform:uppercase;letter-spacing:.12em;border-radius:999px;align-items:center;gap:8px;padding:6px 14px;font-size:12px;display:inline-flex}.note{color:var(--muted);max-width:740px;font-size:14px}.workshop-programme-hero{max-width:860px}.workshop-kicker{color:var(--muted-strong);letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:12px}.workshop-intro-panel{background:linear-gradient(#0b1324f5,#0b1529eb)}.workshop-card{gap:18px;display:grid}.workshop-card-header{gap:10px;display:grid}.workshop-card-title{margin:0;font-size:21px}.workshop-meta-grid{border-top:1px solid var(--border);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;padding-top:18px;display:grid}.workshop-meta-item{gap:4px;display:grid}.workshop-meta-label{color:var(--muted-strong);letter-spacing:.12em;text-transform:uppercase;font-size:11px}.workshop-meta-value{color:var(--text);font-size:14px}.workshop-card-action{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding-top:18px;display:flex}.workshop-detail-shell{gap:36px;max-width:980px;margin:0 auto;display:grid}.workshop-detail-hero{gap:22px;max-width:820px;display:grid}.workshop-detail-grid{grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:20px;display:grid}.workshop-description-card p+p{margin-top:14px}.workshop-register-panel{grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr);align-items:start;gap:20px;display:grid}.workshop-confirm-shell{max-width:820px;margin:0 auto}.workshop-confirm-card{padding:32px}.privacy-section{margin-top:28px}.privacy-section h2{margin:0 0 8px;font-size:18px}.privacy-section p{color:var(--muted);margin:0}.alert-error{background:#88133726;border:1px solid #9f1239;border-radius:10px;margin-top:8px;padding:14px 16px}.alert-error p{margin:0}.alert-error-message{color:var(--text);font-size:14px;font-weight:500;line-height:1.5}.alert-error-supporting{color:var(--muted);margin-top:10px;font-size:13px;line-height:1.5}.alert-status{background:#92400e1f;border:1px solid #92400e;border-radius:10px;margin-top:8px;padding:12px 16px}.alert-status p{color:#fbbf24;margin:0;font-size:14px}@media (max-width:900px){.page{padding:72px 20px 64px}.hero-title{font-size:clamp(28px,7vw,42px)}.workshop-detail-grid,.workshop-register-panel{grid-template-columns:1fr}.workshop-card-action{flex-direction:column;align-items:flex-start}}
