/* GEFEN — Area Riservata: stile condiviso, riusa le variabili del sito pubblico (index.html) */
:root{
  --navy-deep:#05080f;
  --navy:#0e1c32;
  --navy-light:#16294a;
  --gold:#c9a85c;
  --gold-dim:#8a7642;
  --champagne:#efe7d4;
  --slate:#7c8aa0;
  --sage:#6fa98a;
  --clay:#b4634f;
  --line: rgba(201,168,92,0.18);
}
*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
body{
  background:var(--navy-deep);
  color:var(--champagne);
  font-family:'IBM Plex Sans', sans-serif;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  min-height:100vh;
}
h1,h2,h3{font-family:'Fraunces', serif; font-weight:400; letter-spacing:-0.01em;}
a{color:inherit;}

/* Topbar (dashboard) */
.ar-topbar{
  display:flex; align-items:center; justify-content:space-between;
  padding:20px 6vw; border-bottom:1px solid var(--line);
}
.ar-wordmark{ display:flex; align-items:center; gap:10px; }
.ar-wordmark img{ height:30px; width:auto; display:block; }
.ar-wordmark span{ font-family:'Fraunces',serif; font-size:1.1rem; letter-spacing:0.08em; color:var(--champagne); }
a.ar-wordmark{ text-decoration:none; }
.ar-auth-logo a{ display:inline-block; }
.ar-logout{
  font-family:'IBM Plex Mono',monospace; font-size:0.8rem; letter-spacing:0.03em;
  color:var(--slate); background:transparent; border:1px solid var(--line);
  padding:8px 16px; border-radius:8px; cursor:pointer; transition:all 0.2s;
}
.ar-logout:hover{ color:var(--champagne); border-color:var(--slate); }

/* Auth pages (login/signup) — card centrata */
.ar-auth-wrap{
  min-height:100vh; display:flex; align-items:center; justify-content:center;
  padding:24px;
}
.ar-auth-card{
  width:100%; max-width:400px;
  background:var(--navy); border:1px solid var(--line); border-radius:16px;
  padding:36px 32px;
}
.ar-auth-logo{ text-align:center; margin-bottom:24px; }
.ar-auth-logo img{ height:48px; width:auto; }
.ar-auth-title{ font-size:1.4rem; text-align:center; color:var(--champagne); margin-bottom:6px; }
.ar-auth-sub{ font-size:0.85rem; text-align:center; color:var(--slate); margin-bottom:28px; }

.ar-field{ margin-bottom:16px; }
.ar-field label{
  display:block; font-family:'IBM Plex Mono',monospace; font-size:0.72rem;
  letter-spacing:0.08em; text-transform:uppercase; color:var(--slate); margin-bottom:6px;
}
.ar-field input{
  width:100%; background:var(--navy-deep); border:1px solid var(--line);
  border-radius:8px; padding:12px 14px; color:var(--champagne);
  font-family:'IBM Plex Sans',sans-serif; font-size:0.95rem;
}
.ar-field input:focus{ outline:none; border-color:var(--gold); }

.ar-input-wrap{ position:relative; }
.ar-input-wrap input{ padding-right:44px; }
.ar-pw-toggle{
  position:absolute; right:6px; top:50%; transform:translateY(-50%);
  display:flex; align-items:center; justify-content:center;
  width:32px; height:32px; background:none; border:none; cursor:pointer;
  color:var(--slate); padding:0;
}
.ar-pw-toggle:hover{ color:var(--champagne); }
.ar-pw-toggle .eye-off{ display:none; }
.ar-pw-toggle.showing .eye-on{ display:none; }
.ar-pw-toggle.showing .eye-off{ display:block; }

