/* =============================================================================
   DQL Investor Portal — minimal, self-contained styles.
   Tone matches the public site: dark navy + cyan accents.
   ========================================================================= */
:root{
  --bg:#0A0E27;
  --panel:#111733;
  --panel-2:#0D1228;
  --border:#1F2A56;
  --text:#E6ECFF;
  --muted:#8A95C0;
  --primary:#00E5FF;
  --primary-dim:#00B6CC;
  --accent:#4A90E2;
  --good:#3DDC97;
  --bad:#FF5C7A;
  --warn:#FFB454;
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--text);font:15px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif}
a{color:var(--primary);text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%}

/* nav ----------------------------------------------------------------- */
.nav{display:flex;align-items:center;justify-content:space-between;
     padding:14px 32px;background:#070A1C;border-bottom:1px solid var(--border)}
.nav .brand{display:flex;align-items:center;gap:12px;color:var(--text);font-weight:600}
.nav nav{display:flex;align-items:center;gap:16px;font-size:14px}
.nav .who{color:var(--muted)}
.btn-out{padding:6px 12px;border:1px solid var(--border);border-radius:6px;color:var(--muted)}
.btn-out:hover{border-color:var(--primary);color:var(--primary);text-decoration:none}

/* layout -------------------------------------------------------------- */
.wrap{max-width:1100px;margin:0 auto;padding:32px}
h1{font-size:28px;margin:0 0 6px}
h2{font-size:20px;margin:32px 0 12px;color:var(--text)}
.muted{color:var(--muted);margin:0 0 24px}

/* cards / sections ---------------------------------------------------- */
.card{background:var(--panel);border:1px solid var(--border);border-radius:10px;
      padding:24px;margin-bottom:20px}
.card h3{margin:0 0 8px;font-size:16px;color:var(--primary)}

/* doc list ------------------------------------------------------------ */
.doc-list{list-style:none;padding:0;margin:0}
.doc-list li{display:flex;justify-content:space-between;align-items:center;
             padding:14px 0;border-bottom:1px solid var(--border)}
.doc-list li:last-child{border-bottom:none}
.doc-list .meta{color:var(--muted);font-size:13px}
.doc-list a.dl{padding:6px 14px;border-radius:6px;background:var(--primary);color:#001220;font-weight:600}
.doc-list a.dl:hover{text-decoration:none;background:var(--primary-dim)}

/* tables -------------------------------------------------------------- */
table.tbl{width:100%;border-collapse:collapse;background:var(--panel);
          border:1px solid var(--border);border-radius:10px;overflow:hidden}
table.tbl th,table.tbl td{padding:10px 14px;text-align:left;border-bottom:1px solid var(--border);font-size:14px}
table.tbl th{background:var(--panel-2);color:var(--muted);font-weight:600;text-transform:uppercase;font-size:11px;letter-spacing:.5px}
table.tbl tr:last-child td{border-bottom:none}
.badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.3px}
.badge.ok{background:rgba(61,220,151,.15);color:var(--good)}
.badge.bad{background:rgba(255,92,122,.15);color:var(--bad)}
.badge.warn{background:rgba(255,180,84,.15);color:var(--warn)}

/* forms --------------------------------------------------------------- */
form.std label{display:block;font-size:13px;color:var(--muted);margin:14px 0 4px}
form.std input,form.std select,form.std textarea{
  width:100%;padding:10px 12px;background:var(--panel-2);
  border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:14px}
form.std input:focus,form.std select:focus,form.std textarea:focus{
  outline:none;border-color:var(--primary)}
form.std .row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
button.primary,input[type=submit].primary{
  margin-top:18px;padding:10px 22px;border-radius:6px;border:none;
  background:var(--primary);color:#001220;font-weight:700;cursor:pointer}
button.primary:hover{background:var(--primary-dim)}
button.danger{margin-top:18px;padding:8px 16px;border-radius:6px;border:1px solid var(--bad);
              background:transparent;color:var(--bad);cursor:pointer}

/* messages ------------------------------------------------------------ */
.msg{padding:12px 16px;border-radius:6px;margin:0 0 16px}
.msg.ok{background:rgba(61,220,151,.1);border:1px solid var(--good);color:var(--good)}
.msg.err{background:rgba(255,92,122,.1);border:1px solid var(--bad);color:var(--bad)}
.msg.info{background:rgba(74,144,226,.1);border:1px solid var(--accent);color:var(--text)}

/* footer -------------------------------------------------------------- */
.foot{padding:20px 32px;color:var(--muted);font-size:12px;border-top:1px solid var(--border);text-align:center}
.foot .legal{margin-top:6px;max-width:780px;margin-left:auto;margin-right:auto;font-size:11px}

/* admin dashboard ----------------------------------------------------- */
.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}
.tile{background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:18px}
.tile .n{font-size:28px;color:var(--primary);font-weight:700}
.tile .l{color:var(--muted);font-size:13px;text-transform:uppercase;letter-spacing:.5px}

.actions{margin:14px 0 24px;display:flex;gap:10px;flex-wrap:wrap}
.actions a{padding:8px 14px;border:1px solid var(--border);border-radius:6px;color:var(--text)}
.actions a:hover{border-color:var(--primary);color:var(--primary);text-decoration:none}
.actions a.primary{background:var(--primary);color:#001220;border-color:var(--primary);font-weight:600}

code.code{display:inline-block;padding:6px 10px;background:var(--panel-2);border:1px solid var(--border);
          border-radius:4px;font-family:"SF Mono",Menlo,monospace;font-size:13px;color:var(--primary)}
