.nms-db, .nms-db * { box-sizing: border-box; }
.nms-db { --navy:#1a2a3a; --teal:#2d6a7f; --teal2:#3d8fa8; --light:#f0f4f6; --white:#fff; --border:#d0dce3; --muted:#6a7f8a; --text:#1e2e38; --tag-bg:#ddeef4; --tag-fg:#1e5f76; --red:#c0392b; --red-bg:#fdf0ee; --green:#1a6b3c; --green-bg:#e6f4ee; --radius:3px; color:var(--text); font-size:15px; line-height:1.6; }
.nms-db .page-title { background:var(--white); border-bottom:1px solid var(--border); padding:1.5rem 2rem 1rem; margin-bottom:0; }
.nms-db .page-title h2 { font-size:1.6rem; font-weight:700; color:var(--navy); margin:0 0 .2rem; }
.nms-db .page-title p { font-size:.88rem; color:var(--muted); margin:0; }
.nms-db .search-zone { background:var(--white); border-bottom:2px solid var(--teal); padding:1rem 2rem 1.2rem; position:sticky; top:0; z-index:10; box-shadow:0 2px 8px rgba(0,0,0,.08); }
.nms-db .search-inner { max-width:1100px; margin:0 auto; display:grid; grid-template-columns:1fr 1fr 1fr auto; gap:.75rem; align-items:end; }
.nms-db .field label, .nms-db .reg-form label { display:block; font-size:.7rem; font-weight:600; letter-spacing:.07em; text-transform:uppercase; color:var(--teal); margin-bottom:.3rem; }
.nms-db input, .nms-db select { width:100%; padding:.52rem .75rem; border:1px solid var(--border); border-radius:var(--radius); font:inherit; font-size:.9rem; background:var(--light); color:var(--text); }
.nms-db input:focus, .nms-db select:focus { outline:none; border-color:var(--teal); box-shadow:0 0 0 2px rgba(45,106,127,.15); }
.nms-db button, .nms-db .btn-edit { font:inherit; cursor:pointer; text-decoration:none; }
.nms-db .reset { padding:.5rem 1rem; background:transparent; border:1px solid var(--border); border-radius:var(--radius); font-size:.82rem; color:var(--muted); white-space:nowrap; }
.nms-db .content { max-width:1100px; margin:0 auto; padding:0 2rem 4rem; }
.nms-db .results-meta { font-size:.78rem; color:var(--muted); padding:1rem 0 .6rem; margin:0; }
.nms-db .member-list { display:flex; flex-direction:column; gap:1px; background:var(--border); border:1px solid var(--border); border-radius:4px; overflow:hidden; }
.nms-db .header-row, .nms-db .member-row { display:grid; grid-template-columns:72px 200px 1fr 180px; }
.nms-db .header-row { background:var(--navy); color:#d0e8f0; font-size:.7rem; font-weight:600; letter-spacing:.07em; text-transform:uppercase; }
.nms-db .header-row div { padding:.55rem 1.2rem; }
.nms-db .member-row { background:var(--white); transition:background .15s; }
.nms-db .member-row:hover { background:#f6fbfd; }
.nms-db .col-photo, .nms-db .col-name, .nms-db .col-info { border-right:1px solid var(--border); }
.nms-db .col-photo { padding:.9rem .8rem; display:flex; align-items:center; justify-content:center; }
.nms-db .col-photo img, .nms-db .td-photo img, .nms-db .admin-table-wrap img { border-radius:50%; object-fit:cover; border:2px solid var(--border); }
.nms-db .avatar-placeholder { border-radius:50%; background:var(--tag-bg); border:2px solid var(--border); display:inline-flex; align-items:center; justify-content:center; font-weight:700; color:var(--teal); }
.nms-db .col-name { padding:1rem 1.2rem; display:flex; flex-direction:column; justify-content:center; gap:.2rem; }
.nms-db .col-name strong, .nms-db .td-name strong { color:var(--navy); font-weight:700; }
.nms-db .col-name span, .nms-db .td-name span { font-size:.75rem; color:var(--muted); font-style:italic; }
.nms-db .col-info { padding:1rem 1.2rem; display:flex; flex-direction:column; gap:.4rem; }
.nms-db .addr { font-size:.8rem; color:var(--muted); }
.nms-db .tags { display:flex; flex-wrap:wrap; gap:.35rem; }
.nms-db .tag { display:inline-block; background:var(--tag-bg); color:var(--tag-fg); font-size:.7rem; font-weight:600; padding:.18rem .55rem; border-radius:2px; margin:0 2px 2px 0; }
.nms-list .tag { cursor:pointer; }
.nms-list .tag:hover { background:var(--teal); color:#fff; }
.nms-db .col-links { padding:1rem 1.2rem; display:flex; flex-direction:column; justify-content:center; gap:.4rem; }
.nms-db .col-links a { font-size:.78rem; color:var(--teal2); text-decoration:none; word-break:break-all; }
.nms-db .empty { background:var(--white); text-align:center; padding:3rem 1rem; color:var(--muted); }
.nms-db .empty strong { display:block; font-size:1.1rem; color:var(--navy); margin-bottom:.3rem; }
.nms-db .reg-form { max-width:720px; margin:2rem auto 4rem; padding:1.5rem; background:var(--white); border:1px solid var(--border); border-radius:4px; display:grid; grid-template-columns:1fr 1fr; gap:1.1rem; }
.nms-db .reg-form .full, .nms-db .section-label, .nms-db .btn-submit { grid-column:1/-1; }
.nms-db .section-label { font-size:.7rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--teal); border-bottom:1px solid var(--border); padding-bottom:.4rem; margin-top:.4rem; }
.nms-db .hint { display:block; font-size:.75rem; color:var(--muted); margin-top:.25rem; }
.nms-db .btn-submit { background:var(--teal); color:#fff; border:none; border-radius:var(--radius); padding:.75rem 2rem; font-size:.95rem; font-weight:700; }
.nms-db .btn-submit:hover { background:var(--navy); }
.nms-db .nms-notice { max-width:720px; margin:1rem auto; background:var(--green-bg); border:1px solid #7fc9a0; border-radius:4px; padding:1rem 1.2rem; color:var(--green); }
.nms-db .admin-table-wrap { max-width:1100px; margin:2rem auto 4rem; background:var(--white); border:1px solid var(--border); border-radius:4px; overflow:auto; }
.nms-db table { width:100%; border-collapse:collapse; font-size:.85rem; }
.nms-db thead { background:var(--navy); color:#d0e8f0; }
.nms-db th { padding:.6rem .9rem; text-align:left; font-size:.68rem; font-weight:600; letter-spacing:.07em; text-transform:uppercase; white-space:nowrap; }
.nms-db td { padding:.65rem .9rem; border-bottom:1px solid var(--border); vertical-align:middle; }
.nms-db .td-actions { white-space:nowrap; }
.nms-db .td-actions form { display:inline; }
.nms-db .btn-edit, .nms-db .btn-del { display:inline-flex; align-items:center; gap:.3rem; border:none; border-radius:var(--radius); padding:.35rem .75rem; font-size:.78rem; font-weight:600; }
.nms-db .btn-edit { background:var(--tag-bg); color:var(--teal2); margin-right:.35rem; }
.nms-db .btn-del { background:var(--red-bg); color:var(--red); }
@media (max-width:760px) { .nms-db .search-inner { grid-template-columns:1fr 1fr; } .nms-db .reset { grid-column:1/-1; } .nms-db .member-row, .nms-db .header-row { grid-template-columns:56px 1fr; } .nms-db .col-info, .nms-db .col-links, .nms-db .header-row div:nth-child(n+3) { display:none; } .nms-db .reg-form { grid-template-columns:1fr; } .nms-db .reg-form .full, .nms-db .section-label, .nms-db .btn-submit { grid-column:1; } }
