/* 자동 생성 — .tools/landing/src/worldview/appcss.php (앱 1.0.3 css 그대로, 범위만 좁힘). 직접 고치지 말 것 */
/* base.css */
.wv-settings {--font-size: 12px; --bg: #ffffff; --surface: #f5f5f7; --border: #e0e0e0; --text: #1a1a1a; --text-muted: #888888; --btn-bg: #ffffff; --accent: #3b82f6; --accent-contrast: #ffffff; --nav-on-bg: #ddeefc; --nav-on-border: #a8cce6; --window-border-active: #3d84dd; --window-border-inactive: #6d6d6d; --popup-shadow: 0 8px 30px rgb(0 0 0 / 30%); --tooltip-bg: #666666; --alert-bg: #fde8e8; --alert-text: #9b1c1c;}
.wv-settings * {box-sizing: border-box; margin: 0; padding: 0;}
.wv-settings, .wv-settings .wv-app {height: 100%;}
.wv-settings {font-family: var(--font-family); font-size: var(--font-size); color: var(--text); background: var(--bg); line-height: 1.4;}
.wv-settings button, .wv-settings select {font-family: inherit; font-size: inherit; color: inherit;}
.wv-settings .wv-app {display: flex; flex-direction: column; border-top: 1px solid var(--window-border-active); background: var(--bg);}
.wv-settings .hidden {display: none;}
.wv-settings h2, .wv-settings h3 {font-size: inherit; font-weight: 600;}
.wv-settings hr {border: none; border-top: 1px solid var(--border);}
.wv-settings .muted {color: var(--text-muted);}
.wv-settings .btn {padding: 7px 14px; text-align: center; border: 1px solid var(--border); border-radius: 8px; background: var(--btn-bg); color: var(--text); transition: background 120ms ease, border-color 120ms ease;}
.wv-settings .btn:hover:not(:disabled) {border-color: var(--text-muted);}
.wv-settings .btn:disabled {opacity: 0.5;}
.wv-settings select {height: 32px; padding: 6px 10px; border: 1px solid var(--border); border-radius: 8px; background: var(--btn-bg); color: var(--text); transition: border-color 120ms ease;}
.wv-settings select:hover:not(:disabled) {border-color: var(--text-muted);}
.wv-settings select:focus {border-color: var(--accent); outline: none;}
.wv-settings select:disabled {opacity: 0.5;}
.wv-settings .check {display: flex; align-items: center; gap: 8px; color: var(--text); line-height: 1.4;}
.wv-settings input[type=checkbox] {width: 16px; height: 16px; flex-shrink: 0; margin: 0; padding: 0; border: 1px solid var(--text-muted); border-radius: 4px; background: var(--btn-bg); color: var(--accent-contrast); transition: background 120ms ease, border-color 120ms ease;}
.wv-settings input[type=checkbox]:checked {background: var(--accent); border-color: var(--accent);}
.wv-settings input[type=checkbox]:disabled {opacity: 0.5;}
/* settings.css */
.wv-settings {--select-w: 170px;}
.wv-settings .settings {height: 100%;}
.wv-settings .settings .main {flex: 1; display: flex; min-height: 0;}
.wv-settings .settings .sidebar {width: 120px; flex-shrink: 0; display: flex; flex-direction: column; background: var(--bg); border-inline-end: 1px solid var(--border);}
.wv-settings .settings .cats {flex: 1; display: flex; flex-direction: column; gap: 12px; padding: 8px 7px 8px 8px; overflow-y: auto;}
.wv-settings .settings .cat {height: 32px; flex-shrink: 0; border: 1px solid transparent; border-radius: 5px; background: transparent; color: var(--text); white-space: nowrap;}
.wv-settings .settings .cat:hover, .wv-settings .settings .cat.on {background: var(--nav-on-bg); border-color: var(--nav-on-border);}
.wv-settings .settings .side-actions {display: flex; flex-direction: column; padding: 8px 7px 12px 8px;}
.wv-settings .settings .content {flex: 1; min-width: 0; display: flex; flex-direction: column;}
.wv-settings .settings .pane-head {height: 56px; flex-shrink: 0; padding: 18px 24px 0; border-bottom: 1px solid var(--border);}
.wv-settings .settings .pane-head .pane-title {font-size: 19px; font-weight: 700; line-height: 25px;}
.wv-settings .settings .panes {flex: 1; min-height: 0; overflow-y: auto; padding: 16px 24px; display: flex; flex-direction: column;}
.wv-settings .settings .pane {display: flex; flex-direction: column; gap: 12px;}
.wv-settings .settings .pane[data-pane=assoc] {gap: 14px;}
.wv-settings .settings .pane.about {flex: 1; min-height: 0;}
.wv-settings .settings .app-id {display: flex; align-items: center; gap: 14px;}
.wv-settings .settings .app-icon {width: 48px; height: 48px;}
.wv-settings .settings .app-name {font-size: 19px; font-weight: 700;}
.wv-settings .settings .link {color: var(--accent); cursor: pointer;}
.wv-settings .settings .link:hover {text-decoration: underline;}
.wv-settings .settings .notices {flex: 1; min-height: 120px; margin: 0; padding: 8px 10px; overflow: auto; border: 1px solid var(--border); border-radius: 4px; white-space: pre-wrap; font-size: 12px; line-height: 1.4; color: var(--text-muted);}
.wv-settings .settings .pane.hidden {display: none;}
.wv-settings .settings .row {display: flex; align-items: center; justify-content: space-between; gap: 12px; height: 28px;}
.wv-settings .settings .row.hidden {display: none;}
.wv-settings .settings .row .label {white-space: nowrap;}
.wv-settings .settings select {width: var(--select-w);}
.wv-settings .settings .check.all {padding-bottom: 10px; border-bottom: 1px solid var(--border); font-weight: 600;}
.wv-settings .settings .ext-grid {display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 8px 12px;}
.wv-settings .settings .ext-row {display: flex; align-items: center; gap: 6px; min-width: 0;}
.wv-settings .settings .ext-row .name {min-width: 3.4em;}
.wv-settings .settings .tag {padding: 0 6px; border: 1px solid transparent; border-radius: 3px; background: var(--alert-bg); color: var(--alert-text); font-size: 11px; line-height: 1.6; white-space: nowrap;}
.wv-settings .settings .tag:hover {border-color: currentColor;}
.wv-settings .settings .tag.off {visibility: hidden;}
.wv-settings .settings .note {padding: 8px 10px; border-inline-start: 2px solid var(--border); color: var(--text-muted); font-size: 12px; line-height: 1.5;}
.wv-settings .settings .note.warn {border-inline-start: 2px solid var(--alert-text); color: var(--alert-text);}
.wv-settings .settings .muted {color: var(--text-muted);}
.wv-settings .settings .hotkey {width: var(--select-w); height: 32px; padding: 6px 10px; border: 1px solid var(--border); border-radius: 8px; background: var(--btn-bg); color: var(--text); font: inherit; transition: border-color 120ms ease;}
.wv-settings .settings .hotkey:hover {border-color: var(--text-muted);}
.wv-settings .settings .hotkey:focus {border-color: var(--accent); outline: none;}
.wv-settings .settings .hotkey.capturing {color: var(--text-muted);}
.wv-settings .settings .key-note {color: var(--alert-text);}
.wv-settings .settings .cat, .wv-settings .settings .btn, .wv-settings .settings select, .wv-settings .settings input[type=checkbox], .wv-settings .settings .tag, .wv-settings .settings .hotkey {cursor: pointer;}
