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

:root {
  --edp-bg:          #0f1117;
  --edp-surface:     #181c25;
  --edp-border:      #2a2f3d;
  --edp-border-focus:#e8a020;
  --edp-text:        #e8eaf0;
  --edp-muted:       #7a8094;
  --edp-accent:      #e8a020;
  --edp-danger:      #e84040;
  --edp-radius:      6px;
  --edp-font:        'DM Mono', 'Fira Code', 'Courier New', monospace;
}

.edp-lodge-wrap { font-family:var(--edp-font); background:var(--edp-surface); border:1px solid var(--edp-border); border-radius:10px; padding:0; max-width:680px; margin:2rem auto; overflow:hidden; color:var(--edp-text); box-shadow:0 0 60px rgba(232,160,32,.07); }
.edp-lodge-header { background:var(--edp-bg); border-bottom:1px solid var(--edp-border); padding:1.5rem 2rem; position:relative; }
.edp-lodge-header h2 { margin:0 0 .25rem; font-size:1.3rem; letter-spacing:.05em; text-transform:uppercase; color:var(--edp-text); }
.edp-lodge-header p  { margin:0; color:var(--edp-muted); font-size:.83rem; }
.edp-lodge-pulse { position:absolute; top:1.6rem; right:2rem; width:10px; height:10px; border-radius:50%; background:var(--edp-danger); animation:edp-pulse 1.6s infinite; }
@keyframes edp-pulse { 0%{box-shadow:0 0 0 0 rgba(232,64,64,.6)} 70%{box-shadow:0 0 0 10px rgba(232,64,64,0)} 100%{box-shadow:0 0 0 0 rgba(232,64,64,0)} }

.edp-form { padding:1.75rem 2rem; }
.edp-form__section { margin-bottom:1.75rem; }
.edp-form__section h3 { font-size:.72rem; letter-spacing:.14em; text-transform:uppercase; color:var(--edp-muted); margin:0 0 1rem; padding-bottom:.5rem; border-bottom:1px solid var(--edp-border); }
.edp-form__row { display:flex; gap:1rem; }
.edp-form__row--split > * { flex:1 1 0; min-width:0; }
.edp-form__field { display:flex; flex-direction:column; margin-bottom:1.1rem; }
.edp-form__field label { font-size:.75rem; letter-spacing:.06em; text-transform:uppercase; color:var(--edp-muted); margin-bottom:.4rem; }
.edp-form__field label span { color:var(--edp-danger); margin-left:2px; }
.edp-form input[type="text"], .edp-form input[type="email"], .edp-form input[type="tel"], .edp-form select, .edp-form textarea { background:var(--edp-bg); border:1px solid var(--edp-border); border-radius:var(--edp-radius); color:var(--edp-text); font-family:var(--edp-font); font-size:.88rem; padding:.65rem .85rem; width:100%; box-sizing:border-box; transition:border-color .15s,box-shadow .15s; -webkit-appearance:none; }
.edp-form select { cursor:pointer; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%237a8094' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right .8rem center; padding-right:2rem; }
.edp-form input:focus, .edp-form select:focus, .edp-form textarea:focus { outline:none; border-color:var(--edp-border-focus); box-shadow:0 0 0 3px rgba(232,160,32,.12); }
.edp-form textarea { resize:vertical; min-height:100px; }
.edp-form__hint { font-size:.72rem; color:var(--edp-muted); margin-top:.3rem; }
.edp-fee-display { background:var(--edp-bg); border:1px solid var(--edp-border); border-radius:var(--edp-radius); padding:.6rem .85rem; display:flex; align-items:center; gap:.6rem; min-height:42px; }
.edp-fee-display__amount { font-size:1.2rem; font-weight:500; color:var(--edp-accent); transition:all .2s; }
.edp-fee-display__band { font-size:.72rem; color:var(--edp-muted); text-transform:uppercase; letter-spacing:.06em; }
.edp-form__summary { background:rgba(232,160,32,.07); border:1px solid rgba(232,160,32,.2); border-radius:var(--edp-radius); padding:.75rem 1rem; margin-bottom:1.25rem; }
.edp-form__summary-inner { display:flex; align-items:center; gap:.5rem; font-size:.83rem; flex-wrap:wrap; }
.edp-form__summary-fee { color:var(--edp-accent); }
.edp-form__summary-band, .edp-form__summary-sep { color:var(--edp-muted); font-size:.75rem; }
.edp-form__errors { background:rgba(232,64,64,.08); border-left:3px solid var(--edp-danger); border-radius:0 var(--edp-radius) var(--edp-radius) 0; padding:.85rem 1rem; margin-bottom:1.25rem; }
.edp-form__errors ul { margin:0; padding-left:1.1rem; }
.edp-form__errors li { font-size:.83rem; color:#f08080; margin-bottom:.25rem; }
.edp-btn--primary { width:100%; background:var(--edp-accent); color:#000; border:none; border-radius:var(--edp-radius); font-family:var(--edp-font); font-size:.9rem; font-weight:500; letter-spacing:.06em; text-transform:uppercase; padding:.9rem 1.5rem; cursor:pointer; display:flex; align-items:center; justify-content:center; gap:.6rem; transition:background .15s,transform .1s,box-shadow .15s; box-shadow:0 4px 20px rgba(232,160,32,.25); }
.edp-btn--primary svg { width:18px; height:18px; }
.edp-btn--primary:hover { background:#f5b530; box-shadow:0 6px 28px rgba(232,160,32,.38); transform:translateY(-1px); }
.edp-form__disclaimer { font-size:.72rem; color:var(--edp-muted); text-align:center; margin:.85rem 0 0; line-height:1.5; }
.edp-notice { background:var(--edp-surface); border:1px solid var(--edp-border); border-radius:var(--edp-radius); padding:1rem; color:var(--edp-muted); font-family:var(--edp-font); font-size:.88rem; }
@media (max-width:520px) { .edp-form { padding:1.25rem; } .edp-lodge-header { padding:1.25rem; } .edp-form__row--split { flex-direction:column; } }
