:root {font-family:Pretendard,"Noto Sans KR",system-ui,sans-serif;color:#20332e;background:#f3f6f5;font-size:14px;line-height:1.6}
* {box-sizing:border-box}
body {margin:0}
a {color:#176451;text-decoration:none}
button,input,select,textarea {font:inherit}
button,a {touch-action:manipulation}
button {cursor:pointer}
button:disabled {opacity:.6;cursor:wait}
.service-shell {max-width:1120px;margin:auto;padding:28px}
.service-header {display:flex;gap:16px;align-items:center;justify-content:space-between;margin-bottom:36px;flex-wrap:wrap}
.service-brand {font-size:24px;font-weight:800;letter-spacing:-1px;color:#174b42}
.service-header nav {display:flex;gap:18px;font-size:14px}
.service-layout {display:grid;grid-template-columns:1fr 1.1fr;gap:48px;align-items:start}
.service-intro h1 {font-size:36px;line-height:1.3;letter-spacing:-1px;margin:20px 0}
.service-intro p {font-size:16px;color:#5d6e68}
.service-intro ul {padding-left:20px;font-size:15px;line-height:2.2}
.service-card {background:white;border:1px solid #dbe5e0;border-radius:18px;padding:28px;min-width:0;box-shadow:0 8px 28px #183c2710}
.service-tabs {display:flex;gap:8px;padding-bottom:22px;flex-wrap:wrap}
.service-tabs button {flex:1;padding:10px;border:1px solid #dbe5e0;border-radius:8px;background:#f6f9f7;color:#40534a}
.service-tabs button.selected {color:white;background:#174b42;border-color:#174b42}
.service-form {display:grid;gap:16px}
.service-form label {display:grid;gap:6px;font-weight:600;font-size:14px;min-width:0}
.service-form input,.service-form select,.service-form textarea,.service-filter {width:100%;padding:11px 12px;border:1px solid #cbd8d1;border-radius:8px;background:white;color:#20332e;min-width:0}
.service-form input:focus,.service-form select:focus,.service-form textarea:focus {outline:2px solid #79b6a0;outline-offset:2px}
.service-form small {font-size:13px;font-weight:400;color:#617369;overflow-wrap:anywhere}
.service-button {display:inline-flex;justify-content:center;align-items:center;padding:11px 16px;border:1px solid #cbd8d1;border-radius:8px;background:white;color:#174b42;min-height:44px;font-weight:600}
.service-button.primary {background:#174b42;color:white;border-color:#174b42}
.service-error {color:#ac312d;font-size:14px;overflow-wrap:anywhere;white-space:pre-wrap}
.service-note {color:#617369;font-size:13px;overflow-wrap:anywhere}
.service-grid {display:grid;grid-template-columns:1fr 1fr;gap:16px}
.service-stats {display:flex;gap:20px;flex-wrap:wrap;margin:18px 0}
.service-stats span {background:white;border:1px solid #dbe5e0;padding:16px 24px;border-radius:12px;font-size:14px}
.service-stats b {font-size:24px;display:block}
.service-table {overflow:auto;max-width:100%;margin-top:18px}
.service-table table {border-collapse:collapse;width:100%;white-space:nowrap;background:white}
.service-table th,.service-table td {padding:12px;border-bottom:1px solid #dbe5e0;text-align:left;font-size:14px}
.service-tools {display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.service-modal {position:fixed;inset:0;background:#16332955;display:grid;place-items:center;padding:16px;z-index:20}
.service-modal .service-card {width:540px;max-width:100%;max-height:90vh;overflow:auto}
.service-modal h2 {font-size:22px;margin:0 0 16px}
.service-account {max-width:560px;margin:40px auto;padding:0 18px}
[hidden] {display:none!important}
@media(max-width:760px) {.service-shell{padding:20px}.service-layout{grid-template-columns:1fr;gap:24px}.service-intro h1{font-size:28px}.service-card{padding:20px}.service-grid{grid-template-columns:1fr}.service-header{margin-bottom:22px}.service-stats{gap:10px}.service-stats span{padding:12px 16px}}
