/* Admin — sobre, lisible, même palette atelier */
:root{
  --ink:#14110f; --ink-2:#1d1916; --ink-3:#2a241f;
  --canvas:#ece3d4; --dim:#b8ac98; --ocre:#c8853f; --ocre-soft:#e0a868;
  --terre:#7a3b28; --line:rgba(236,227,212,.12); --line-2:rgba(236,227,212,.22);
  --sans:'Inter',system-ui,sans-serif; --mono:'IBM Plex Mono',monospace; --serif:'Fraunces',Georgia,serif;
}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--ink);color:var(--canvas);font-family:var(--sans);font-size:15px}
a{color:inherit;text-decoration:none}

.admin-shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh}
.sidebar{background:var(--ink-2);border-right:1px solid var(--line);padding:26px 18px;position:sticky;top:0;height:100vh}
.sidebar .logo{font-family:var(--serif);font-size:1.25rem;margin-bottom:30px;padding:0 8px}
.sidebar .logo span{color:var(--ocre)}
.sidebar nav a{display:flex;align-items:center;gap:10px;padding:11px 14px;border-radius:3px;color:var(--dim);font-size:.92rem;margin-bottom:3px;transition:all .18s}
.sidebar nav a:hover{background:var(--ink-3);color:var(--canvas)}
.sidebar nav a.active{background:var(--ink-3);color:var(--ocre-soft);border-left:2px solid var(--ocre)}
.sidebar .badge-count{margin-left:auto;background:var(--terre);color:var(--canvas);font-size:.7rem;padding:2px 8px;border-radius:10px}
.sidebar .logout{position:absolute;bottom:26px;left:18px;right:18px;color:var(--dim);font-size:.85rem;padding:11px 14px}
.sidebar .logout:hover{color:var(--ocre-soft)}

.main{padding:38px 44px;max-width:1100px}
.main h1{font-family:var(--serif);font-size:1.9rem;font-weight:500;margin-bottom:6px}
.main .subtitle{color:var(--dim);margin-bottom:32px;font-size:.92rem}

.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:38px}
.stat{background:var(--ink-2);border:1px solid var(--line);border-radius:4px;padding:22px}
.stat .num{font-family:var(--serif);font-size:2.2rem;color:var(--ocre-soft)}
.stat .lbl{font-size:.8rem;color:var(--dim);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;margin-top:4px}

table{width:100%;border-collapse:collapse;background:var(--ink-2);border:1px solid var(--line);border-radius:4px;overflow:hidden}
th,td{text-align:left;padding:14px 16px;border-bottom:1px solid var(--line);font-size:.9rem}
th{font-family:var(--mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--dim)}
tr:last-child td{border-bottom:0}
tr:hover td{background:rgba(255,255,255,.015)}

.pill{font-family:var(--mono);font-size:.68rem;padding:4px 10px;border-radius:10px;text-transform:uppercase;letter-spacing:.08em}
.pill.new{background:rgba(200,133,63,.18);color:var(--ocre-soft)}
.pill.contacted{background:rgba(90,130,160,.18);color:#a8c8e0}
.pill.client{background:rgba(120,160,90,.18);color:#cfe0b8}
.pill.archived{background:var(--ink-3);color:var(--dim)}
.pill.pending{background:rgba(200,133,63,.18);color:var(--ocre-soft)}
.pill.approved{background:rgba(120,160,90,.18);color:#cfe0b8}
.pill.rejected{background:rgba(160,70,50,.18);color:#e8b8a8}

.btn{display:inline-flex;align-items:center;gap:7px;padding:9px 16px;border-radius:3px;font-size:.85rem;border:1px solid transparent;cursor:pointer;font-family:var(--sans)}
.btn-primary{background:var(--ocre);color:var(--ink)}
.btn-primary:hover{background:var(--ocre-soft)}
.btn-ghost{border-color:var(--line-2);color:var(--canvas);background:none}
.btn-ghost:hover{border-color:var(--ocre)}
.btn-sm{padding:6px 12px;font-size:.78rem}
.btn-danger{color:#e8b8a8;border:1px solid rgba(160,70,50,.4);background:none}
.btn-danger:hover{background:rgba(160,70,50,.18)}
.btn-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}

.toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px;flex-wrap:wrap}
.filters{display:flex;gap:8px}
.filters a{padding:7px 14px;border-radius:3px;font-size:.83rem;color:var(--dim);border:1px solid var(--line)}
.filters a.active{color:var(--ocre-soft);border-color:var(--ocre)}

.form-admin{max-width:640px;background:var(--ink-2);border:1px solid var(--line);border-radius:4px;padding:30px}
.form-admin .field{margin-bottom:18px}
.form-admin .row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
label{display:block;font-size:.78rem;color:var(--dim);font-family:var(--mono);letter-spacing:.05em;margin-bottom:7px}
input,textarea,select{width:100%;background:var(--ink);border:1px solid var(--line-2);color:var(--canvas);padding:11px 13px;border-radius:3px;font-family:var(--sans);font-size:.92rem}
input:focus,textarea:focus,select:focus{outline:none;border-color:var(--ocre)}
textarea{resize:vertical;min-height:100px}
.checkbox{display:flex;gap:9px;align-items:center}
.checkbox input{width:auto}

.flash{padding:13px 17px;border-radius:3px;margin-bottom:22px;font-size:.9rem}
.flash.success{background:rgba(120,160,90,.15);border:1px solid rgba(120,160,90,.4);color:#cfe0b8}
.flash.error{background:rgba(160,70,50,.15);border:1px solid rgba(160,70,50,.4);color:#e8b8a8}

.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:24px}
.login-box{width:100%;max-width:380px;background:var(--ink-2);border:1px solid var(--line);border-radius:6px;padding:40px}
.login-box h1{font-family:var(--serif);font-size:1.6rem;font-weight:500;margin-bottom:8px}
.login-box .muted{color:var(--dim);font-size:.88rem;margin-bottom:26px}
.login-box .btn{width:100%;justify-content:center;margin-top:8px}

.notes-box{white-space:pre-wrap;font-family:var(--mono);font-size:.8rem;color:var(--dim);background:var(--ink);padding:12px;border-radius:3px;max-height:120px;overflow:auto;margin-top:8px}
.empty{text-align:center;padding:60px 20px;color:var(--dim)}
.muted{color:var(--dim)}
.thumb-mini{width:48px;height:60px;object-fit:cover;border-radius:2px;background:var(--ink-3)}

@media(max-width:760px){
  .admin-shell{grid-template-columns:1fr}
  .sidebar{position:static;height:auto}
  .cards{grid-template-columns:repeat(2,1fr)}
  .form-admin .row{grid-template-columns:1fr}
  .main{padding:24px 20px}
}
