/* demo/equipment-management/styles.css — 貸出管理コンソール（loan-management 準拠・暖色） */
.lmk { --lm-bg:#f5f3ee; --lm-card:#fff; --lm-ink:#1a1a1a; --lm-soft:#5a5a5a; --lm-mute:#9a9a9a;
  --lm-line:#e2dfd6; --lm-accent:#c8553d; --lm-accent-soft:#f4e3dd; --lm-ok:#2d6a4f; --lm-warn:#b8860b; --lm-danger:#9b2226;
  background:var(--lm-bg); color:var(--lm-ink); min-height:100%; font-family:"Manrope","Noto Sans JP",sans-serif; }
.lmk h2 { font-family:"Noto Serif JP",serif; }

.lm-head { display:flex; align-items:center; background:var(--lm-card); border-bottom:1px solid var(--lm-line); padding:14px 22px; }
.lm-brand { font-family:"Noto Serif JP",serif; font-weight:700; font-size:18px; display:flex; flex-direction:column; line-height:1.2; }
.lm-brand small { font-size:9px; letter-spacing:.18em; color:var(--lm-mute); font-family:"Manrope",sans-serif; }
.lm-user { margin-left:auto; display:flex; align-items:center; gap:9px; font-size:13px; }
.lm-user small { color:var(--lm-mute); } .lm-av { width:32px; height:32px; border-radius:50%; background:var(--lm-accent); color:#fff; display:flex; align-items:center; justify-content:center; font-weight:700; }

.lm-toolbar { display:flex; align-items:center; gap:14px; padding:14px 22px 0; flex-wrap:wrap; }
.lm-tabs { display:flex; gap:4px; }
.lm-tab { background:none; border:none; border-bottom:2px solid transparent; color:var(--lm-soft); padding:8px 14px; cursor:pointer; font-size:13px; display:flex; align-items:center; gap:7px; }
.lm-tab.sel { color:var(--lm-accent); border-bottom-color:var(--lm-accent); font-weight:700; }
.lm-tabnum { background:var(--lm-accent-soft); color:var(--lm-accent); font-size:11px; border-radius:999px; padding:1px 8px; }
.lm-toolbar-right { margin-left:auto; display:flex; gap:10px; align-items:center; }
.lm-search { border:1px solid var(--lm-line); border-radius:8px; padding:8px 12px; font-size:13px; width:230px; background:#fff; color:var(--lm-ink); }
.lm-search:focus { outline:none; border-color:var(--lm-accent); }
.lm-btn { border:1px solid var(--lm-line); background:#fff; color:var(--lm-ink); border-radius:8px; padding:8px 16px; font-size:13px; cursor:pointer; }
.lm-btn.primary { background:var(--lm-accent); border-color:var(--lm-accent); color:#fff; font-weight:700; }
.lm-btn:disabled { opacity:.5; cursor:default; }

.lm-content { padding:16px 22px; }
.lm-empty { color:var(--lm-mute); font-size:13px; padding:30px; text-align:center; }
.lm-table { width:100%; border-collapse:collapse; background:var(--lm-card); border:1px solid var(--lm-line); border-radius:12px; overflow:hidden; }
.lm-table th { background:#faf8f3; color:var(--lm-mute); font-size:10px; letter-spacing:.08em; text-transform:uppercase; text-align:left; padding:10px 12px; border-bottom:1px solid var(--lm-line); }
.lm-table td { padding:11px 12px; border-bottom:1px solid var(--lm-line); font-size:13px; vertical-align:top; }
.lm-table tr:last-child td { border-bottom:none; }
.lm-table td b { display:block; } .lm-table td small { display:block; color:var(--lm-mute); font-size:11px; margin-top:2px; }
.lm-purpose { display:inline-block; background:var(--lm-accent-soft); color:var(--lm-accent); font-size:11px; border-radius:5px; padding:1px 7px; }
.lm-ops button { border:1px solid var(--lm-line); background:#fff; border-radius:6px; padding:5px 11px; font-size:12px; cursor:pointer; margin-right:5px; color:var(--lm-ink); }
.lm-ops .lm-ret { border-color:var(--lm-accent); color:var(--lm-accent); }

/* バッジ */
.lm-dir { font-size:11px; border-radius:999px; padding:2px 9px; font-weight:700; }
.lm-dir.lend { background:rgba(20,130,130,.12); color:#0f6464; } .lm-dir.borrow { background:rgba(110,60,160,.12); color:#5a2e85; }
.lm-status { font-size:11px; border-radius:999px; padding:2px 9px; margin-left:4px; }
.lm-status.is-active { background:#eee9df; color:var(--lm-soft); }
.lm-status.is-soon { background:#f5ecd3; color:var(--lm-warn); }
.lm-status.is-overdue { background:#f3dadb; color:var(--lm-danger); font-weight:700; }
.lm-status.is-returned { background:#eee9df; color:var(--lm-soft); }
.lm-status.is-late { background:#f3dadb; color:var(--lm-danger); }
.lm-audit { font-size:11px; border-radius:5px; padding:2px 9px; font-weight:700; }
.lm-diff { color:var(--lm-soft); font-size:12px; }

/* モーダル */
.lm-overlay { position:fixed; inset:0; background:rgba(20,15,10,.4); display:flex; align-items:center; justify-content:center; padding:24px; z-index:50; }
.lm-modal { background:var(--lm-card); border-radius:16px; width:520px; max-width:100%; max-height:90%; overflow:auto; box-shadow:0 8px 32px rgba(0,0,0,.2); }
.lm-modal.wide { width:760px; }
.lm-modal-head { display:flex; align-items:center; padding:16px 20px; border-bottom:1px solid var(--lm-line); }
.lm-modal-head h2 { font-size:17px; margin:0; } .lm-x { margin-left:auto; background:none; border:none; font-size:22px; color:var(--lm-mute); cursor:pointer; line-height:1; }
.lm-modal-body { padding:20px; }
.lm-modal-foot { display:flex; align-items:center; gap:10px; margin-top:18px; }
.lm-modal-foot .lm-btn.primary { margin-left:auto; }
.lm-dt-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px 20px; }
.lm-dt dt { font-size:11px; color:var(--lm-mute); margin-bottom:2px; } .lm-dt dd { margin:0; font-size:14px; }
.lm-ret-box { background:#faf8f3; border:1px solid var(--lm-line); border-radius:8px; padding:12px; margin-bottom:14px; }
.lm-ret-box b { display:block; } .lm-ret-box span { font-size:12px; color:var(--lm-mute); }
.lm-form { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.lm-field { display:flex; flex-direction:column; gap:5px; }
.lm-field span { font-size:12px; } .lm-field i { color:var(--lm-accent); font-style:normal; font-size:10px; }
.lm-field input, .lm-field select, .lm-field textarea { border:1px solid var(--lm-line); border-radius:8px; padding:8px 11px; font-size:13px; background:#fff; color:var(--lm-ink); font-family:inherit; }
.lm-field textarea { min-height:64px; resize:vertical; }
.lm-field input:focus, .lm-field select:focus, .lm-field textarea:focus { outline:none; border-color:var(--lm-accent); }
