/* 입력칸·버튼 현대화 (둥근 모서리, 포커스 링, 투명 버튼). 라이트/다크 테마 공통 */
:root { --ui-line: #c9d3df; --ui-bg: #fff; --ui-ink: #1c2633; --ui-accent: #3d7ce0; --ui-ring: rgba(61, 124, 224, .22); --ui-hover: rgba(61, 124, 224, .08); }
@media (prefers-color-scheme: dark) {
    :root { --ui-line: #3a4757; --ui-bg: #18222e; --ui-ink: #d3dae3; --ui-accent: #8fbcff; --ui-ring: rgba(143, 188, 255, .25); --ui-hover: rgba(143, 188, 255, .10); }
}

input[type=text], input[type=password], input[type=email], input[type=search], input[type=date], input[type=time],
input[type=number], input:not([type]), select, textarea, .ed, .mw_basic_text, .mw_basic_textarea {
    border: 1px solid var(--ui-line) !important; border-radius: 8px; background: var(--ui-bg); color: var(--ui-ink);
    padding: 3px 8px; font: inherit; box-sizing: border-box; min-height: 26px;
    transition: border-color .15s ease, box-shadow .15s ease;
}
textarea, .mw_basic_textarea { padding: 6px 10px; }
input:focus, select:focus, textarea:focus { outline: none; border-color: var(--ui-accent) !important; box-shadow: 0 0 0 3px var(--ui-ring); }
input[type=checkbox], input[type=radio] { accent-color: var(--ui-accent); }

input[type=button], input[type=submit], input[type=reset], button, .btn {
    display: inline-flex; align-items: center; gap: 5px; min-height: 26px; padding: 2px 12px;
    border: 1px solid var(--ui-line); border-radius: 999px; background: transparent; color: var(--ui-ink);
    font: inherit; font-size: 12px; cursor: pointer; text-decoration: none !important; vertical-align: middle;
    transition: border-color .15s ease, background .15s ease, color .15s ease;
}
input[type=button]:hover, input[type=submit]:hover, button:hover, .btn:hover { border-color: var(--ui-accent); background: var(--ui-hover); color: var(--ui-accent); }
.btn-primary { background: var(--ui-accent); border-color: var(--ui-accent); color: #fff !important; }
.btn-primary:hover { filter: brightness(1.08); background: var(--ui-accent); color: #fff !important; }
.btn-print::before {
    content: ""; width: 14px; height: 14px; background: currentColor;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 9V3h12v6h1a3 3 0 0 1 3 3v5h-4v4H6v-4H2v-5a3 3 0 0 1 3-3h1zm2-4v4h8V5H8zm0 11v3h8v-3H8z'/%3E%3C/svg%3E") center / contain no-repeat;
            mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 9V3h12v6h1a3 3 0 0 1 3 3v5h-4v4H6v-4H2v-5a3 3 0 0 1 3-3h1zm2-4v4h8V5H8zm0 11v3h8v-3H8z'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* 검은 로그인 박스·상단 검색줄 (배경이 늘 검정) */
#leftbar .blackinput, #loginbar input[type=text] {
    background: rgba(255, 255, 255, .08) !important; border: 1px solid rgba(255, 255, 255, .22) !important;
    color: #eef2f8; border-radius: 8px; height: 22px; min-height: 22px; padding: 1px 8px; font-size: 11px;
}
#leftbar .blackinput::placeholder, #loginbar input::placeholder { color: rgba(238, 242, 248, .5); }
#leftbar .blackinput:focus, #loginbar input[type=text]:focus { border-color: #8fbcff !important; box-shadow: 0 0 0 3px rgba(143, 188, 255, .25); }
.btn-dark { border-color: rgba(255, 255, 255, .28); color: #eef2f8 !important; font-size: 11px; min-height: 22px; padding: 1px 10px; }
.btn-dark:hover { border-color: #8fbcff; background: rgba(143, 188, 255, .15); color: #fff !important; }
#loginbar { padding: 4px 6px !important; }
#loginbar input[type=text] { width: 150px; }

/* 좌측 로그인 박스는 폭 200px 안에 맞춘다 */
#leftbar .blackinput { width: 94px; }
#leftbar table td { white-space: nowrap; }
#leftbar .btn-dark { font-size: 10.5px; padding: 1px 8px; min-height: 20px; }
#leftbar td[colspan] { padding-top: 4px !important; white-space: nowrap; }
