@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--a:#78e5d3;--green:#69dc42;--bg:#080b0b;--muted:#a2b8b1;--stroke:#2d403b;color-scheme:dark}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;background:var(--bg);color:#f4f7f6;font:500 15px/1.5 Manrope,Arial,sans-serif;text-align:center}
body:before{content:"";position:fixed;inset:0;background:radial-gradient(ellipse at 75% 18%,#16483e65,transparent 45%),radial-gradient(ellipse at 7% 86%,#1b332766,transparent 43%);pointer-events:none}
.ambient{position:fixed;inset:0;overflow:hidden;pointer-events:none}
.ambient:after{content:"";position:absolute;width:380px;height:380px;border:1px solid #84eeda14;border-radius:50%;right:-230px;top:25%}
.shell{position:relative;max-width:640px;margin:auto;min-height:100dvh;padding:22px 24px 28px;display:flex;flex-direction:column;text-align:center}
.top{display:flex;justify-content:center;align-items:center;padding-top:8px}.top-brand{font-size:11px;letter-spacing:2.4px;color:#b7ccc5;font-weight:800}.top-brand span{color:var(--green);padding:0 8px;font-size:17px}
.intro,.success{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px 0}
.collab-heading{font-size:10px;font-weight:800;letter-spacing:2px;color:var(--a);margin:10px 0 17px}
.brand-pair{display:flex;align-items:center;justify-content:center;gap:20px;width:100%;margin:8px auto 16px}.brand-unit{display:flex;flex-direction:column;align-items:center;gap:9px;min-width:115px;font-size:12px;font-weight:800;letter-spacing:1.7px}.brand-icon{width:112px;height:112px;object-fit:contain;border-radius:25px;box-shadow:0 12px 36px #0008}.collab-cross{font-size:36px;font-weight:400;color:var(--green);margin-top:-24px}.brand-unit:last-child>span{color:var(--green)}
h1{font-size:clamp(47px,9vw,72px);line-height:1.1;letter-spacing:-3px;margin:14px 0 23px;font-weight:800}h1 em{font-style:normal;color:var(--a)}
.meta{width:100%;display:grid;grid-template-columns:repeat(3,1fr);gap:7px;padding:22px 0;margin:15px 0 23px;border-top:1px solid var(--stroke);border-bottom:1px solid var(--stroke)}
.meta strong{display:block;font-size:26px;letter-spacing:-1px}.meta small{font-size:9px;color:var(--muted);line-height:1.5;letter-spacing:.5px;display:block;margin-top:5px}
.event-details{width:100%;padding:16px 20px;border:1px solid #3d6254;border-radius:15px;background:#14201cbb}.event-details strong{display:block;font-size:25px;letter-spacing:1px;color:var(--green)}.event-details p{font-size:13px;color:#cedfd9;margin:7px 0 0;line-height:1.7}
.age-banner{font-weight:800;font-size:clamp(19px,5vw,27px);letter-spacing:.3px;color:#fff;margin:23px 0 25px;text-shadow:0 0 27px #5cdd7f55}
.primary{width:100%;display:flex;justify-content:center;align-items:center;text-align:center;padding:19px 20px;background:var(--a);border:0;border-radius:13px;color:#061d18;font:800 15px Manrope,Arial,sans-serif;cursor:pointer;transition:background .15s,transform .15s}.primary:hover{background:#b1ffef}.primary:active{transform:scale(.99)}.primary:disabled{opacity:.6;cursor:wait}
.utility-links{display:flex;flex-direction:column;align-items:center;gap:9px;margin:20px auto 0}.utility-links a,.utility-links button{color:#8daaa2;font-size:11px;text-decoration:underline;text-underline-offset:3px}.delete-link{border:none;background:none;cursor:pointer;font-family:inherit;padding:5px}.utility-links a:hover,.delete-link:hover{color:#fff}
.hidden{display:none!important}
.form{flex:1;display:flex;flex-direction:column;justify-content:center;padding:38px 0 24px}.progress-head{display:flex;justify-content:center;gap:16px;color:var(--a);font-size:11px;font-weight:800;letter-spacing:1.9px}.track{height:3px;background:#273a33;border-radius:10px;margin:18px 0 42px;overflow:hidden}.track div{height:100%;width:12.5%;background:linear-gradient(90deg,var(--a),var(--green));transition:width .25s}.q-number{font-size:12px;letter-spacing:2px;color:var(--a);font-weight:800}.q-title{font-size:clamp(29px,7vw,43px);line-height:1.15;letter-spacing:-1.6px;margin:14px 0 15px}.q-hint{color:var(--muted);line-height:1.7;font-size:13px;margin:0 auto 28px;max-width:500px}
.field{width:100%;padding:19px 17px;background:#121b18;border:1px solid #3a5149;border-radius:12px;color:#fff;text-align:center;font:600 17px Manrope,Arial,sans-serif;outline:none;transition:border .2s}.field:focus{border-color:var(--a)}.field::placeholder{color:#687e75}.prefixed-field{position:relative}.prefixed-field .field{padding-left:58px;padding-right:58px}.field-prefix{position:absolute;left:17px;top:50%;transform:translateY(-50%);font-size:19px;font-weight:800;color:var(--green);pointer-events:none}.field-prefix:after{content:"";width:1px;height:22px;background:#335c4c;position:absolute;right:-15px;top:3px}textarea.field{min-height:145px;resize:vertical;text-align:center}
.choices{display:grid;gap:12px}.choice{padding:19px 12px;background:#121b18;border:1px solid #39544a;border-radius:12px;cursor:pointer;color:#fff;text-align:center;font:700 16px Manrope,Arial}.choice.selected{border-color:var(--green);background:#1f3c28;color:#aaf58e}
.actions{display:flex;gap:12px;margin-top:34px}.back{min-width:105px;padding:0 17px;background:transparent;border:1px solid #355044;border-radius:12px;color:#b7cec5;font:700 14px Manrope,Arial;cursor:pointer}.next{flex:1}.form-footnote{margin:19px 0 0;font-size:11px;color:#79948b}
.error{color:#ffb6b2;margin-top:16px;font-size:13px;line-height:1.6}.error:empty{display:none}.error p{margin:0 0 11px}.error-jump{background:#e9bcb7;color:#2c1515;border:0;border-radius:10px;padding:10px 16px;cursor:pointer;font:700 12px Manrope,Arial,sans-serif}.privacy-consent{margin:21px 0 0;color:#bed2ca;font-size:12px;line-height:1.65}.privacy-consent label{display:flex;flex-direction:column;align-items:center;gap:11px;cursor:pointer}.privacy-consent input{accent-color:var(--green);width:18px;height:18px}.privacy-consent a{color:var(--a)}
.success .lead{max-width:500px;margin:2px auto 22px;color:#b4c7c0;font-size:14px;line-height:1.9}.brand-pair-small{margin-top:8px}.brand-pair-small .brand-icon{width:93px;height:93px}.brand-pair-small .brand-unit{min-width:96px;font-size:10px}.contact-block{width:100%;background:#14231c;border:1px solid #365444;border-radius:15px;padding:17px 10px;margin:9px 0 24px}.contact-block strong{display:block;color:var(--green);margin-bottom:9px}.contact-block div{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}.contact-block a{color:#d3f8e2;font-weight:700;text-decoration:none}.contact-block span{color:#6c8b7e}
/* Administration shares the same centered, mint-on-dark visual language. */
.admin{position:relative;max-width:1050px;margin:0 auto;padding:40px 20px 90px;text-align:center}.admin h1{font-size:clamp(40px,7vw,65px)}.admin .lead{margin:0 auto 25px;color:#bbd1ca;line-height:1.8;max-width:600px}.admin .brand-pair{margin:0 auto 10px}.admin .brand-icon{width:77px;height:77px;border-radius:18px}.admin .brand-unit{font-size:10px;min-width:85px}.admin .collab-cross{font-size:26px;margin-top:-20px}.admin-eyebrow{color:var(--a);letter-spacing:2px;font-size:12px;font-weight:800}
.admin-tools{display:flex;flex-wrap:wrap;justify-content:center;gap:11px;margin:27px auto}.admin-tools input,.admin-tools select{background:#13241d;color:#f6fff9;border:1px solid #395b4e;border-radius:12px;padding:15px;font:600 14px Manrope,Arial,sans-serif;text-align:center;flex:1;min-width:200px;max-width:330px}.admin-tools button,.admin-card button{border:0;border-radius:11px;padding:13px 16px;background:var(--a);color:#0c2720;font:800 13px Manrope,Arial,sans-serif;cursor:pointer}.admin-tools button:hover,.admin-card button:hover{filter:brightness(1.1)}.admin-stats{font-weight:700;color:#cbe2d8;margin:24px 0}.admin-state{color:#fbbdbb;min-height:20px;margin-top:8px}.admin-list{display:grid;gap:18px}.admin-card{border:1px solid #35554a;background:linear-gradient(160deg,#12251d,#0c1512);border-radius:20px;padding:27px 22px;box-shadow:0 15px 40px #0003}.admin-card h3{font-size:25px;margin:12px 0;color:#fff;overflow-wrap:anywhere}.admin-card small{color:var(--a);font-size:12px}.admin-card p{line-height:1.85;color:#c2d7cc;overflow-wrap:anywhere}.admin-card p strong{color:#e2f2e9}.admin-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:19px 0 23px}.admin-card button.reject{background:#d6aaa6}.admin-card button.pending{background:#becbc4}.admin-card button.save-note{background:var(--green);margin-top:11px}.note-block{max-width:680px;margin:0 auto;border-top:1px solid #315141;padding-top:18px}.note-block label{display:block;color:#dcf6e5;font-weight:800;font-size:13px;margin-bottom:11px}.note-block textarea{width:100%;min-height:100px;resize:vertical;background:#101e17;border:1px solid #476853;border-radius:12px;color:#f6fff9;padding:14px;font:500 14px Manrope,Arial,sans-serif;line-height:1.7;text-align:center}.note-block textarea:focus{outline:1px solid var(--green)}.note-hint{font-size:11px;color:#8eab98;margin-top:8px}.note-feedback{font-size:12px;color:#a9f08d;min-height:18px;margin-top:7px}
@media(max-width:390px){.shell{padding:16px 15px 25px}.brand-icon{width:87px;height:87px;border-radius:19px}.brand-unit{min-width:90px;font-size:10px}.brand-pair{gap:12px}.meta strong{font-size:21px}.meta small{font-size:8px}h1{font-size:46px}.age-banner{font-size:20px}.back{min-width:87px}.admin-card{padding:20px 14px}}
