@import url('https://fonts.googleapis.com/css2?family=Silkscreen:wght@400;700&family=Space+Mono:wght@400;700&family=Space+Grotesk:wght@400;500&display=swap');

@keyframes blink { 0%,49%{opacity:1} 50%,100%{opacity:0} }

body{margin:0;background:#0a0e13;padding:30px 16px;color:#dfe6ea}
.gf{background:#0f1620;color:#dfe6ea;font-family:'Space Mono',monospace;border-radius:8px;overflow:hidden;max-width:760px;margin:0 auto;border:1px solid #1e2b38}
.gf-scan{background-image:repeating-linear-gradient(0deg,rgba(255,255,255,.035) 0 1px,transparent 1px 3px)}
.gf-curs{display:inline-block;width:.55em;height:1em;vertical-align:-2px;background:#6fd0c8;animation:blink 1s steps(1) infinite}

.gf-hero{position:relative;padding:64px 48px 36px;background:linear-gradient(160deg,rgba(34,86,58,.22) 0%,rgba(20,52,42,.10) 40%,transparent 70%),linear-gradient(180deg,rgba(10,24,28,.2) 0%,rgba(15,22,32,.9) 100%),#101a24}
.gf-hero .scan{position:absolute;inset:0;background-image:repeating-linear-gradient(0deg,rgba(0,0,0,.10) 0 1px,transparent 1px 3px);pointer-events:none}
.gf-eyebrow{font-family:'Space Grotesk',sans-serif;font-size:12px;letter-spacing:2px;text-transform:uppercase;font-weight:500;color:#7fe0d8;margin-bottom:18px;position:relative}
.gf-title{font-family:'Silkscreen',monospace;font-weight:700;font-size:34px;line-height:1.12;color:#ffffff;text-shadow:0 0 18px rgba(111,208,200,.45),0 2px 6px rgba(0,0,0,.6);margin:0;position:relative}
.gf-title .pk{color:#ff6fb0}
.gf-sub{font-family:'Space Grotesk',sans-serif;margin-top:16px;font-size:16px;color:#eaf1f3;position:relative}
.pillrow{margin-top:22px;position:relative}
.pill{display:inline-block;border:1px solid #2a3a47;color:#c7d2d8;padding:7px 14px;border-radius:20px;font-size:12px;margin:0 6px 6px 0;background:rgba(15,22,32,.5)}

.gf section{padding:36px 48px;border-top:1px solid #1e2b38}
.gf h4.lbl{font-family:'Space Grotesk',sans-serif;font-size:12px;letter-spacing:2px;color:#6fd0c8;margin:0 0 14px;text-transform:uppercase;font-weight:500}
.gf p{font-family:'Space Grotesk','Space Mono',sans-serif;line-height:1.7;color:#c3ced5;font-size:16px;letter-spacing:.1px;margin:0 0 1.2em}
.gf p:last-child{margin-bottom:0}
.gf a.mail{color:#6fd0c8;text-decoration:none;border-bottom:1px dotted #6fd0c8}
.gf .hl{color:#86d99a}

/* form */
.field{margin-bottom:24px}
.field label.top{display:block;font-family:'Space Grotesk',sans-serif;font-size:14px;color:#eef2f4;font-weight:500;margin-bottom:8px}
.field .hint{font-family:'Space Grotesk',sans-serif;font-size:12.5px;color:#8a98a2;margin-top:6px;line-height:1.5}
.field .req{color:#ff6fb0}
input[type=text],input[type=email],select,textarea{width:100%;box-sizing:border-box;background:#0b1219;border:1px solid #2a3a47;border-radius:6px;color:#eef2f4;font-family:'Space Grotesk',sans-serif;font-size:15px;padding:11px 13px;outline:none}
input[type=text]:focus,input[type=email]:focus,select:focus,textarea:focus{border-color:#6fd0c8;box-shadow:0 0 0 2px rgba(111,208,200,.15)}
textarea{min-height:84px;resize:vertical}
select{appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,#6fd0c8 50%),linear-gradient(135deg,#6fd0c8 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 14px) 50%;background-size:6px 6px;background-repeat:no-repeat;padding-right:38px}
.choices{display:flex;flex-direction:column;gap:9px}
.choices label{display:flex;align-items:baseline;gap:10px;border:1px solid #2a3a47;border-radius:6px;padding:11px 13px;font-family:'Space Grotesk',sans-serif;font-size:14.5px;color:#dfe6ea;cursor:pointer;background:rgba(111,208,200,.02)}
.choices label:hover{border-color:#6fd0c8}
input[type=radio],input[type=checkbox]{accent-color:#6fd0c8;transform:translateY(1px)}
.consent{display:flex;gap:12px;align-items:flex-start;border:1px solid #2a3a47;border-radius:6px;padding:14px;background:rgba(111,208,200,.03)}
.consent input{margin-top:3px}
.consent .ctext{font-family:'Space Grotesk',sans-serif;font-size:13.5px;line-height:1.6;color:#c3ced5}
.btn{display:inline-block;font-family:'Space Mono',monospace;font-size:15px;font-weight:700;letter-spacing:.5px;color:#0a0e13;background:#6fd0c8;border:none;border-radius:6px;padding:13px 30px;cursor:pointer}
.btn:hover{background:#8fe0d8}
.errbox{border:1px solid #e0559b;border-radius:6px;background:rgba(224,85,155,.08);padding:14px 16px;margin-bottom:24px}
.errbox p{font-family:'Space Grotesk',sans-serif;font-size:14px;color:#ffb3d4;margin:0 0 4px}
.errbox p:last-child{margin:0}
.err input,.err select,.err textarea{border-color:#e0559b}
.hp{position:absolute;left:-9999px;top:-9999px;height:1px;width:1px;overflow:hidden}

/* confirmation */
.bigok{font-family:'Silkscreen',monospace;color:#86d99a;font-size:22px;margin:0 0 18px}

/* admin */
.gf.admin{max-width:1200px}
table.list{width:100%;border-collapse:collapse;font-family:'Space Grotesk',sans-serif;font-size:13px}
table.list th{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:#6fd0c8;text-align:left;padding:8px 10px;border-bottom:1px solid #2a3a47;white-space:nowrap}
table.list td{padding:9px 10px;border-bottom:1px solid #1e2b38;color:#c3ced5;vertical-align:top}
table.list td.nw{white-space:nowrap}
.tablewrap{overflow-x:auto}
.statrow{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:22px}
.stat{border:1px solid #2a3a47;border-radius:6px;padding:12px 18px;background:rgba(111,208,200,.03)}
.stat .n{font-family:'Space Mono',monospace;font-size:22px;color:#7fe0d8}
.stat .l{font-family:'Space Grotesk',sans-serif;font-size:11.5px;letter-spacing:1px;text-transform:uppercase;color:#8a98a2;margin-top:3px}
.btn.small{font-size:12.5px;padding:8px 16px}
.btn.ghost{background:transparent;color:#6fd0c8;border:1px solid #2a3a47}
.btn.ghost:hover{border-color:#6fd0c8;background:rgba(111,208,200,.06)}
.btn.danger{background:transparent;color:#ff6fb0;border:1px solid #2a3a47;padding:5px 10px;font-size:12px}
.btn.danger:hover{border-color:#e0559b;background:rgba(224,85,155,.08)}
.adminbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:26px}
.adminbar form{margin:0}
.mailflag-ok{color:#86d99a}
.mailflag-no{color:#ff6fb0}

@media (max-width:640px){
  body{padding:12px 6px}
  .gf-hero{padding:44px 22px 26px}
  .gf-title{font-size:24px}
  .gf section{padding:26px 22px}
}
.loginform{max-width:420px}
.emptynote{margin-top:18px}
.hint-pre{margin-top:0;margin-bottom:8px}
.field label.top .opt{font-family:'Space Grotesk',sans-serif;font-size:11px;letter-spacing:1px;text-transform:uppercase;color:#6c7a85;font-weight:400;margin-left:6px}
