/* EffingTech Support Request v0.1 */
.support-request-page { background:#06101c; }
.request-hero { padding:142px 0 48px; position:relative; overflow:hidden; }
.request-hero::before { content:""; position:absolute; inset:0; background:radial-gradient(circle at 80% 10%,rgba(70,98,255,.12),transparent 31%),radial-gradient(circle at 18% 15%,rgba(73,222,248,.11),transparent 32%); pointer-events:none; }
.request-hero-inner { position:relative; z-index:1; }
.request-back { display:inline-flex; gap:9px; align-items:center; color:#7e98ac; font-size:.74rem; margin-bottom:29px; }
.request-back:hover { color:var(--cyan); }
.request-hero h1 { margin:0; max-width:980px; font-size:clamp(3.45rem,7vw,7.4rem); line-height:.92; letter-spacing:-.072em; }
.request-hero h1 em { color:var(--cyan); font-style:normal; }
.request-lede { max-width:790px; margin:25px 0 0; color:#9aafc0; font-size:clamp(1rem,1.45vw,1.2rem); line-height:1.65; }
.request-section { padding:30px 0 110px; }
.request-layout { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(315px,.65fr); gap:24px; align-items:start; }
.request-card { border:1px solid rgba(142,180,207,.18); border-radius:28px; background:linear-gradient(150deg,rgba(17,33,53,.98),rgba(7,15,27,.98)); box-shadow:0 34px 90px rgba(0,0,0,.36); overflow:hidden; }
.request-card-header { display:flex; justify-content:space-between; gap:22px; align-items:flex-start; padding:30px 32px 26px; border-bottom:1px solid rgba(142,180,207,.14); background:linear-gradient(90deg,rgba(73,222,248,.055),transparent 45%); }
.request-step { color:var(--cyan); text-transform:uppercase; letter-spacing:.14em; font-size:.62rem; font-weight:850; }
.request-card-header h2 { margin:7px 0 0; font-size:1.72rem; letter-spacing:-.045em; }
.request-secure { display:inline-flex; align-items:center; gap:7px; padding:8px 11px; border-radius:999px; border:1px solid rgba(74,226,160,.18); background:rgba(74,226,160,.06); color:#86e7b8; font-size:.63rem; white-space:nowrap; }
.request-secure > span { font-size:.56rem; }
.request-form { padding:32px; }
.request-grid { display:grid; gap:16px; }
.request-grid.two { grid-template-columns:1fr 1fr; }
.field-wrap { display:grid; gap:8px; margin-bottom:18px; }
.field-wrap > span,.urgency-fieldset legend { color:#c8d6e1; font-size:.72rem; font-weight:760; letter-spacing:.01em; }
.field-wrap b,.urgency-fieldset b { color:#ff897c; }
.field-wrap input,.field-wrap select,.field-wrap textarea { width:100%; border:1px solid rgba(133,173,202,.21); border-radius:12px; background:#0a1727; color:#f3f7fb; padding:13px 14px; font:inherit; font-size:.82rem; outline:none; transition:border-color .18s ease,box-shadow .18s ease,background .18s ease; }
.field-wrap textarea { min-height:165px; resize:vertical; line-height:1.55; }
.field-wrap input::placeholder,.field-wrap textarea::placeholder { color:#587086; }
.field-wrap input:focus,.field-wrap select:focus,.field-wrap textarea:focus { border-color:rgba(73,222,248,.65); box-shadow:0 0 0 3px rgba(73,222,248,.08); background:#0c1b2d; }
.field-wrap select { appearance:none; background-image:linear-gradient(45deg,transparent 50%,#6e8ba2 50%),linear-gradient(135deg,#6e8ba2 50%,transparent 50%); background-position:calc(100% - 18px) calc(50% - 2px),calc(100% - 13px) calc(50% - 2px); background-size:5px 5px,5px 5px; background-repeat:no-repeat; }
.field-wrap select option { background:#0a1727; }
.field-help { color:#60798e; font-size:.62rem; }
.urgency-fieldset { border:0; padding:0; margin:2px 0 22px; }
.urgency-fieldset legend { margin-bottom:9px; }
.urgency-options { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.urgency-option { position:relative; display:grid; grid-template-columns:18px 1fr; gap:10px; align-items:start; min-height:105px; padding:14px; border:1px solid rgba(133,173,202,.17); border-radius:13px; background:rgba(255,255,255,.018); cursor:pointer; transition:.18s ease; }
.urgency-option:hover { border-color:rgba(73,222,248,.32); background:rgba(73,222,248,.025); }
.urgency-option input { position:absolute; opacity:0; pointer-events:none; }
.urgency-dot { width:16px; height:16px; margin-top:2px; border-radius:50%; border:1px solid #536d82; box-shadow:inset 0 0 0 4px #0c1929; background:#0c1929; }
.urgency-option input:checked + .urgency-dot { background:var(--cyan); border-color:var(--cyan); }
.urgency-option strong,.urgency-option small { display:block; }
.urgency-option strong { font-size:.76rem; }
.urgency-option small { color:#6f879b; font-size:.62rem; line-height:1.43; margin-top:4px; }
.urgency-option.critical input:checked + .urgency-dot { background:#ff7369; border-color:#ff7369; }
.urgency-option.planned input:checked + .urgency-dot { background:#aa8cff; border-color:#aa8cff; }
.urgency-option:has(input:checked) { border-color:rgba(73,222,248,.36); background:rgba(73,222,248,.04); }
.urgency-option.critical:has(input:checked) { border-color:rgba(255,115,105,.36); background:rgba(255,115,105,.035); }
.urgency-option.planned:has(input:checked) { border-color:rgba(170,140,255,.35); background:rgba(170,140,255,.035); }
.attachment-zone { display:grid; grid-template-columns:44px 1fr auto; gap:14px; align-items:center; margin:2px 0 19px; padding:15px 16px; border:1px dashed rgba(111,165,197,.3); border-radius:14px; background:rgba(73,222,248,.02); cursor:pointer; transition:.18s ease; }
.attachment-zone:hover,.attachment-zone.has-file { border-color:rgba(73,222,248,.55); background:rgba(73,222,248,.045); }
.attachment-zone input { position:absolute; width:1px; height:1px; opacity:0; overflow:hidden; }
.attachment-icon { display:grid; place-items:center; width:42px; height:42px; border-radius:12px; background:rgba(73,222,248,.08); color:var(--cyan); font-size:1.25rem; }
.attachment-copy strong,.attachment-copy small { display:block; }
.attachment-copy strong { font-size:.76rem; }
.attachment-copy small { color:#6d8599; font-size:.61rem; margin-top:2px; }
.attachment-name { color:#71899d; font-size:.63rem; max-width:150px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.request-security-note { display:grid; grid-template-columns:28px 1fr; gap:9px; align-items:start; padding:13px 15px; border:1px solid rgba(255,196,82,.15); border-radius:12px; background:rgba(255,196,82,.035); color:#92a6b7; }
.request-security-note > span { color:#ffc966; font-size:1rem; }
.request-security-note p { margin:0; font-size:.67rem; line-height:1.5; }
.request-security-note strong { color:#d8e2e9; }
.request-submit-row { display:flex; justify-content:space-between; gap:24px; align-items:center; margin-top:27px; padding-top:24px; border-top:1px solid rgba(133,173,202,.13); }
.request-submit-copy strong,.request-submit-copy span { display:block; }
.request-submit-copy strong { font-size:.8rem; }
.request-submit-copy span { color:#6e8599; font-size:.63rem; max-width:420px; margin-top:3px; }
.request-submit { border:0; cursor:pointer; min-width:180px; }
.request-submit:disabled { opacity:.55; cursor:wait; }
.request-message { margin-top:17px; padding:13px 15px; border-radius:12px; border:1px solid rgba(255,112,100,.2); background:rgba(255,90,80,.055); color:#ffb0a7; font-size:.7rem; }
.request-honeypot { position:absolute !important; left:-9999px !important; opacity:0 !important; }
.request-success { padding:48px 40px 54px; text-align:center; }
.success-mark { display:grid; place-items:center; width:68px; height:68px; margin:0 auto 22px; border-radius:21px; color:#06151d; background:linear-gradient(135deg,#5ff3be,#49def8); font-size:1.8rem; font-weight:900; box-shadow:0 18px 48px rgba(73,222,248,.16); }
.request-success .eyebrow { justify-content:center; }
.request-success h2 { margin:10px 0 12px; font-size:clamp(2.3rem,5vw,4.4rem); letter-spacing:-.06em; }
.request-success h2 span { color:var(--cyan); }
.request-success > p:not(.eyebrow):not(.success-warning) { max-width:620px; margin:0 auto; color:#94aabd; }
.success-actions { display:flex; justify-content:center; gap:12px; flex-wrap:wrap; margin-top:27px; }
.success-warning { max-width:650px; margin:22px auto 0; padding:12px; border:1px solid rgba(255,196,82,.18); border-radius:11px; background:rgba(255,196,82,.04); color:#d4b46d; font-size:.66rem; }
.request-sidebar { display:grid; gap:16px; position:sticky; top:92px; }
.request-side-card { padding:22px; border:1px solid rgba(133,173,202,.16); border-radius:19px; background:linear-gradient(150deg,rgba(15,29,47,.9),rgba(7,14,25,.94)); box-shadow:0 20px 55px rgba(0,0,0,.19); }
.side-card-top { display:grid; grid-template-columns:34px 1fr auto; gap:9px; align-items:center; }
.mini-logo { display:grid; place-items:center; }
.side-card-top strong,.side-card-top small { display:block; }
.side-card-top strong { font-size:.72rem; }
.side-card-top small { color:#647c90; font-size:.58rem; }
.side-live { color:#6ce3f8; border:1px solid rgba(73,222,248,.17); background:rgba(73,222,248,.06); border-radius:999px; padding:4px 7px; font-size:.48rem; font-weight:850; letter-spacing:.12em; }
.preview-ticket { margin-top:20px; padding:17px; border:1px solid rgba(73,222,248,.15); border-radius:14px; background:#091522; }
.preview-key { display:block; color:var(--cyan); font-size:.54rem; font-weight:850; letter-spacing:.13em; }
.preview-ticket > strong { display:block; margin-top:7px; font-size:.83rem; min-height:2.3em; }
.preview-meta { display:flex; flex-wrap:wrap; gap:6px; margin-top:12px; }
.preview-meta span { padding:5px 7px; border-radius:999px; background:rgba(255,255,255,.035); color:#8298aa; font-size:.53rem; }
.preview-route { display:flex; justify-content:center; gap:6px; flex-wrap:wrap; margin-top:14px; color:#60798d; font-size:.55rem; }
.preview-route b { color:#3d5970; }
.request-side-card .eyebrow { font-size:.55rem; }
.side-process { list-style:none; padding:0; margin:17px 0 0; display:grid; gap:14px; }
.side-process li { display:grid; grid-template-columns:30px 1fr; gap:10px; }
.side-process b { display:grid; place-items:center; width:28px; height:28px; border-radius:8px; background:rgba(73,222,248,.065); color:var(--cyan); font-size:.55rem; }
.side-process strong,.side-process span { display:block; }
.side-process strong { font-size:.68rem; }
.side-process span { margin-top:2px; color:#6d8498; font-size:.6rem; line-height:1.45; }
.fallback-card strong { font-size:.77rem; }
.fallback-card p { margin:5px 0 11px; color:#738a9d; font-size:.63rem; }
.fallback-card a { color:var(--cyan); font-size:.63rem; word-break:break-word; }

@media (max-width:980px) {
  .request-layout { grid-template-columns:1fr; }
  .request-sidebar { position:static; grid-template-columns:1fr 1fr; }
  .fallback-card { grid-column:1/-1; }
}
@media (max-width:720px) {
  .request-hero { padding:120px 0 38px; }
  .request-hero h1 { font-size:clamp(3rem,15vw,5rem); }
  .request-card-header { padding:24px 21px; flex-direction:column; }
  .request-form { padding:24px 20px; }
  .request-grid.two,.urgency-options,.request-sidebar { grid-template-columns:1fr; }
  .urgency-option { min-height:auto; }
  .request-submit-row { align-items:stretch; flex-direction:column; }
  .request-submit { width:100%; }
  .attachment-zone { grid-template-columns:42px 1fr; }
  .attachment-name { grid-column:2; }
  .request-success { padding:40px 22px 46px; }
  .success-actions .button { width:100%; }
}
