/* 승인 시안의 공통 조작 크기. 설정과 운영 화면이 같은 기준을 사용한다. */
.vp-settings-controls{--control-height:44px;--control-width:320px;--action-width:96px;--control-gap:12px;--control-radius:6px}
:is(#dlgSettings.ws-worksheet.vp-settings-controls,.service-settings) .setrow{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:center;gap:20px;border-bottom:1px solid var(--ws-line,var(--line));padding:14px 0;min-height:72px}
:is(#dlgSettings.ws-worksheet.vp-settings-controls,.service-settings) .setctl{display:flex;align-items:center;justify-content:flex-end;gap:var(--control-gap);min-width:0;flex-wrap:wrap}
:is(#dlgSettings.ws-worksheet.vp-settings-controls,.service-settings) .setctl>:is(input:not([type=checkbox],[type=range]),select,.gh-select-button){flex:0 1 var(--control-width);width:var(--control-width);max-width:100%;min-width:0;min-height:var(--control-height)}
:is(#dlgSettings.ws-worksheet.vp-settings-controls,.service-settings) .setctl:has(>.hbtn)>:is(input,select,.gh-select-button){flex:1;min-width:100px}
:is(#dlgSettings.ws-worksheet.vp-settings-controls,.service-settings) :is(.setctl,.mc-actions,.ws-account-actions,.vp-connection-actions)>.hbtn{min-width:var(--action-width);min-height:var(--control-height);flex:none}
:is(#dlgSettings.ws-worksheet.vp-settings-controls,.service-settings) :is(.ws-account-actions,.mc-actions,.vp-connection-actions){display:flex;justify-content:flex-end;gap:var(--control-gap);flex-wrap:wrap}
:is(#dlgSettings.ws-worksheet.vp-settings-controls,.service-settings) .setctl>:is(.vp-switch,.swatches){margin-left:auto}
:is(#dlgSettings.ws-worksheet.vp-settings-controls,.service-settings) .vp-switch{display:inline-flex;align-items:center;justify-content:flex-end;gap:var(--control-gap);padding:0;border:0;background:none;min-height:var(--control-height);flex:none}
:is(#dlgSettings.ws-worksheet.vp-settings-controls,.service-settings) .vp-switch-track{order:2;--switch-width:34px;--switch-height:20px}
:is(#dlgSettings.ws-worksheet.vp-settings-controls,.service-settings) .vp-switch>span:not(.vp-switch-track){min-width:30px;text-align:right}
:is(#dlgSettings.ws-worksheet.vp-settings-controls,.service-settings) .gh-select-button{border-radius:var(--control-radius);min-height:var(--control-height)}
:is(#dlgSettings.ws-worksheet.vp-settings-controls,.service-settings) .vp-range{display:flex;align-items:center;gap:var(--control-gap);width:var(--control-width);max-width:100%;margin-left:auto}
:is(#dlgSettings.ws-worksheet.vp-settings-controls,.service-settings) .vp-range>input[type=range]{appearance:none;background:none;flex:1;min-width:0;min-height:var(--control-height);padding:0;border:0;cursor:pointer}
:is(#dlgSettings.ws-worksheet.vp-settings-controls,.service-settings) .vp-range>:is(output,span){flex:0 0 40px;text-align:right;font-variant-numeric:tabular-nums}
:is(#dlgSettings.ws-worksheet.vp-settings-controls,.service-settings) .vp-range>input::-webkit-slider-runnable-track{height:4px;border-radius:2px;background:var(--ws-line,var(--line))}
:is(#dlgSettings.ws-worksheet.vp-settings-controls,.service-settings) .vp-range>input::-webkit-slider-thumb{appearance:none;width:16px;height:16px;margin-top:-6px;border:0;border-radius:50%;background:var(--ws-accent,var(--accent))}
:is(#dlgSettings.ws-worksheet.vp-settings-controls,.service-settings) .vp-range>input::-moz-range-track{height:4px;border:0;border-radius:2px;background:var(--ws-line,var(--line))}
:is(#dlgSettings.ws-worksheet.vp-settings-controls,.service-settings) .vp-range>input::-moz-range-thumb{width:16px;height:16px;border:0;border-radius:50%;background:var(--ws-accent,var(--accent))}
.vp-list-tools{display:flex;align-items:center;gap:10px;margin:12px 0;flex-wrap:wrap}
.vp-list-tools input{flex:1;min-width:140px;min-height:44px}
.vp-list-tools>.gh-select-button,.vp-list-tools>select{width:150px;flex:none;min-height:44px}
.vp-list-tools>.hbtn{min-width:96px;min-height:44px}
.vp-list-rows{min-width:0}.vp-list-rows:empty{display:none}
.vp-list-message{color:var(--ws-muted,var(--muted));font-size:12px}.vp-list-message:empty{display:none}
.vp-list-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:14px 0;font-size:12px;color:var(--ws-muted,var(--muted));font-variant-numeric:tabular-nums}
.vp-list-footer nav{display:flex;align-items:center;gap:10px;margin-left:auto}.vp-list-footer button{min-height:44px;min-width:44px}.vp-list-footer nav>span{min-width:38px;text-align:center}
.vp-list-row{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--ws-line,var(--line));min-width:0}
.vp-list-copy{flex:1;min-width:0}.vp-list-copy strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:500}.vp-list-copy small{display:block;color:var(--ws-muted,var(--muted));overflow-wrap:anywhere;font-size:11px}
.vp-list-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex:none}.vp-list-actions>:is(button,select,.gh-select-button){min-height:44px;min-width:96px}.vp-list-actions>.gh-select-button{width:116px}
@media(max-width:640px){:is(#dlgSettings.ws-worksheet.vp-settings-controls,.service-settings) .setrow{grid-template-columns:1fr;gap:10px}:is(#dlgSettings.ws-worksheet.vp-settings-controls,.service-settings) .setctl>:is(input:not([type=checkbox],[type=range]),select,.gh-select-button),:is(#dlgSettings.ws-worksheet.vp-settings-controls,.service-settings) .vp-range{width:100%;flex-basis:100%}:is(#dlgSettings.ws-worksheet.vp-settings-controls,.service-settings) .setctl:has(>.hbtn)>:is(input,select,.gh-select-button){flex:1 1 140px}.vp-list-tools>.gh-select-button,.vp-list-tools>select{width:120px}.vp-list-row{flex-wrap:wrap}.vp-list-copy{min-width:calc(100% - 60px)}.vp-list-actions{margin-left:auto}}

.vp-operations-window{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;background:var(--ws-panel);color:var(--ws-ink)}.vp-operations-window[open]{display:flex;flex-direction:column}.vp-operations-window>header{position:static;display:flex;align-items:center;flex:none;height:52px;width:auto;margin:0;padding:4px 12px;border:0;border-bottom:1px solid var(--ws-line);background:var(--ws-panel);box-shadow:none}.vp-operations-window>header button{display:inline-flex;align-items:center;gap:6px;min-height:44px}.vp-operations-window>iframe{display:block;flex:1;min-height:0;width:100%;border:0;background:var(--ws-bg)}

.vp-operations-window>header button{border:0;background:none}
#dlgSettings.ws-worksheet.vp-settings-controls .setrow>.hbtn{justify-self:end;min-width:96px;min-height:44px}
#dlgSettings.ws-worksheet.vp-settings-controls #wsTrashEmptyAction .hbtn{margin-right:0!important}
#dlgSettings.ws-worksheet.vp-settings-controls #wsUIFontCard .setctl>:is(small,.ws-font-preview,#wsUIFontStatus){width:320px;max-width:100%;flex-basis:100%;margin-left:auto;text-align:right}
#dlgSettings.ws-worksheet.vp-settings-controls .vp-switch-state::after{content:'꺼짐'}
#dlgSettings.ws-worksheet.vp-settings-controls .vp-switch input:checked~.vp-switch-state::after{content:'켜짐'}
#dlgSettings.ws-worksheet.vp-settings-controls .vp-switch:has(input){position:relative;cursor:pointer;min-width:96px}
#dlgSettings.ws-worksheet.vp-settings-controls .vp-switch input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;margin:0;z-index:1}
#dlgSettings.ws-worksheet.vp-settings-controls .vp-connection-method{display:flex;justify-content:space-between;align-items:center;gap:12px}
#dlgSettings.ws-worksheet.vp-settings-controls .vp-connection-method>div:first-child{flex:1;min-width:0}
#dlgSettings.ws-worksheet.vp-settings-controls .vp-connection-manage-menu{justify-content:flex-end}
#dlgSettings.ws-worksheet.vp-settings-controls :is(.vp-connection-manage-menu button,.vp-connections .hbtn,#wsColorsApply,#wsColorsReset,#btnLogout){min-height:44px;min-width:96px}
#dlgSettings.ws-worksheet.vp-settings-controls .ws-color-fields{display:block}
#dlgSettings.ws-worksheet.vp-settings-controls .ws-color-field{display:grid;grid-template-columns:minmax(0,1fr) 44px 264px;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--ws-line)}
#dlgSettings.ws-worksheet.vp-settings-controls .ws-color-field input{min-width:0;width:100%;height:44px}
#dlgSettings.ws-worksheet.vp-settings-controls .ws-color-field input[type=color]{padding:4px;cursor:pointer}
#dlgSettings.ws-worksheet.vp-settings-controls .ws-color-custom-head,#dlgSettings.ws-worksheet.vp-settings-controls .ws-color-save{display:flex;justify-content:space-between;align-items:center;gap:12px}
#dlgSettings.ws-worksheet.vp-settings-controls .ws-color-custom-head .hbtn,#dlgSettings.ws-worksheet.vp-settings-controls .ws-color-save .hbtn{margin-left:auto}
@media(max-width:640px){#dlgSettings.ws-worksheet.vp-settings-controls .ws-color-field{grid-template-columns:44px minmax(0,1fr)}#dlgSettings.ws-worksheet.vp-settings-controls .ws-color-field>span{grid-column:1/-1}#dlgSettings.ws-worksheet.vp-settings-controls .vp-connection-method{flex-wrap:wrap}#dlgSettings.ws-worksheet.vp-settings-controls .vp-connection-method>div:first-child{flex-basis:100%}#dlgSettings.ws-worksheet.vp-settings-controls .vp-connection-method>.hbtn{margin-left:auto}}

:is(#dlgSettings.ws-worksheet.vp-settings-controls,.service-settings) .setctl{width:100%;max-width:none;justify-self:end}
#dlgSettings.ws-worksheet.vp-settings-controls #wsUIFontCard .setctl>:is(small,.ws-font-preview,#wsUIFontStatus){max-width:320px}
#dlgSettings.ws-worksheet.vp-settings-controls .setrow:has(.vp-range){align-items:start}
#dlgSettings.ws-worksheet.vp-settings-controls .setrow:has(.vp-range)>.setlbl{padding-top:12px}

.vp-operations-window>header .hbtn{border:0!important;background:transparent!important;box-shadow:none!important}

#dlgSettings.ws-worksheet.vp-settings-controls .fb-chip{min-width:44px;min-height:44px}

#dlgSettings.ws-worksheet.vp-settings-controls .ai-service-actions{display:flex;justify-content:flex-end;gap:12px;flex-wrap:wrap}
#dlgSettings.ws-worksheet.vp-settings-controls .ai-service-actions .hbtn{min-width:96px;min-height:44px}

@media(max-width:640px){#dlgSettings.ws-worksheet.vp-settings-controls .ws-worksheet-bar>span{display:none}#dlgSettings.ws-worksheet.vp-settings-controls .ws-worksheet-bar>button{flex:none;white-space:nowrap;min-height:44px}}
