:root{
    --blue:#0090F0; --blue-dark:#0062B8; --navy:#081C36; --navy-2:#0E2A4D;
    --orange:#FF7A1A; --orange-light:#FFE3CC; --ink:#0F1626; --ink-soft:#5B6779;
    --paper:#F6F8FB; --line:#E4E9F0; --white:#FFFFFF; --err:#E0483E; --ok:#3EB780;
  }
  *{box-sizing:border-box;}
  body{margin:0;font-family:'Inter',sans-serif;color:var(--ink);background:var(--paper);}
  h1,.display{font-family:'Space Grotesk',sans-serif;}
  .mono{font-family:'IBM Plex Mono',monospace;}
  a{text-decoration:none;color:inherit;}

  .screen{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;}
  @media (max-width:900px){.screen{grid-template-columns:1fr;}}

  /* ---- Left: brand panel ---- */
  .panel{
    background:var(--navy); position:relative; overflow:hidden;
    display:flex;flex-direction:column;justify-content:space-between;
    padding:48px;color:#EAF1FA;
  }
  @media (max-width:900px){.panel{display:none;}}
  .panel::before{content:"";position:absolute;width:480px;height:480px;border-radius:50%;
    background:radial-gradient(circle, rgba(0,144,240,.4), transparent 65%); top:-140px; left:-120px;}
  .panel::after{content:"";position:absolute;width:360px;height:360px;border-radius:50%;
    background:radial-gradient(circle, rgba(255,122,26,.28), transparent 65%); bottom:-100px; right:-80px;}
  .panel-top{position:relative;z-index:1;display:flex;align-items:center;gap:10px;font-weight:700;font-size:19px;}
  .brand-mark{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,var(--blue),var(--blue-dark));position:relative;flex:none;}
  .brand-mark::after{content:"";position:absolute;inset:0;border-radius:10px;background:conic-gradient(from 220deg, var(--orange), transparent 40%);mix-blend-mode:screen;opacity:.85;}

  .panel-mid{position:relative;z-index:1;max-width:420px;}
  .panel-mid .tag{font-family:'IBM Plex Mono';font-size:12px;color:#8FCBFF;letter-spacing:.08em;text-transform:uppercase;}
  .panel-mid h1{font-size:34px;line-height:1.2;margin:16px 0 16px;letter-spacing:-0.01em;}
  .panel-mid p{color:#B9C8DC;font-size:15px;line-height:1.7;margin:0;}

  .panel-receipt{position:relative;z-index:1;width:260px;background:#fff;border-radius:8px 8px 0 0;
    box-shadow:0 30px 60px -20px rgba(0,0,0,.45); padding:20px 20px 24px; transform:rotate(2deg);}
  .panel-receipt::after{content:"";position:absolute;left:0;right:0;bottom:-14px;height:14px;
    background:linear-gradient(135deg, #fff 50%, transparent 50%), linear-gradient(-135deg, #fff 50%, transparent 50%);
    background-size:14px 14px;background-repeat:repeat-x;background-position:left top;}
  .panel-receipt .rt{text-align:center;font-weight:700;font-size:13px;color:var(--navy);font-family:'Space Grotesk';}
  .panel-receipt .rs{text-align:center;font-family:'IBM Plex Mono';font-size:9.5px;color:var(--ink-soft);margin:2px 0 12px;}
  .panel-receipt hr{border:none;border-top:1.3px dashed var(--line);margin:10px 0;}
  .panel-receipt .row{display:flex;justify-content:space-between;font-family:'IBM Plex Mono';font-size:10.5px;color:var(--ink-soft);margin-bottom:7px;}
  .panel-receipt .row b{color:var(--ink);font-weight:600;}
  .panel-receipt .bc{margin-top:12px;height:22px;background:repeating-linear-gradient(90deg, var(--ink) 0 2px, transparent 2px 5px, var(--ink) 5px 6px, transparent 6px 9px);opacity:.85;}

  .panel-bottom{position:relative;z-index:1;display:flex;gap:24px;font-size:12.5px;color:#8FA0B8;}

  /* ---- Right: form ---- */
  .form-side{display:flex;align-items:center;justify-content:center;padding:40px 24px;}
  .form-box{width:100%;max-width:380px;}
  .form-box .mbrand{display:none;align-items:center;gap:10px;font-weight:700;font-size:18px;margin-bottom:36px;}
  @media (max-width:900px){.form-box .mbrand{display:flex;}}

  .form-box h1{font-size:28px;margin:0 0 8px;letter-spacing:-0.01em;color:var(--navy);}
  .form-box .sub{color:var(--ink-soft);font-size:14.5px;margin:0 0 32px;}

  label{display:block;font-size:13px;font-weight:600;color:var(--navy);margin-bottom:7px;}
  .field{margin-bottom:18px;}
  .input-wrap{position:relative;}
  input[type=text],input[type=password],input[type=email]{
    width:100%;padding:13px 14px;border:1.5px solid var(--line);border-radius:10px;
    font-size:14.5px;font-family:'Inter';background:var(--white);color:var(--ink);
    transition:border-color .15s ease, box-shadow .15s ease;
  }
  input:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 4px rgba(0,144,240,.12);}
  .toggle-pass{position:absolute;right:12px;top:50%;transform:translateY(-50%);cursor:pointer;color:var(--ink-soft);font-size:12.5px;font-weight:600;background:none;border:none;font-family:'Inter';}
  .row-between{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px;font-size:13.5px;}
  .remember{display:flex;align-items:center;gap:8px;color:var(--ink-soft);}
  .remember input{width:15px;height:15px;accent-color:var(--blue);}
  .forgot{color:var(--blue-dark);font-weight:600;}
  .forgot:hover{text-decoration:underline;}

  .btn-submit{
    width:100%;padding:14px;border:none;border-radius:10px;background:var(--navy);color:#fff;
    font-weight:600;font-size:15px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;
    transition:background .15s ease, transform .15s ease;
  }
  .btn-submit:hover{background:var(--blue-dark);transform:translateY(-1px);}

  .divider{display:flex;align-items:center;gap:14px;margin:28px 0;color:var(--ink-soft);font-size:12.5px;}
  .divider::before,.divider::after{content:"";flex:1;height:1px;background:var(--line);}

  .foot-link{text-align:center;font-size:14px;color:var(--ink-soft);}
  .foot-link a{color:var(--blue-dark);font-weight:600;}
  .foot-link a:hover{text-decoration:underline;}

  .lang{position:absolute;top:24px;right:24px;font-size:13px;color:var(--ink-soft);display:flex;align-items:center;gap:6px;cursor:pointer;}
  @media (max-width:900px){.lang{position:static;justify-content:flex-end;margin-bottom:12px;display:flex;}}

  .err{display:none;color:var(--err);font-size:12.5px;margin-top:6px;}

/* ===== Register extras ===== */
:root{
    --blue:#0090F0; --blue-dark:#0062B8; --navy:#081C36;
    --orange:#FF7A1A; --orange-light:#FFE3CC; --ink:#0F1626; --ink-soft:#5B6779;
    --paper:#F6F8FB; --line:#E4E9F0; --white:#FFFFFF; --ok:#1E9C6C;
  }
  *{box-sizing:border-box;}
  body{margin:0;font-family:'Inter',sans-serif;color:var(--ink);background:var(--paper);}
  h1,h2,.display{font-family:'Space Grotesk',sans-serif;}
  .mono{font-family:'IBM Plex Mono',monospace;}
  a{text-decoration:none;color:inherit;}

  header{padding:20px 0;border-bottom:1px solid var(--line);background:var(--white);}
  .hwrap{max-width:920px;margin:0 auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between;}
  .brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:18px;}
  .brand .devrya-logo{display:block;width:auto;max-width:160px;max-height:36px;height:auto;object-fit:contain;}
  .brand-mark{width:32px;height:32px;border-radius:9px;background:linear-gradient(135deg,var(--blue),var(--blue-dark));position:relative;flex:none;}
  .brand-mark::after{content:"";position:absolute;inset:0;border-radius:9px;background:conic-gradient(from 220deg, var(--orange), transparent 40%);mix-blend-mode:screen;opacity:.85;}
  header .sign{font-size:13.5px;color:var(--ink-soft);}
  header .sign a{color:var(--blue-dark);font-weight:600;}

  main{max-width:760px;margin:0 auto;padding:48px 24px 100px;}
  .page-head{text-align:center;margin-bottom:40px;}
  .page-head span.kicker{font-family:'IBM Plex Mono';font-size:12px;color:var(--orange);text-transform:uppercase;letter-spacing:.08em;font-weight:600;}
  .page-head h1{font-size:30px;margin:10px 0 8px;color:var(--navy);}
  .page-head p{color:var(--ink-soft);font-size:15px;margin:0;}

  /* ---- Stepper ---- */
  .stepper{display:flex;align-items:center;justify-content:center;gap:0;margin-bottom:48px;}
  .step{display:flex;align-items:center;gap:10px;}
  .step .circ{
    width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;
    font-family:'IBM Plex Mono';font-size:13px;font-weight:600;border:2px solid var(--line);color:var(--ink-soft);background:var(--white);
    transition:all .2s ease;
  }
  .step.active .circ{border-color:var(--blue);color:var(--blue-dark);background:#E7F3FE;}
  .step.done .circ{border-color:var(--ok);background:var(--ok);color:#fff;}
  .step .label{font-size:13.5px;font-weight:600;color:var(--ink-soft);}
  .step.active .label{color:var(--navy);}
  .step.done .label{color:var(--ok);}
  .step-line{width:64px;height:2px;background:var(--line);margin:0 6px;}
  @media (max-width:560px){.step .label{display:none;} .step-line{width:28px;}}

  /* ---- Card ---- */
  .card{background:var(--white);border:1px solid var(--line);border-radius:20px;padding:40px;box-shadow:0 20px 50px -30px rgba(8,28,54,.2);}
  @media (max-width:560px){.card{padding:26px;}}
  .card h2{font-size:20px;margin:0 0 4px;color:var(--navy);}
  .card .card-sub{font-size:13.5px;color:var(--ink-soft);margin:0 0 28px;}

  .grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px 20px;}
  @media (max-width:560px){.grid2{grid-template-columns:1fr;}}
  .field{margin-bottom:18px;}
  .field.full{grid-column:1/-1;}
  label{display:block;font-size:13px;font-weight:600;color:var(--navy);margin-bottom:7px;}
  label .opt{font-weight:400;color:var(--ink-soft);}
  input[type=text],input[type=email],input[type=password],input[type=date],select{
    width:100%;padding:12px 13px;border:1.5px solid var(--line);border-radius:10px;
    font-size:14.5px;font-family:'Inter';background:var(--white);color:var(--ink);appearance:none;
    transition:border-color .15s ease, box-shadow .15s ease;
  }
  select{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%235B6779' stroke-width='1.6' fill='none'/%3E%3C/svg%3E");
    background-repeat:no-repeat;background-position:right 14px center;
  }
  input:focus,select:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 4px rgba(0,144,240,.12);}
  .hint{font-size:12px;color:var(--ink-soft);margin-top:5px;}

  .upload-box{
    border:1.5px dashed var(--line);border-radius:12px;padding:22px;text-align:center;
    color:var(--ink-soft);font-size:13.5px;cursor:pointer;background:#FBFDFF;
  }
  .upload-box:hover{border-color:var(--blue);color:var(--blue-dark);}

  .radio-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
  @media (max-width:560px){.radio-cards{grid-template-columns:1fr;}}
  .rcard{border:1.5px solid var(--line);border-radius:12px;padding:16px 18px;cursor:pointer;transition:.15s ease;}
  .rcard.selected{border-color:var(--blue);background:#E7F3FE;}
  .rcard b{display:block;font-size:14px;color:var(--navy);margin-bottom:3px;}
  .rcard span{font-size:12.5px;color:var(--ink-soft);}

  .card-actions{display:flex;justify-content:space-between;align-items:center;margin-top:32px;}
  .btn{display:inline-flex;align-items:center;gap:8px;padding:13px 26px;border-radius:10px;font-weight:600;font-size:14.5px;cursor:pointer;border:none;transition:.15s ease;}
  .btn-primary{background:var(--navy);color:#fff;margin-left:auto;}
  .btn-primary:hover{background:var(--blue-dark);transform:translateY(-1px);}
  .btn-back{background:none;color:var(--ink-soft);}
  .btn-back:hover{color:var(--navy);}

  .trust-strip{display:flex;justify-content:center;gap:28px;margin-top:28px;font-size:12.5px;color:var(--ink-soft);flex-wrap:wrap;}
  .trust-strip span{display:flex;align-items:center;gap:6px;}
  .dot-ok{width:6px;height:6px;border-radius:50%;background:var(--ok);}

.header-actions{display:flex;align-items:center;gap:16px;}
.devrya-lang details{position:relative;}
.devrya-lang summary{
  list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:8px;
  color:var(--ink-soft);font-size:13px;font-weight:500;user-select:none;
  padding:7px 10px;border:1px solid var(--line);border-radius:999px;background:var(--white);
}
.devrya-lang summary::-webkit-details-marker{display:none;}
.devrya-lang__flag{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:22px;height:22px;padding:0 4px;border-radius:999px;
  background:var(--paper);color:var(--navy);font-size:11px;font-weight:700;
}
.devrya-lang ul{
  position:absolute;right:0;top:calc(100% + 8px);margin:0;padding:6px;list-style:none;
  background:#fff;border:1px solid var(--line);border-radius:10px;min-width:150px;
  box-shadow:0 16px 36px -18px rgba(8,28,54,.35);z-index:20;
}
.devrya-lang ul a{display:block;padding:8px 10px;border-radius:8px;font-size:13px;color:var(--ink);}
.devrya-lang ul a:hover,.devrya-lang li.is-active a{background:var(--paper);color:var(--blue-dark);}
[dir="rtl"] .devrya-lang ul{right:auto;left:0;}
[dir="rtl"] body{font-family:'Cairo','Inter',sans-serif;}
[dir="rtl"] h1,h2,h3,.display{font-family:'Cairo','Space Grotesk',sans-serif;}
[dir="rtl"] .header-actions{flex-direction:row-reverse;}
