/* ============================================================
   AM Domus CRM — base.css
   Reset, variabili, tipografia gestionale
   ============================================================ */

:root {
  /* Palette sobria property management */
  --c-bg:        #f4f5f7;
  --c-surface:   #ffffff;
  --c-surface-2: #fafbfc;
  --c-border:    #e2e5ea;
  --c-border-2:  #d3d7de;

  --c-text:      #1f2733;
  --c-text-2:    #5a6473;
  --c-muted:     #8a93a2;

  --c-primary:   #1f4e6b;   /* blu petrolio sobrio */
  --c-primary-d: #163b52;
  --c-primary-l: #e8eef3;
  --c-accent:    #b88746;   /* ottone tenue */

  --c-success:   #2e7d5b;
  --c-success-l: #e4f1ea;
  --c-warning:   #9a6b12;
  --c-warning-l: #fbf1dc;
  --c-danger:    #b3392f;
  --c-danger-l:  #fbe7e5;
  --c-info:      #2f5e8c;
  --c-info-l:    #e7eef6;

  /* Tipografia compatta */
  --font-sans: "Inter", "Segoe UI", system-ui, -apple-system, sans-serif;
  --font-mono: "SF Mono", "Consolas", "Courier New", monospace;
  --fs-xs: 11px;
  --fs-sm: 12px;
  --fs-base: 13px;
  --fs-md: 14px;
  --fs-lg: 16px;
  --fs-xl: 20px;
  --fs-2xl: 26px;

  --radius: 6px;
  --radius-sm: 4px;
  --shadow-sm: 0 1px 2px rgba(20, 30, 45, 0.06);
  --shadow:    0 2px 8px rgba(20, 30, 45, 0.08);
  --shadow-lg: 0 8px 28px rgba(20, 30, 45, 0.12);

  --sidebar-w: 224px;
  --space: 8px;
}

* { box-sizing: border-box; margin: 0; padding: 0; }

html, body {
  height: 100%;
  font-family: var(--font-sans);
  font-size: var(--fs-base);
  line-height: 1.45;
  color: var(--c-text);
  background: var(--c-bg);
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4 { font-weight: 600; line-height: 1.25; color: var(--c-text); }
h1 { font-size: var(--fs-xl); }
h2 { font-size: var(--fs-lg); }
h3 { font-size: var(--fs-md); }
h4 { font-size: var(--fs-base); }

a { color: var(--c-primary); text-decoration: none; }
a:hover { text-decoration: underline; }

.muted { color: var(--c-muted); }
.text-sm { font-size: var(--fs-sm); }
.text-xs { font-size: var(--fs-xs); }
.mono { font-family: var(--font-mono); }
.right { text-align: right; }
.center { text-align: center; }
.nowrap { white-space: nowrap; }

::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-thumb { background: #c7ccd4; border-radius: 6px; border: 2px solid var(--c-bg); }
::-webkit-scrollbar-thumb:hover { background: #aeb5bf; }
