﻿/* Member-list visual layer only. Events, permissions and forms remain unchanged. */
#people{font-family:EverycallPretendard,"Malgun Gothic",sans-serif;color:#172b4d;}
#people :is(button,input,select,table){font-family:inherit;}
#people>.card{background:white;border:0;border-radius:0;box-shadow:none;padding:0;}
#people .member-topline{display:flex;align-items:center;gap:12px;margin-bottom:12px;}
#people .member-topline button{background:#f1f2f4;color:#172b4d;border:1px solid #dfe1e6;border-radius:6px;}
#people .reference-scope,#people .muted{color:#44546f;font-size:13px;}
#people #member-search-tools{display:flex;align-items:flex-end;flex-wrap:wrap;gap:10px;padding:12px 0;margin:0 0 16px;background:white;border:0;}
#people #member-search-tools>label{display:flex;flex-direction:column;gap:4px;margin:0;font-size:12px;color:#44546f;}
#people #member-search-tools :is(select,input[type=search]){height:40px;min-height:40px;border:1px solid #8590a2;border-radius:6px;background:white;color:#172b4d;font-size:14px;padding:0 12px;margin:0;box-sizing:border-box;}
#people #member-search-tools input[type=search]{flex:1;min-width:180px;max-width:320px;}
#people #member-search-tools button{height:40px;min-height:40px;margin:0;padding:0 16px;border:1px solid #dfe1e6;border-radius:6px;background:white;color:#172b4d;font-size:14px;}
#people #member-search-tools button.primary{background:#0c66e4;border-color:#0c66e4;color:white;}
#people .member-role-radios{display:flex;align-items:center;gap:10px;min-height:40px;flex-wrap:wrap;}
#people .member-role-radios label{display:inline-flex;flex-direction:row;align-items:center;gap:4px;margin:0;color:#172b4d;font-size:13px;}
#people .member-role-radios input{accent-color:#0c66e4;}
#people #member-assignment-summary{border:1px solid #dfe1e6;background:#f7f8f9;border-radius:6px;padding:10px 12px;margin-bottom:16px;font-size:13px;}
#people #agent-list .table-wrap{overflow:auto;max-height:65vh;border:1px solid #dfe1e6;border-radius:8px;}
#people #agent-list table{border-collapse:collapse;font-variant-numeric:tabular-nums;}
#people #agent-list table th{position:sticky!important;top:0!important;z-index:3;background:#f7f8f9!important;color:#44546f!important;border:0!important;border-bottom:1px solid #dfe1e6!important;padding:10px 12px!important;font-size:13px!important;font-weight:600!important;white-space:nowrap;}
#people #agent-list table th button{color:#44546f!important;background:transparent!important;font-size:13px!important;font-weight:600!important;border:0;border-radius:4px;}
#people #agent-list table td{background:white!important;color:#172b4d!important;border:0!important;border-bottom:1px solid #dfe1e6!important;padding:10px 12px!important;font-size:14px!important;line-height:1.4!important;white-space:nowrap;}
#people #agent-list table tr:hover td{background:#f7f8f9!important;}
#people #agent-list .member-management-actions{display:flex;flex-wrap:nowrap;align-items:center;gap:5px;}
#people #agent-list .member-management-actions button{border-radius:5px;min-height:30px;font-size:12px;padding:5px 8px;white-space:nowrap;}
#people .pagination{display:flex;justify-content:flex-end;gap:12px;align-items:center;margin:0;padding:12px 0;}
#people .pagination button{border:1px solid #dfe1e6;border-radius:6px;background:white;color:#172b4d;}
#people :is(button,input,select,summary):focus-visible{outline:2px solid #0c66e4;outline-offset:2px;}
#people button:disabled{cursor:default;}
/* Member entry page: preserve field order, validation and submit handlers. */
#member-register{font-family:EverycallPretendard,"Malgun Gothic",sans-serif;color:#172b4d;}
#member-register :is(input,select,button){font-family:inherit;}
#member-register .member-register-form{max-width:1200px;margin:0 auto;border:1px solid #dfe1e6;border-radius:10px;padding:24px;background:white;}
#member-register #registration-fields{border:0;gap:16px 24px;grid-template-columns:repeat(2,minmax(0,1fr));}
#member-register .member-entry-field{grid-template-columns:120px minmax(0,1fr);align-items:center;min-height:56px;border-bottom:1px solid #ebecf0;padding:0 0 14px;gap:12px;}
#member-register .member-entry-caption{background:transparent;padding:0;font-size:14px;font-weight:600;color:#172b4d;}
#member-register .member-entry-value{padding:0;font-size:14px;line-height:1.5;color:#44546f;}
#member-register .member-entry-value input:not([type=radio]),#member-register .member-entry-value select{width:100%;max-width:360px;height:40px;border:1px solid #8590a2;border-radius:6px;padding:8px 12px;margin:0;background:#fff;color:#172b4d;box-sizing:border-box;}
#member-register .member-entry-value input::placeholder{color:#626f86;}
#member-register #member-entry-branch-slot,#member-register #member-entry-branch-slot>label{width:100%;max-width:360px;}
#member-register .member-role-options{gap:20px;min-height:32px;flex-wrap:wrap;}
#member-register .member-role-options input{accent-color:#0c66e4;}
#member-register .member-entry-help{margin:6px 0 0;font-size:13px;color:#626f86;}
#member-register .registration-note{padding:14px 16px;margin:20px 0 0;background:#f7f8f9;border-radius:6px;color:#44546f;font-size:13px;line-height:1.6;}
#member-register .registration-footer{justify-content:flex-end;align-items:center;padding:20px 0 0;gap:8px;}
#member-register .registration-footer button{min-height:40px;margin:0;padding:8px 20px;border:1px solid #dfe1e6;border-radius:6px;font-size:14px;font-weight:600;background:white;color:#172b4d;box-shadow:none;}
#member-register .registration-footer button[type=submit]{background:#0c66e4;border-color:#0c66e4;color:white;}
#member-register .registration-footer button[type=submit]:hover{background:#0055cc;}
#member-register :is(button,input,select):focus-visible{outline:2px solid #0c66e4;outline-offset:2px;}
#member-register :is(button,input,select):disabled{opacity:.6;cursor:default;}
@media(max-width:1050px){#member-register #registration-fields{grid-template-columns:1fr;}}
@media(max-width:560px){#member-register .member-register-form{padding:16px;}#member-register .member-entry-field{grid-template-columns:1fr;gap:8px;}#member-register .member-entry-value input:not([type=radio]),#member-register .member-entry-value select{max-width:none;}}
/* Group modal is mounted on body, outside #people. Keep its behavior intact. */
#member-group-dialog.group-management{width:920px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);padding:0;border:1px solid #dfe1e6;border-radius:12px;background:#fff;color:#172b4d;font-family:EverycallPretendard,"Malgun Gothic",sans-serif;box-shadow:0 16px 48px #091e4240;}
#member-group-dialog :is(button,input,table){font-family:inherit;}
#member-group-dialog .registration-header{position:sticky;top:0;z-index:5;padding:16px 24px;background:#fff;border-bottom:1px solid #dfe1e6;}
#member-group-dialog .registration-header h2{font-size:20px;font-weight:700;color:#172b4d;}
#member-group-dialog .registration-header button{background:transparent;color:#44546f;border-radius:6px;}
#member-group-dialog .group-management-content{padding:20px 24px;font-size:14px;}
#member-group-dialog .group-help{margin:0 0 16px;color:#626f86;font-size:13px;line-height:1.6;}
#member-group-dialog .table-wrap{max-height:42vh;border:1px solid #dfe1e6;border-radius:8px;overflow:auto;}
#member-group-dialog table{width:100%;min-width:580px;table-layout:fixed;border-collapse:separate;border-spacing:0;}
#member-group-dialog table th{position:sticky;top:0;z-index:2;background:#f7f8f9!important;color:#44546f!important;padding:11px 12px;border:0;border-bottom:1px solid #dfe1e6;font-size:13px;font-weight:600;text-align:left;}
#member-group-dialog table th:nth-child(1){width:24%;}
#member-group-dialog table th:nth-child(2){width:21%;}
#member-group-dialog table th:nth-child(3),#member-group-dialog table th:nth-child(4){width:12%;text-align:center;}
#member-group-dialog table th:last-child{width:31%;text-align:right;}
#member-group-dialog table td{padding:10px 12px;border:0;border-bottom:1px solid #ebecf0;background:#fff!important;color:#172b4d;font-size:14px;line-height:1.5;overflow-wrap:anywhere;text-align:left;}
#member-group-dialog table tr:last-child td{border-bottom:0;}
#member-group-dialog table tr:hover td{background:#f7f8f9!important;}
#member-group-dialog table td:first-child{font-weight:600;}
#member-group-dialog table td:nth-child(3),#member-group-dialog table td:nth-child(4){text-align:center;font-variant-numeric:tabular-nums;}
#member-group-dialog table td:last-child{text-align:right;white-space:nowrap;}
#member-group-dialog button{min-height:34px;border:1px solid #dfe1e6;border-radius:6px;background:#fff;color:#172b4d;box-shadow:none;cursor:pointer;}
#member-group-dialog table td button{padding:6px 10px;margin:0;font-size:13px;font-weight:600;}
#member-group-dialog table td button+button{margin-left:6px;}
#member-group-dialog button:hover{background:#f1f2f4;}
#member-group-dialog input{height:38px;border:1px solid #8590a2;border-radius:6px;background:#fff;color:#172b4d;padding:8px 10px;}
#member-group-dialog h3{margin:20px 0 10px;font-size:14px;font-weight:600;color:#172b4d;}
#member-group-dialog .group-add-row{align-items:center;gap:8px;}
#member-group-dialog .group-add-row input{height:38px;font-size:14px;}
#member-group-dialog .group-add-row button{height:38px;width:80px;background:#0c66e4;border-color:#0c66e4;color:white;font-weight:600;}
#member-group-dialog .group-add-row button:hover{background:#0055cc;}
#member-group-dialog .registration-footer{position:sticky;bottom:0;background:#fff;padding:12px 24px;border-top:1px solid #dfe1e6;z-index:3;}
#member-group-dialog .registration-note{padding:0 24px 14px;}
#member-group-dialog :is(button,input):focus-visible{outline:2px solid #0c66e4;outline-offset:2px;}
#member-group-dialog button:disabled{opacity:.55;cursor:default;}
@media(max-width:640px){#member-group-dialog .group-management-content{padding:16px;}#member-group-dialog .registration-header,#member-group-dialog .registration-footer{padding:12px 16px;}}
