:root{--green:#08766a;--green2:#e7f4f1;--ink:#172522;--muted:#667570;--line:#dfe7e4;--bg:#f4f7f6;--red:#bd3d3d}
*{box-sizing:border-box}body{margin:0;font-family:Arial,"Noto Sans KR",sans-serif;color:var(--ink);background:var(--bg)}
button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}input:focus,select:focus,textarea:focus{outline:2px solid #08766a55;border-color:var(--green)}.hidden{display:none!important}.login-shell{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#e6f3f0,#f9fbfa)}
.login-card{width:400px;padding:38px;background:white;border-radius:20px;box-shadow:0 20px 60px #315d5420;display:grid;gap:16px}.login-card h1{margin:0}.login-card p{margin:0 0 10px;color:var(--muted)}label{display:grid;gap:7px;font-weight:700}input,select{border:1px solid var(--line);border-radius:9px;padding:11px 12px;background:#fff}.primary{border:0;border-radius:10px;background:var(--green);color:#fff;padding:13px;font-weight:700}.brand-mark,.brand span{display:grid;place-items:center;background:var(--green);color:white;font-weight:800;border-radius:12px}.brand-mark{width:58px;height:58px;font-size:21px}.error{color:var(--red)}
.app-shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh}aside{position:fixed;width:240px;height:100vh;background:#102c28;color:#fff;padding:20px 14px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;padding:8px 10px 28px}.brand span,.brand img{width:42px;height:42px}.brand img{object-fit:contain;border-radius:10px;background:white}.brand div{display:grid}.brand small{opacity:.65;margin-top:4px}nav{display:grid;gap:6px}nav button{border:0;background:transparent;color:#dbe8e5;text-align:left;padding:13px 14px;border-radius:9px;cursor:pointer}nav button.active,nav button:hover{background:#ffffff17;color:#fff}.aside-bottom{margin-top:auto;display:grid;gap:8px;padding:12px}.aside-bottom button{border:1px solid #ffffff44;background:transparent;color:white;border-radius:8px;padding:9px}
main{grid-column:2;min-width:0}header{min-height:92px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:20px 28px;gap:20px}header h1{margin:0;font-size:25px}header p{margin:5px 0 0;color:var(--muted)}.header-actions{display:flex;gap:8px;align-items:center}.header-actions input{width:230px}.header-actions button,.table-action{border:1px solid var(--line);background:white;border-radius:8px;padding:10px 12px;cursor:pointer}
#content{padding:24px}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:14px;margin-bottom:24px}.metric{background:white;border:1px solid var(--line);border-radius:14px;padding:19px}.metric span{color:var(--muted);font-size:14px}.metric strong{display:block;font-size:25px;margin-top:8px}.metric em{font-style:normal;color:var(--green);font-size:13px}
.panel{background:white;border:1px solid var(--line);border-radius:14px;padding:18px;margin-bottom:18px}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.panel h2{margin:0;font-size:18px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th,td{text-align:left;padding:12px 11px;border-bottom:1px solid var(--line);font-size:14px}th{background:#f7faf9;color:var(--muted);position:sticky;top:0}tbody tr:hover{background:#f7faf9}.link{color:var(--green);font-weight:700;cursor:pointer}.badge{display:inline-block;padding:5px 8px;border-radius:20px;background:var(--green2);color:var(--green);font-size:12px}.badge.red{background:#fdecec;color:var(--red)}.empty-state{text-align:center;color:var(--muted);padding:28px}
.agent-grid{display:grid;grid-template-columns:repeat(3,minmax(250px,1fr));gap:14px}.agent-card{background:white;border:1px solid var(--line);border-radius:14px;padding:18px;cursor:pointer}.agent-card:hover{border-color:var(--green)}.agent-card h3{margin:0 0 5px}.agent-card p{margin:0;color:var(--muted)}.agent-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:16px}.agent-stats div{background:var(--bg);padding:10px;border-radius:8px}.agent-stats small,.agent-stats strong{display:block}.agent-stats small{color:var(--muted);margin-bottom:4px}
dialog{width:min(1000px,90vw);max-height:88vh;border:0;border-radius:16px;padding:25px;box-shadow:0 30px 100px #0004}dialog::backdrop{background:#102c2877}.dialog-close{float:right;border:0;background:var(--bg);border-radius:50%;width:34px;height:34px;font-size:20px}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.detail-grid div{background:var(--bg);padding:12px;border-radius:9px}.detail-grid small,.detail-grid strong{display:block}.detail-grid small{color:var(--muted);margin-bottom:5px}.loading{text-align:center;padding:60px;color:var(--muted)}
.dialog-actions{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.dialog-actions button,.edit-form button{border:1px solid var(--line);border-radius:9px;padding:11px 14px;cursor:pointer;background:white}.dialog-actions .primary,.edit-form .primary{background:var(--green);color:white;border-color:var(--green)}.edit-form{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:14px;margin-top:18px}.edit-form label{font-size:14px}.edit-form textarea{min-height:90px;border:1px solid var(--line);border-radius:9px;padding:10px;resize:vertical;font:inherit}.edit-form .check-label{display:flex;align-items:center;gap:8px}.edit-form .check-label input{width:auto}.edit-form button{align-self:end}
.page-actions{display:flex;justify-content:flex-end;margin-bottom:14px}.page-actions button{border:0;border-radius:9px;padding:11px 15px;cursor:pointer}.page-actions .primary{background:var(--green);color:white}
.warning-box{background:#fff3cd;border:1px solid #ffe69c;color:#664d03;padding:14px;border-radius:10px;margin-bottom:14px;font-weight:700}.danger-button{color:#b42318!important;border-color:#f0b4ae!important}.bar-chart{height:230px;display:flex;align-items:flex-end;gap:12px;padding:20px 8px 0}.bar-item{height:100%;flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:7px}.bar-pair{height:190px;display:flex;align-items:flex-end;justify-content:center;gap:3px}.bar{width:15px;background:linear-gradient(#19a995,#08766a);border-radius:7px 7px 0 0}.profit-bar{background:linear-gradient(#f0b65b,#d48815)}.chart-legend{color:var(--muted);font-size:13px}.chart-legend i{display:inline-block;width:10px;height:10px;background:var(--green);margin:0 12px 0 4px}.chart-legend i:last-child{background:#d48815}.settings-form{display:grid;grid-template-columns:repeat(2,minmax(260px,1fr));gap:18px}.settings-form textarea{min-height:180px;border:1px solid var(--line);border-radius:9px;padding:12px;font:inherit}.measurement-form{display:grid;gap:14px}.measurement-form fieldset{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;border:1px solid var(--line);border-radius:10px;padding:14px}.measurement-form legend{font-weight:700}.measurement-form button{justify-self:end}
.cost-preview{grid-column:1/-1;background:var(--green2);border-radius:10px;padding:14px;display:flex;gap:22px;align-items:center}.advertising-stats{margin-bottom:18px}.advertising-stats .agent-card strong{display:block;margin-top:10px;font-size:20px;color:var(--green)}
.notice-box{background:#e7f4f1;border:1px solid #b9ddd6;color:#075f56;border-radius:12px;padding:14px 16px;margin-bottom:16px;font-weight:800}.notification-box{background:#fff4e5;border:1px solid #ffc46b;color:#5c3a00;border-radius:12px;padding:14px 16px;margin-bottom:16px;display:flex;align-items:center;gap:14px}.notification-box span{flex:1}.notification-box button{border:0;background:#d97706;color:white;border-radius:8px;padding:10px 13px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.calendar-grid>div{background:#f7faf9;border-radius:9px;min-height:36px;padding:8px;text-align:center}.calendar-day{text-align:left!important;min-height:96px!important;border:1px solid var(--line)}.calendar-day.empty{background:transparent;border:0}.calendar-day.has-event{border-color:#f59e0b;background:#fff7ed}.calendar-day.has-event b{color:#c2410c}.calendar-day small{display:block;margin-top:5px;background:#fb923c;color:white;border-radius:6px;padding:3px 5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.calendar-day small:hover{background:#d97706}.calendar-day small.completed-event{background:#82928e;text-decoration:line-through;opacity:.8}
.calendar-memo-input{grid-column:1/-1;margin-top:12px}.calendar-memo-input textarea{min-height:130px!important;padding:14px!important}.calendar-memo-detail{white-space:pre-wrap;line-height:1.8;padding:14px 6px;min-height:70px}
.payment-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0}.payment-summary div{background:var(--bg);border-radius:10px;padding:13px}.payment-summary small,.payment-summary strong{display:block}.payment-summary small{color:var(--muted);margin-bottom:5px}.payment-presets{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.payment-preset{border:1px solid #a7d6cd!important;background:var(--green2)!important;color:var(--green);font-weight:800}.payment-preset small{display:block;margin-top:4px;font-weight:400}.payment-preset.balance-confirm{grid-column:1/-1;background:var(--green)!important;color:white}.payment-result{grid-column:1/-1;border-radius:10px;padding:13px;background:var(--bg);font-weight:800}.payment-result.short{background:#fff3cd;color:#664d03}.payment-result.over{background:#fdecec;color:var(--red)}.payment-result.complete{background:var(--green2);color:var(--green)}
@media(max-width:1200px){.metric-grid{grid-template-columns:repeat(2,1fr)}.agent-grid{grid-template-columns:repeat(2,1fr)}header{align-items:flex-start;flex-direction:column}.header-actions{flex-wrap:wrap}}

/* v17 compact professional admin console */
:root{--green:#08766a;--green-dark:#075e55;--nav:#102723;--bg:#f3f6f5;--panel:#fff;--ink:#17211f;--muted:#6b7774;--line:#e3e9e7;--amber:#b76e00;--blue:#2563eb}
body{font-size:13px}.app-shell{grid-template-columns:210px 1fr}aside{width:210px;padding:14px 10px;background:linear-gradient(180deg,#102b27,#0d211e)}.brand{padding:6px 8px 18px}.brand span,.brand img{width:36px;height:36px;border-radius:9px}.brand small{font-size:11px}nav{gap:2px}nav button{padding:10px 11px;border-radius:7px;font-size:13px}main{grid-column:2}header{min-height:72px;padding:13px 20px;gap:12px;position:sticky;top:0;z-index:10}header h1{font-size:20px}header p{font-size:12px;margin-top:3px}.header-actions{gap:6px}.header-actions input{width:190px}.header-actions input,.header-actions select,.header-actions button{height:34px;padding:7px 9px;border-radius:7px;font-size:12px}#content{padding:16px 20px}.metric-grid{grid-template-columns:repeat(6,minmax(135px,1fr));gap:9px;margin-bottom:15px}.metric{border-radius:9px;padding:13px 14px;box-shadow:0 1px 2px #102c2808}.metric span{font-size:11px}.metric strong{font-size:18px;margin-top:5px}.panel{border-radius:10px;padding:13px;margin-bottom:12px;box-shadow:0 1px 3px #102c2808}.panel-head{margin-bottom:10px}.panel h2{font-size:14px}th,td{padding:9px 9px;font-size:12px}th{font-size:11px;text-transform:none}.badge{padding:4px 7px;font-size:11px}.agent-grid{grid-template-columns:repeat(4,minmax(210px,1fr));gap:10px}.agent-card{border-radius:10px;padding:14px}.agent-card h3{font-size:14px}.agent-stats{margin-top:11px}.agent-stats div{padding:8px}.agent-stats strong{font-size:12px}dialog{width:min(1120px,94vw);padding:20px;border-radius:12px}.detail-grid{grid-template-columns:repeat(4,1fr);gap:8px}.detail-grid div{padding:10px;border-radius:7px}.dialog-actions{gap:6px;margin:12px 0}.dialog-actions button,.edit-form button{padding:8px 10px;border-radius:7px;font-size:12px}.edit-form{gap:10px;margin-top:12px}.edit-form input,.edit-form select,.edit-form textarea{padding:9px}.sort-button{border:0;background:transparent;color:inherit;font-weight:700;padding:0;white-space:nowrap}.eyebrow{display:block;font-size:9px;letter-spacing:.14em;color:var(--green);font-weight:800;margin-bottom:3px}.ops-section{margin-bottom:13px}.section-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.section-title h2{font-size:14px;margin:0}.count-pill{font-size:11px;background:#e9efed;padding:4px 8px;border-radius:12px}.count-pill.warn{background:#fff0d5;color:#9a5a00}.alert-grid,.queue-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.queue-grid{grid-template-columns:repeat(4,1fr)}.alert-card,.queue-card{border:1px solid var(--line);background:white;border-radius:9px;padding:11px;text-align:left;display:flex;align-items:center;justify-content:space-between;color:var(--ink)}.alert-card strong{font-size:15px}.alert-card.active{border-color:#efc477;background:#fffaf0}.alert-card.active strong{color:#a65c00}.queue-card{display:grid;gap:3px}.queue-card strong{font-size:20px;color:var(--green)}.queue-card em{font-size:10px;color:var(--muted);font-style:normal}.saved-view-bar{display:flex;align-items:center;gap:7px;flex-wrap:wrap;background:#eaf3f1;border:1px solid #d4e6e2;border-radius:9px;padding:8px 10px;margin-bottom:13px}.saved-view-bar span{display:flex}.saved-view-bar button{border:0;background:white;padding:5px 8px;font-size:11px}.saved-view-bar .remove-view{color:#a33;border-left:1px solid var(--line)}.detail-tabs{display:flex;gap:2px;border-bottom:1px solid var(--line);margin:12px 0}.detail-tabs button{border:0;background:transparent;padding:9px 12px;color:var(--muted);font-weight:700}.detail-tabs button.active{color:var(--green);border-bottom:2px solid var(--green)}.detail-tab{display:none}.detail-tab.active{display:block}

.settings-console{display:grid;gap:12px}.settings-toolbar{background:linear-gradient(135deg,#133f38,#08766a);color:white;padding:18px 20px;border-radius:11px;display:flex;justify-content:space-between;align-items:center}.settings-toolbar h2{margin:0;font-size:19px}.settings-toolbar p{margin:4px 0 0;color:#d6e9e5;font-size:12px}.settings-toolbar .eyebrow{color:#9ed8cd}.settings-toolbar .primary{background:white;color:var(--green);padding:9px 15px}.settings-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.settings-section{background:white;border:1px solid var(--line);border-radius:10px;overflow:hidden}.settings-section-head{padding:13px 15px;border-bottom:1px solid var(--line);background:#fafcfb}.settings-section-head h3{margin:0;font-size:14px}.settings-section-head p{margin:3px 0 0;color:var(--muted);font-size:11px}.settings-section-body{padding:13px;display:grid;gap:12px}.config-editor{border:1px solid var(--line);border-radius:8px;overflow:hidden}.config-editor-head{display:flex;align-items:center;justify-content:space-between;background:#f7faf9;padding:8px 10px}.config-editor-head span{font-size:10px;color:var(--muted)}.config-editor-head button,.config-row button,.inline-actions button,.tag-list button{border:1px solid var(--line);background:white;border-radius:6px;padding:5px 7px;font-size:10px}.config-rows{display:grid}.config-row{display:grid;grid-template-columns:20px 1fr auto;gap:7px;align-items:center;padding:6px 8px;border-top:1px solid var(--line)}.config-row:first-child{border-top:0}.config-row input{padding:7px 8px;border-radius:6px;font-size:11px}.product-row{grid-template-columns:20px 1fr 130px auto}.status-row{grid-template-columns:100px 1fr auto}.status-row code{font-size:10px;color:var(--muted)}.drag-handle{color:#aab5b2}.lock-mark{font-size:9px;color:var(--muted);background:#eef2f1;padding:3px 6px;border-radius:10px}.compact-form{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.compact-form label{font-size:11px}.compact-form input{padding:8px}.switch-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.switch-item{display:flex;align-items:center;justify-content:space-between;background:#f7faf9;padding:9px;border-radius:7px;font-size:11px}.switch-item input{width:auto}.inline-field{display:flex;align-items:center;gap:8px;font-size:11px}.inline-field input{width:80px}.permission-table{display:grid;grid-template-columns:130px repeat(5,1fr);align-items:center;border:1px solid var(--line);border-radius:7px;overflow:hidden}.permission-table>*{padding:8px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center;font-size:10px}.permission-table strong{text-align:left;background:#f7faf9}.permission-table input{width:auto}.inline-actions{display:flex;gap:7px}.inline-actions input{max-width:170px}.tag-list{display:flex;gap:6px;flex-wrap:wrap}.tag-list span{background:#eef5f3;border-radius:15px;padding:5px 8px;font-size:10px}.tag-list em{color:var(--muted);font-size:11px}.backup-card{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#f7faf9;border-radius:8px;padding:12px}.backup-card p{margin:4px 0;color:var(--muted);font-size:11px}.backup-card small{color:var(--muted)}
.table-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:white;border:1px solid var(--line);border-radius:8px;padding:8px 11px;margin-bottom:9px}.table-tools label{display:flex;align-items:center;gap:4px;font-size:11px;font-weight:500}.table-tools input{width:auto}
.advertising-agent-card{transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.advertising-agent-card:hover{transform:translateY(-2px);box-shadow:0 8px 22px #102c2818}.agent-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.agent-card-head span{font-size:10px;color:var(--green);background:var(--green2);padding:4px 7px;border-radius:12px;font-weight:800}.selected-agent-banner{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;background:var(--green2);border:1px solid #b9ddd6;border-radius:8px;padding:10px 12px}.selected-agent-banner small{color:var(--green)}.selected-agent-banner strong{font-size:15px}
.advertising-actions{align-items:center;gap:12px;margin-bottom:18px}.advertising-actions select{min-width:210px;height:38px}.advertising-actions .primary{min-height:38px;padding:9px 16px;white-space:nowrap}@media(max-width:700px){.advertising-actions{justify-content:stretch}.advertising-actions select,.advertising-actions .primary{width:100%}}
.pricing-note{background:#fff8e8;border:1px solid #efd49b;color:#795400;border-radius:7px;padding:9px;font-size:11px}.pricing-row{grid-template-columns:1fr 1fr auto}
.pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 4px 1px;color:var(--muted);font-size:11px}.pagination>div{display:flex;gap:4px}.pagination button{min-width:29px;height:28px;border:1px solid var(--line);background:white;border-radius:6px;color:var(--ink);font-size:11px}.pagination button.active{background:var(--green);border-color:var(--green);color:white;font-weight:800}.pagination button:disabled{background:#f3f5f4;color:#aeb7b4}.pagination.single{justify-content:flex-end}
@media(max-width:1450px){.metric-grid{grid-template-columns:repeat(4,1fr)}.agent-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:1100px){.settings-layout{grid-template-columns:1fr}.alert-grid{grid-template-columns:repeat(3,1fr)}.queue-grid{grid-template-columns:repeat(2,1fr)}.detail-grid{grid-template-columns:repeat(2,1fr)}}
