 :root {--primary:#1a2a44;--accent:#ffcc00;--bg:#f0f2f5;--card-bg:#ffffff;--text-dark:#2d3748;--border:#e2e8f0;--success:#38a169;--error:#e53e3e;--info:#3182ce;} body {margin:0;font-family:'Pretendard', sans-serif;background-color:var(--bg);color:var(--text-dark);-webkit-text-size-adjust:none;overflow-x:hidden;} #mainContent, #memoModal, #secureModal {display:none;} #authOverlay {position:fixed;inset:0;background:linear-gradient(135deg, #1a2a44 0%, #0d1624 100%);z-index:9999;display:flex;justify-content:center;align-items:center;padding:20px;} .auth-box {background:white;padding:30px;border-radius:20px;width:100%;max-width:380px;text-align:center;box-shadow:0 20px 40px rgba(0,0,0,0.4);animation:slideUp 0.3s ease-out;} @keyframes slideUp {from {opacity:0;transform:translateY(20px);} to {opacity:1;transform:translateY(0);}} .auth-input {width:100%;padding:12px;margin-bottom:10px;border:1px solid #ddd;border-radius:8px;font-size:16px;box-sizing:border-box;} .auth-input:focus {border-color:var(--info);outline:none;box-shadow:0 0 0 3px rgba(49,130,206,0.1);} .auth-btn {width:100%;padding:14px;background:var(--primary);color:white;border:none;border-radius:8px;font-weight:bold;cursor:pointer;transition:0.2s;} .auth-btn:hover {filter:brightness(1.1);} .header {background:var(--primary);color:white;padding:35px 15px 25px;text-align:center;position:relative;} .top-left {position:absolute;top:10px;left:10px;right:10px;display:flex;justify-content:space-between;align-items:center;.75rem;} .nav-bar {display:flex;justify-content:center;gap:10px;margin-top:20px;flex-wrap:wrap;} .nav-btn {padding:10px 20px;border-radius:25px;font-weight:bold;cursor:pointer;border:none;min-width:140px;transition:0.3s;opacity:0.8;} .nav-btn.active {opacity:1;transform:scale(1.05);box-shadow:0 4px 10px rgba(0,0,0,0.2);} #adminMenuBtn {display:none;background:#e53e3e;color:white;border:none;padding:5px 12px;border-radius:4px;cursor:pointer;margin-left:10px;font-weight:bold;transition:0.2s;} #adminMenuBtn:hover {background:#c53030;} .page-section {display:none;max-width:1400px;margin:0 auto;padding:20px;animation:fadeIn 0.4s;} @keyframes fadeIn {from {opacity:0;transform:translateY(10px);} to {opacity:1;transform:translateY(0);}} .list-container {width:100%;overflow-x:auto;background:white;border-radius:12px;box-shadow:0 2px 10px rgba(0,0,0,0.05);max-height:70vh;overflow-y:auto;} table {width:100%;min-width:max-content;border-collapse:separate;border-spacing:0;table-layout:auto;} thead {position:sticky;top:0;z-index:10;background:white;} th {background:#f8f9fa;color:#555;font-weight:bold;.75rem;padding:10px;border-bottom:2px solid #ddd;border-right:1px solid #eee;text-align:center;vertical-align:middle;white-space:nowrap;} td {padding:8px 10px;.8rem;border-bottom:1px solid #eee;border-right:1px solid #f2f2f2;text-align:center;cursor:pointer;white-space:normal;word-break:keep-all;vertical-align:middle;height:auto;transition:0.2s;} tr:hover td {background-color:#f8fafc;} .w-date {min-width:90px;} .w-num {min-width:100px;} .w-name {min-width:150px;} .w-tid {min-width:120px;} .w-device {min-width:120px;} .w-loc {min-width:100px;} .w-port {min-width:60px;} .w-speed {min-width:60px;} .w-mgr {min-width:80px;} .w-phone {min-width:120px;} .w-addr {min-width:250px;text-align:left;} .w-fdf {min-width:80px;} .w-action {min-width:120px;position:sticky;right:0;background:white;border-left:2px solid #eee;z-index:5;display:none;vertical-align:middle;text-align:center;} body.admin-mode-active .w-action {display:table-cell !important;} .w-action button {padding:5px 10px;margin:0 2px;border:1px solid #ccc;background:white;border-radius:4px;cursor:pointer;.75rem;font-weight:bold;transition:0.2s;} .w-action button:hover {background-color:#f1f3f5;border-color:#aaa;} #adminPanel {display:none;background:white;border-radius:15px;padding:20px;margin-bottom:20px;border:2px dashed #e53e3e;} .user-item {display:flex;justify-content:space-between;align-items:center;padding:10px;border-bottom:1px solid #eee;.9rem;} #memoModal {position:fixed;inset:0;background:rgba(13, 22, 36, 0.85);z-index:10000;justify-content:center;align-items:center;display:none;backdrop-filter:blur(5px);} .memo-box {background:white;width:95%;max-width:800px;border-radius:16px;overflow:hidden;box-shadow:0 25px 50px rgba(0,0,0,0.4);display:flex;flex-direction:column;animation:slideUp 0.3s ease-out;} .memo-header {padding:18px 25px;background:linear-gradient(135deg, var(--primary) 0%, #2a4365 100%);color:white;display:flex;justify-content:space-between;align-items:center;font-weight:800;font-size:1.1rem;border-bottom:4px solid var(--accent);} .editor-toolbar {background:#f8fafc;padding:12px 20px;border-bottom:1px solid var(--border);display:flex;gap:8px;flex-wrap:wrap;align-items:center;} .toolbar-btn {padding:6px 12px;border:1px solid #cbd5e0;background:white;border-radius:6px;cursor:pointer;.85rem;height:36px;display:flex;align-items:center;justify-content:center;font-weight:600;color:var(--text-dark);transition:0.2s;box-sizing:border-box;} .toolbar-btn:hover {background:#edf2f7;border-color:#a0aec0;} .editor-content {width:100%;height:450px;padding:25px;overflow-y:auto;outline:none;background:white;line-height:1.6;box-sizing:border-box;.95rem;} .editor-content.placeholder {color:#a0aec0;font-style:italic;} .editor-content table {width:100%;border-collapse:collapse;margin:15px 0;border-radius:8px;overflow:hidden;box-shadow:0 0 0 1px #cbd5e0;} .editor-content th, .editor-content td {border:1px solid #cbd5e0;padding:12px;min-width:50px;} .editor-content th {background:#f8fafc;font-weight:bold;} .input-box-styled {display:none;background:#f8faff;padding:25px;border-radius:15px;border:2px solid var(--info);margin-bottom:25px;box-shadow:0 10px 20px rgba(0,0,0,0.05);} .input-grid {display:grid;grid-template-columns:1fr 1fr;gap:12px;} .search-input {width:100%;padding:14px 20px;border-radius:10px;border:1px solid #cbd5e0;margin-bottom:15px;box-sizing:border-box;font-size:1rem;transition:0.2s;} .search-input:focus {border-color:var(--info);outline:none;box-shadow:0 0 0 3px rgba(49,130,206,0.1);} .pagination-bar {display:flex;justify-content:center;gap:10px;margin-top:20px;} .page-num {padding:8px 12px;border-radius:5px;border:1px solid #ddd;cursor:pointer;background:white;font-weight:bold;transition:0.2s;} .page-num:hover {border-color:var(--primary);} .page-num.active {background:var(--primary);color:white;border-color:var(--primary);} #secureModal {position:fixed;inset:0;z-index:10001;justify-content:center;align-items:center;display:none;background:rgba(13, 22, 36, 0.85);backdrop-filter:blur(5px);} * {box-sizing:border-box;} html, body {margin:0;padding:0;width:100%;background:#f3f4f6;overflow-x:auto !important;font-family:-apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", "留묒  怨좊뵓", Arial, sans-serif !important;} body {font-size:13px !important;} button, input, select, textarea, table, th, td, div, span, p, h1, h2, h3 {font-family:-apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", "留묒  怨좊뵓", Arial, sans-serif !important;} #authOverlay {background:linear-gradient(135deg, #1a2a44 0%, #0d1624 100%) !important;} .auth-box {max-width:360px !important;padding:26px !important;border-radius:18px !important;} .auth-box h2, .auth-box h3 {font-size:22px !important;margin-bottom:18px !important;} .auth-input {min-height:40px !important;padding:9px 11px !important;font-size:13px !important;color:#111827 !important;background:#ffffff !important;border-radius:8px !important;} .auth-input::placeholder {color:#6b7280 !important;opacity:1 !important;} .auth-btn {min-height:40px !important;padding:9px 12px !important;font-size:13px !important;font-weight:800 !important;color:#ffffff !important;border-radius:8px !important;} .header {padding:26px 12px 16px !important;} .top-left {top:8px !important;left:8px !important;right:8px !important;font-size:11px !important;} .header h1 {font-size:22px !important;margin:12px 0 12px !important;color:#ffffff !important;} .nav-bar {gap:6px !important;margin-top:12px !important;} .nav-btn {min-width:110px !important;padding:8px 11px !important;font-size:12px !important;border-radius:18px !important;color:#111827 !important;background:#ffffff !important;white-space:nowrap !important;} .nav-btn.active {background:#ffcc00 !important;color:#111827 !important;} #adminMenuBtn {font-size:11px !important;padding:4px 8px !important;} .page-section {max-width:100% !important;padding:10px !important;} .welcome-card {padding:28px 16px !important;border-radius:16px !important;} .welcome-card h2 {font-size:20px !important;} .welcome-card p {font-size:13px !important;} #dataSection > div[style*="justify-content:space-between"], #pmSection > div[style*="justify-content:space-between"] {gap:8px !important;margin-bottom:10px !important;} #dataSection .auth-btn, #pmSection .auth-btn {font-size:11px !important;padding:8px 10px !important;min-height:36px !important;white-space:nowrap !important;} .search-input {height:38px !important;padding:8px 12px !important;font-size:13px !important;border-radius:8px !important;margin-bottom:10px !important;} .input-box-styled {padding:14px !important;border-radius:12px !important;margin-bottom:14px !important;} .input-box-styled h3 {font-size:17px !important;margin-bottom:12px !important;} .input-grid {gap:7px !important;} #inputBox .auth-input, #pmInputBox .auth-input {min-height:38px !important;font-size:12px !important;padding:8px 9px !important;} #inputBox .auth-input::placeholder, #pmInputBox .auth-input::placeholder {font-size:12px !important;} .list-container {max-height:72vh !important;overflow-x:auto !important;overflow-y:auto !important;border-radius:10px !important;} table {min-width:1120px !important;width:100% !important;border-collapse:separate !important;border-spacing:0 !important;} thead {position:sticky !important;top:0 !important;z-index:10 !important;} th {font-size:11px !important;padding:7px 6px !important;white-space:nowrap !important;} td {font-size:11px !important;padding:6px 6px !important;line-height:1.35 !important;} .w-date {min-width:72px !important;} .w-num {min-width:80px !important;} .w-name {min-width:105px !important;} .w-tid {min-width:90px !important;} .w-device {min-width:90px !important;} .w-loc {min-width:85px !important;} .w-port {min-width:45px !important;} .w-speed {min-width:45px !important;} .w-mgr {min-width:70px !important;} .w-phone {min-width:95px !important;} .w-addr {min-width:180px !important;} .w-fdf {min-width:62px !important;} .w-action {min-width:180px !important;width:180px !important;white-space:nowrap !important;} body.admin-mode-active .w-action {display:table-cell !important;position:sticky !important;right:0 !important;background:#ffffff !important;z-index:30 !important;text-align:center !important;} body.admin-mode-active .w-action button {display:inline-block !important;min-width:42px !important;height:27px !important;padding:4px 7px !important;margin:0 2px !important;font-size:11px !important;font-weight:800 !important;line-height:1 !important;white-space:nowrap !important;background:#ffffff !important;border:1px solid #cbd5e0 !important;border-radius:4px !important;} .pagination-bar {margin-top:10px !important;gap:5px !important;flex-wrap:wrap !important;} .page-num {font-size:11px !important;padding:6px 9px !important;} .memo-box {width:96% !important;max-width:720px !important;max-height:92vh !important;} .memo-header {padding:13px 16px !important;font-size:14px !important;} .editor-toolbar {padding:8px 10px !important;gap:5px !important;} .toolbar-btn {height:30px !important;font-size:11px !important;padding:4px 8px !important;} .editor-content {height:360px !important;padding:14px !important;font-size:13px !important;} @media (max-width:768px) {body {zoom:0.84;} .header, .page-section {min-width:1120px !important;} #authOverlay {zoom:1.15;} .auth-box {max-width:360px !important;}} @media (max-width:768px) {html, body {width:100% !important;min-width:0 !important;overflow-x:hidden !important;zoom:1 !important;} body {font-size:13px !important;background:#f3f4f6 !important;} #mainContent {width:100% !important;min-width:0 !important;overflow-x:hidden !important;} .header {width:100% !important;min-width:0 !important;padding:50px 10px 14px !important;box-sizing:border-box !important;overflow:visible !important;} .top-left {top:8px !important;left:8px !important;right:8px !important;font-size:11px !important;} .header h1 {font-size:20px !important;margin:8px 0 12px !important;white-space:normal !important;} .nav-bar {display:grid !important;grid-template-columns:1fr 1fr !important;gap:7px !important;width:100% !important;margin-top:10px !important;} .nav-btn {width:100% !important;min-width:0 !important;height:38px !important;padding:7px 8px !important;font-size:12px !important;border-radius:12px !important;} #navHome {grid-column:span 2 !important;} .page-section {width:100% !important;min-width:0 !important;max-width:100% !important;padding:10px !important;box-sizing:border-box !important;overflow-x:hidden !important;} .welcome-card {width:100% !important;padding:26px 14px !important;border-radius:14px !important;box-sizing:border-box !important;} .welcome-card h2 {font-size:19px !important;line-height:1.35 !important;} .welcome-card p {font-size:13px !important;line-height:1.5 !important;} #dataSection > div[style*="justify-content:space-between"], #pmSection > div[style*="justify-content:space-between"] {width:100% !important;display:flex !important;flex-direction:column !important;gap:8px !important;} #dataSection > div[style*="justify-content:space-between"] > div, #pmSection > div[style*="justify-content:space-between"] > div {width:100% !important;display:grid !important;grid-template-columns:1fr 1fr !important;gap:7px !important;} #dataSection .auth-btn, #pmSection .auth-btn {width:100% !important;min-height:38px !important;font-size:12px !important;padding:8px !important;} .search-input {width:100% !important;max-width:100% !important;height:38px !important;font-size:13px !important;} .input-box-styled {width:100% !important;padding:12px !important;border-radius:12px !important;box-sizing:border-box !important;} .input-grid {display:grid !important;grid-template-columns:1fr 1fr !important;gap:7px !important;} .input-grid input {width:100% !important;min-width:0 !important;} .input-grid input[style*="grid-column"] {grid-column:span 2 !important;} .list-container {width:100% !important;max-width:100% !important;overflow-x:auto !important;overflow-y:auto !important;-webkit-overflow-scrolling:touch !important;border-radius:10px !important;} table {min-width:1120px !important;width:1120px !important;} th, td {font-size:11px !important;padding:6px 5px !important;} .pagination-bar {width:100% !important;flex-wrap:wrap !important;gap:5px !important;} .memo-box {width:96% !important;max-width:96% !important;max-height:90vh !important;} .editor-content {height:42vh !important;}} @media (max-width:420px) {@media (max-width:768px) {.nav-btn {font-size:11px !important;} #dataSection > div[style*="justify-content:space-between"] > div, #pmSection > div[style*="justify-content:space-between"] > div {grid-template-columns:1fr !important;} .input-grid {grid-template-columns:1fr !important;} .input-grid input[style*="grid-column"] {grid-column:auto !important;}}} #adminPanel {background:#ffffff !important;border:2px dashed #e53e3e !important;border-radius:18px !important;padding:22px !important;margin-top:14px !important;} #adminPanel h3 {font-size:20px !important;color:#e53e3e !important;margin:0 0 18px 0 !important;} #pendingUsers h4, #activeUsers h4 {font-size:16px !important;color:#1a2a44 !important;margin:16px 0 10px !important;padding-bottom:8px !important;border-bottom:1px solid #e5e7eb !important;} .user-item {display:flex !important;align-items:center !important;justify-content:space-between !important;gap:12px !important;padding:12px 14px !important;border:1px solid #e5e7eb !important;border-radius:10px !important;margin-bottom:8px !important;background:#f9fafb !important;} .user-info {font-size:14px !important;color:#111827 !important;} .user-actions {display:flex !important;gap:8px !important;} .user-actions button {min-width:70px !important;height:34px !important;padding:7px 12px !important;border:none !important;border-radius:8px !important;color:#ffffff !important;font-size:13px !important;font-weight:800 !important;cursor:pointer !important;opacity:1 !important;visibility:visible !important;text-indent:0 !important;} .user-approve-btn {background:#38a169 !important;} .user-delete-btn {background:#e53e3e !important;} .admin-badge, .ok-badge, .wait-badge {display:inline-block !important;margin-left:8px !important;padding:3px 7px !important;border-radius:999px !important;font-size:11px !important;font-weight:800 !important;} .admin-badge {background:#1a2a44 !important;color:#ffffff !important;} .ok-badge {background:#e6fffa !important;color:#047857 !important;} .wait-badge {background:#fff7ed !important;color:#c2410c !important;} @media (max-width:768px) {#adminPanel {padding:14px !important;} .user-item {flex-direction:column !important;align-items:stretch !important;} .user-actions button {width:100% !important;}} #qrBox h3 {color:#38a169 !important;font-size:24px !important;font-weight:900 !important;} #qrBox p {color:#333 !important;font-size:14px !important;line-height:1.5 !important;} #qrBox p:first-of-type {color:#c53030 !important;font-weight:800 !important;} #qrSecret {color:#111 !important;font-size:20px !important;font-weight:900 !important;} #qrBox .auth-btn {font-size:15px !important;font-weight:900 !important;color:white !important;} td.w-name, #postList td:nth-child(3), #pmList td:nth-child(3) {white-space:nowrap !important;word-break:normal !important;overflow:visible !important;text-overflow:clip !important;max-width:none !important;min-width:180px !important;width:auto !important;} th.w-name {white-space:nowrap !important;min-width:180px !important;max-width:none !important;} .w-name {white-space:nowrap !important;min-width:180px !important;max-width:none !important;width:auto !important;} table {table-layout:auto !important;} .list-container {overflow-x:auto !important;}


/* admin-screen-only-fix-final */
#adminPanel,
.admin-panel,
.user-admin-panel {
  border: none !important;
  outline: none !important;
}

#adminPanel *,
.admin-panel *,
.user-admin-panel * {
  letter-spacing: normal !important;
  word-spacing: normal !important;
}

#adminPanel .user-card,
.admin-panel .user-card,
.user-admin-panel .user-card,
#adminPanel [class*="user"],
.admin-panel [class*="user"] {
  box-sizing: border-box;
}

#adminPanel button,
.admin-panel button,
.user-admin-panel button {
  min-width: 80px !important;
  width: auto !important;
  height: 42px !important;
  padding: 8px 16px !important;
  border-radius: 12px !important;
  font-weight: 700 !important;
}

#adminPanel .delete-btn,
.admin-panel .delete-btn,
.user-admin-panel .delete-btn {
  background: #cf4b45 !important;
  color: #ffffff !important;
  border: none !important;
}


/* admin-screen-source-text-final */
#adminPanel,
.admin-panel,
.user-admin-panel {
  border: none !important;
  outline: none !important;
}

#adminPanel *,
.admin-panel *,
.user-admin-panel * {
  letter-spacing: normal !important;
  word-spacing: normal !important;
}

#adminPanel button,
.admin-panel button,
.user-admin-panel button {
  width: auto !important;
  min-width: 80px !important;
  height: 42px !important;
  padding: 8px 16px !important;
  border-radius: 12px !important;
  font-weight: 700 !important;
}

#adminPanel button.delete,
#adminPanel .delete-btn,
.admin-panel button.delete,
.admin-panel .delete-btn,
.user-admin-panel button.delete,
.user-admin-panel .delete-btn {
  background: #cf4b45 !important;
  color: #ffffff !important;
  border: none !important;
}


/* admin-reject-visible-red-style-final */
.user-reject-btn,
button.user-reject-btn,
#adminPanel .user-reject-btn,
.admin-panel .user-reject-btn,
.user-admin-panel .user-reject-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  min-width: 86px !important;
  height: 42px !important;
  margin-left: 10px !important;
  padding: 8px 16px !important;

  background: #ffffff !important;
  color: #cf4b45 !important;
  border: 2px solid #cf4b45 !important;
  border-radius: 12px !important;

  font-size: 15px !important;
  font-weight: 800 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  cursor: pointer !important;
  text-shadow: none !important;
}

.user-reject-btn::before,
.user-reject-btn::after {
  content: none !important;
}

.user-reject-btn:hover,
button.user-reject-btn:hover {
  background: #cf4b45 !important;
  color: #ffffff !important;
  border-color: #cf4b45 !important;
}

