#ui-copy-editor-toggle { position: fixed; z-index: 1400; right: max(16px, env(safe-area-inset-right)); bottom: max(16px, env(safe-area-inset-bottom)); min-width: 104px; min-height: 48px; border: 1px solid #61d6b4; border-radius: 999px; background: #0f5f50; color: #fff; box-shadow: 0 12px 32px rgb(0 0 0 / 45%); font-weight: 800; } #ui-copy-editor-panel { position: fixed; z-index: 1390; inset: 0 0 0 auto; width: min(420px, calc(100vw - 24px)); overflow: auto; padding: 18px 18px calc(84px + env(safe-area-inset-bottom)); border-left: 1px solid #374151; background: #0d1118; color: #f5f7fb; box-shadow: -16px 0 48px rgb(0 0 0 / 55%); font: 14px/1.45 system-ui, sans-serif; } #ui-copy-editor-panel[hidden] { display: none; } .ui-copy-editor-header, .ui-copy-editor-modes, .ui-copy-editor-tools, .ui-copy-list-heading { display: flex; align-items: center; justify-content: space-between; gap: 8px; } .ui-copy-editor-header { margin-bottom: 12px; } .ui-copy-editor-header strong { display: block; font-size: 18px; } .ui-copy-editor-header span { color: #9ca3af; font-size: 12px; } .ui-copy-editor-header button { min-width: 44px; min-height: 44px; font-size: 24px; } .ui-copy-editor-modes { margin-bottom: 10px; } .ui-copy-editor-modes button { flex: 1; min-height: 42px; } .ui-copy-editor-modes button.active { border-color: #61d6b4; background: #173b35; color: #8ff2d6; } .ui-copy-save-status { min-height: 38px; margin: 8px 0; padding: 9px 10px; border-radius: 8px; background: #171d27; color: #b9c2d0; } .ui-copy-save-status[data-state="saved"] { color: #72e4c4; } .ui-copy-save-status[data-state="pending"] { color: #ffd27a; } .ui-copy-save-status[data-state="error"], .ui-copy-save-status[data-state="conflict"] { color: #ff9b9b; } .ui-copy-editor-tools { margin-bottom: 12px; } .ui-copy-editor-tools button, .ui-copy-editor-tools a { min-height: 40px; padding: 9px 12px; border: 1px solid #394252; border-radius: 8px; background: #171d27; color: #f5f7fb; text-decoration: none; } .ui-copy-search, .ui-copy-selected-form label { display: grid; gap: 6px; margin: 10px 0; } .ui-copy-search input, .ui-copy-selected-form input, .ui-copy-selected-form textarea, .ui-copy-selected-form select { width: 100%; min-height: 42px; box-sizing: border-box; border: 1px solid #3b4658; border-radius: 8px; background: #111722; color: #fff; padding: 9px 10px; font: inherit; } .ui-copy-selected-form textarea { resize: vertical; } .ui-copy-list-heading { margin: 14px 0 8px; color: #cdd5e1; } .ui-copy-list { display: grid; gap: 6px; max-height: 40vh; overflow: auto; padding-right: 4px; } .ui-copy-list-item { display: grid; gap: 3px; width: 100%; min-height: 48px; padding: 9px 10px; border: 1px solid #293242; border-radius: 8px; background: #141a24; color: #f5f7fb; text-align: left; } .ui-copy-list-item.active { border-color: #61d6b4; background: #17332f; } .ui-copy-list-text { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .ui-copy-list-meta { color: #8e9aab; font-size: 11px; } .ui-copy-selected-form { margin-top: 14px; padding: 14px; border: 1px solid #344054; border-radius: 10px; background: #141a24; } .ui-copy-selected-form h3 { margin: 0 0 4px; font-size: 16px; overflow-wrap: anywhere; } .ui-copy-selected-form > p { margin: 4px 0 8px; color: #9ca8b8; overflow-wrap: anywhere; } .ui-copy-form-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; } .ui-copy-form-actions > button { flex: 1; min-height: 44px; } .ui-copy-confirm-button { min-height: 46px; border-color: #61d6b4 !important; background: #0f5f50 !important; color: #fff !important; font-weight: 800; } .ui-copy-danger-button { width: 100%; min-height: 44px; margin-top: 10px; border: 1px solid #ff7777 !important; background: #552126 !important; color: #ffd6d6 !important; font-weight: 800; } .ui-copy-danger-button:disabled { opacity: .6; } .ui-copy-delete-confirmation { margin-top: 10px; padding: 12px; border: 1px solid #ff7777; border-radius: 8px; background: #30171b; } .ui-copy-delete-confirmation[hidden] { display: none; } .ui-copy-delete-confirmation p { margin: 6px 0; color: #ffd6d6; } .ui-copy-form-error { margin: 8px 0 !important; padding: 9px 10px; border-left: 3px solid #ff7777; border-radius: 5px; background: #30171b; color: #ffb2b2 !important; } .ui-copy-form-error[hidden] { display: none; } .ui-copy-checkbox { grid-template-columns: auto 1fr !important; align-items: center; } .ui-copy-checkbox input { width: 22px; min-height: 22px; } .ui-copy-placeholder-note { color: #ffd27a !important; } [data-ui-copy-editor-mode="select"] [data-ui-copy-id] { cursor: crosshair !important; } [data-ui-copy-editor-mode="select"] [data-ui-copy-id]:hover, .ui-copy-selected { outline: 3px solid #61d6b4 !important; outline-offset: 3px; border-radius: 3px; } .ui-copy-anchor-candidate { outline: 2px dashed #d8a8ff !important; outline-offset: 3px; cursor: crosshair !important; } .ui-copy-anchor-candidate:hover { outline-style: solid !important; background-image: linear-gradient(rgb(126 71 177 / 10%), rgb(126 71 177 / 10%)); } .ui-copy-custom-insertion { box-sizing: border-box; max-width: min(100%, 58rem); margin: 10px auto; padding: 10px 12px; border-left: 3px solid #61d6b4; border-radius: 6px; background: #151c26; color: #e7edf6; overflow-wrap: anywhere; white-space: pre-wrap; } @media (max-width: 40rem) { #ui-copy-editor-panel { inset: auto 0 0 0; width: auto; max-height: min(78vh, 720px); padding: 14px 14px calc(78px + env(safe-area-inset-bottom)); border-top: 1px solid #374151; border-left: 0; border-radius: 18px 18px 0 0; box-shadow: 0 -16px 48px rgb(0 0 0 / 55%); } .ui-copy-list { max-height: 24vh; } html[data-ui-copy-editor-selection="false"][data-ui-copy-editor-mode="select"] #ui-copy-editor-panel, html[data-ui-copy-editor-selection="false"][data-ui-copy-editor-mode="insert"] #ui-copy-editor-panel { max-height: 172px; padding-bottom: calc(12px + env(safe-area-inset-bottom)); overflow: hidden; } html[data-ui-copy-editor-selection="false"][data-ui-copy-editor-mode="select"] #ui-copy-editor-panel :is(.ui-copy-editor-tools, .ui-copy-search, .ui-copy-list-heading, .ui-copy-list, .ui-copy-selected-form), html[data-ui-copy-editor-selection="false"][data-ui-copy-editor-mode="insert"] #ui-copy-editor-panel :is(.ui-copy-editor-tools, .ui-copy-search, .ui-copy-list-heading, .ui-copy-list, .ui-copy-selected-form) { display: none !important; } } @media (prefers-reduced-motion: no-preference) { #ui-copy-editor-toggle { transition: transform 120ms ease; } #ui-copy-editor-toggle:active { transform: scale(.97); } }