.ar-btn{
  width:100%; background:var(--gold); color:var(--navy-deep); font-weight:600;
  font-size:0.9rem; letter-spacing:0.02em; border:none; border-radius:8px;
  padding:13px; cursor:pointer; margin-top:8px; transition:background 0.2s;
}
.ar-btn:hover{ background:#d9bb73; }
.ar-btn:disabled{ opacity:0.6; cursor:default; }

.ar-switch{ text-align:center; margin-top:20px; font-size:0.85rem; color:var(--slate); }
.ar-switch a{ color:var(--gold); text-decoration:none; border-bottom:1px solid transparent; }
.ar-switch a:hover{ border-color:var(--gold); }

.ar-error{
  background:rgba(180,99,79,0.14); border:1px solid rgba(180,99,79,0.4);
  color:var(--clay); font-size:0.85rem; padding:10px 14px; border-radius:8px;
  margin-bottom:16px; display:none;
}
.ar-error.show{ display:block; }

/* Dashboard */
.ar-main{ max-width:720px; margin:0 auto; padding:36px 6vw 60px; }
.ar-hero-title{ font-size:1.6rem; color:var(--champagne); margin-bottom:6px; }
.ar-hero-sub{ font-size:0.9rem; color:var(--slate); margin-bottom:32px; }

.ar-section-title{
  font-family:'IBM Plex Mono',monospace; font-size:0.75rem; letter-spacing:0.1em;
  text-transform:uppercase; color:var(--slate); margin-bottom:14px;
}

.ar-report-card{
  background:var(--navy); border:1px solid var(--line); border-radius:12px;
  padding:16px 18px; margin-bottom:12px;
  display:flex; align-items:center; justify-content:space-between; gap:14px;
}
.ar-report-left{ display:flex; flex-direction:column; gap:4px; min-width:0; }
.ar-report-top{ display:flex; align-items:center; gap:10px; }
.ar-ticker{ font-family:'IBM Plex Mono',monospace; font-size:0.95rem; font-weight:500; color:var(--champagne); }
.ar-pill{
  font-family:'IBM Plex Mono',monospace; font-size:0.68rem; letter-spacing:0.05em;
  padding:3px 9px; border-radius:20px; font-weight:500;
}
.ar-pill.armato{ background:rgba(111,169,138,0.16); color:var(--sage); }
.ar-pill.pending{ background:rgba(201,168,92,0.16); color:var(--gold); }
.ar-pill.notrade{ background:rgba(180,99,79,0.16); color:var(--clay); }
.ar-report-meta{ font-size:0.78rem; color:var(--slate); }

.ar-dl{
  flex:none; display:flex; align-items:center; justify-content:center;
  width:38px; height:38px; border-radius:50%;
  background:var(--navy-light); border:1px solid var(--line);
  color:var(--gold); font-size:1rem; text-decoration:none;
}
.ar-dl:hover{ border-color:var(--gold); }

.ar-empty{
  text-align:center; color:var(--slate); font-size:0.9rem;
  padding:40px 20px; border:1px dashed var(--line); border-radius:12px;
}

.ar-footer{
  text-align:center; padding:30px 20px; border-top:1px solid var(--line);
  color:var(--slate); font-size:0.78rem;
}
.ar-footer .claim{ font-family:'Fraunces',serif; font-style:italic; color:var(--gold); margin-bottom:6px; }

/* Admin */
.ar-main.wide{ max-width:960px; }
.ar-table-wrap{ overflow-x:auto; margin-bottom:40px; border:1px solid var(--line); border-radius:12px; }
.ar-table{ width:100%; border-collapse:collapse; }
.ar-table th, .ar-table td{ text-align:left; padding:12px 16px; border-bottom:1px solid var(--line); font-size:0.85rem; white-space:nowrap; }
.ar-table tr:last-child td{ border-bottom:none; }
.ar-table th{
  font-family:'IBM Plex Mono',monospace; font-size:0.68rem; letter-spacing:0.08em;
  text-transform:uppercase; color:var(--slate); font-weight:500; background:var(--navy);
}
.ar-table td{ color:var(--champagne); }
.ar-action-btn{
  font-family:'IBM Plex Mono',monospace; font-size:0.72rem; letter-spacing:0.02em;
  padding:6px 14px; border-radius:6px; border:1px solid var(--line);
  background:transparent; color:var(--slate); cursor:pointer; transition:all 0.2s;
}
.ar-action-btn:hover{ color:var(--champagne); border-color:var(--slate); }
.ar-action-btn.danger{ color:var(--clay); border-color:rgba(180,99,79,0.35); }
.ar-action-btn.danger:hover{ background:rgba(180,99,79,0.14); }
