@charset "UTF-8";:root{--bg: #f3f5f8;--surface: #ffffff;--surface-2: #eef1f5;--ink: #1a2030;--ink-soft: #454d61;--muted: #6c7488;--line: #d9dee7;--line-strong: #c4cbd8;--accent: #2b4a86;--accent-ink: #23407a;--accent-soft: rgba(43, 74, 134, .08);--good: #2b7a57;--warn: #8a5e0f;--crit: #a93a3a;--crit-soft: rgba(169, 58, 58, .1);--radius: 10px;--shadow: 0 1px 2px rgba(20, 28, 48, .05), 0 6px 20px rgba(20, 28, 48, .06);--font: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif}*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3{letter-spacing:-.015em;margin:0}a{color:var(--accent-ink)}.app-header{display:flex;align-items:center;gap:1.2rem;padding:.7rem 1.4rem;background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.app-header .brand{font-weight:680;font-size:1.05rem;letter-spacing:-.02em}.app-header nav{display:flex;gap:.3rem}.app-header nav a{text-decoration:none;color:var(--ink-soft);padding:.4rem .8rem;border-radius:8px;font-weight:500}.app-header nav a.active{background:var(--accent-soft);color:var(--accent-ink)}.app-header .spacer{flex:1}.app-header .user{color:var(--muted);font-size:.9rem}.app-header .reglages-link{text-decoration:none;color:var(--ink-soft);padding:.4rem .8rem;border-radius:8px;font-weight:500}.app-header .reglages-link.active{background:var(--accent-soft);color:var(--accent-ink)}.app-main{max-width:60rem;margin:0 auto;padding:1.8rem 1.4rem 4rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:42px;padding:.5rem 1rem;border:1px solid transparent;border-radius:9px;font:inherit;font-weight:560;cursor:pointer;transition:background .15s,border-color .15s,opacity .15s;text-decoration:none}.btn:disabled{opacity:.55;cursor:default}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-ink)}.btn-ghost{background:transparent;border-color:var(--line-strong);color:var(--ink-soft)}.btn-ghost:hover{background:var(--surface-2)}.btn-danger{background:transparent;border-color:var(--crit);color:var(--crit)}.btn-danger:hover{background:var(--crit-soft)}.btn-sm{min-height:34px;padding:.3rem .7rem;font-size:.88rem}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.4rem}.field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1rem}.field label{font-size:.82rem;font-weight:560;color:var(--ink-soft)}.field input,.field select{font:inherit;min-height:44px;padding:.55rem .7rem;background:var(--surface);border:1px solid var(--line-strong);border-radius:9px;color:var(--ink)}.field input:focus,.field select:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}.field-check{flex-direction:row;align-items:center;gap:.6rem}.field-check input{min-height:auto;width:20px;height:20px}.field-check label{font-size:.95rem;color:var(--ink)}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:0 1rem}.form-actions{display:flex;gap:.6rem;margin-top:.8rem}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}table.data{border-collapse:collapse;width:100%}table.data th,table.data td{text-align:left;padding:.75rem 1rem;border-bottom:1px solid var(--line)}table.data th{font-size:.74rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:var(--surface-2)}table.data tbody tr:last-child td{border-bottom:none}table.data td.num{font-variant-numeric:tabular-nums}table.data .row-actions{display:flex;gap:.4rem;justify-content:flex-end}.badge{display:inline-block;padding:.15rem .5rem;border-radius:999px;font-size:.75rem;font-weight:560}.badge-meuble{background:var(--accent-soft);color:var(--accent-ink)}.badge-vide{background:var(--surface-2);color:var(--muted)}.page-head{display:flex;align-items:center;gap:1rem;margin-bottom:1.4rem}.page-head h1{font-size:1.6rem;font-weight:660}.page-head .spacer{flex:1}.alert{padding:.7rem .9rem;border-radius:9px;font-size:.9rem;margin-bottom:1rem}.alert-error{background:var(--crit-soft);color:var(--crit)}.muted{color:var(--muted)}.empty{text-align:center;color:var(--muted);padding:3rem 1rem}
