.cv-annotations{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:18}.cv-annotations svg{position:absolute;inset:0}.cv-comment-pin{position:absolute;transform:translate(-50%,-50%);width:30px;height:30px;border:2px solid white;border-radius:50% 50% 50% 3px;background:#8b5cf6;color:white;box-shadow:0 1px 4px #0002;pointer-events:auto;font:500 14px Inter,sans-serif;cursor:pointer}.cv-comment-panel,.cv-comment-description{position:absolute;z-index:80;background:white;border:1px solid #eee;border-radius:14px;box-shadow:0 8px 22px #0001}.cv-comment-panel{width:320px;padding:12px;box-sizing:border-box}.cv-comment-head,.cv-comment-actions{display:flex;align-items:center;gap:8px}.cv-comment-head select{max-width:245px;border:1px solid #eee;border-radius:8px;padding:5px 8px;font:inherit;font-size:12px;background:white}.cv-comment-head button{margin-left:auto;border:0;background:transparent;color:#aaa;cursor:pointer}.cv-comment-panel textarea{width:100%;min-height:58px;max-height:170px;resize:vertical;border:0;outline:0;font:14px/1.6 inherit;padding:8px 0;background:transparent}.cv-comment-panel textarea::placeholder{color:#b8b8b8}.cv-comment-actions{justify-content:flex-end}.cv-comment-actions button{border:1px solid #eee;border-radius:8px;padding:7px 12px;font:12px inherit;background:white;cursor:pointer}.cv-comment-actions [data-comment-add]{color:white;background:#282828;border-color:#282828}.cv-comment-actions button:disabled{background:#f5f5f5;border-color:#eee;color:#ccc;cursor:default}.cv-comment-description button{padding:10px 16px;border:0;background:transparent;color:#aaa;cursor:pointer}.cv-comment-tools,.cv-pen-tools{position:absolute;bottom:75px;left:50%;transform:translateX(-50%);z-index:70;display:flex;align-items:center;gap:5px;padding:6px;background:white;border:1px solid #eee;border-radius:14px;box-shadow:0 1px 4px #0001}.cv-comment-tools button{width:32px;height:32px;border:0;background:white;border-radius:8px;font-size:20px;cursor:pointer}.cv-comment-tools button.active{background:#eee}.cv-pen-tools input[type=color]{border:0;background:white;width:32px;height:28px;padding:0}.cv-pen-tools label{display:flex;align-items:center;font-size:12px;gap:4px;color:#555}.cv-pen-tools input[type=number]{width:38px;border:0;font-size:13px}
.cv-studio-menu{position:absolute;bottom:68px;z-index:80;background:white;border:1px solid #eee;box-shadow:0 6px 20px #0001;border-radius:14px;padding:6px;width:220px}.cv-studio-menu button{display:flex;align-items:center;width:100%;border:0;border-radius:8px;background:white;font:13px/1.4 inherit;padding:9px;gap:12px;cursor:pointer}.cv-studio-menu button:hover,.cv-studio-menu button.active{background:#f3f3f3}.cv-studio-menu b{width:18px;font-size:19px;font-weight:400}.cv-studio-menu small{margin-left:auto;color:#aaa}.cv-studio-menu hr{border:0;border-top:1px solid #eee;margin:4px}
.cv-studio-bar{position:absolute;z-index:40;display:flex;align-items:center;gap:2px;background:white;border:1px solid #eee;border-radius:15px;padding:6px;box-shadow:0 1px 5px #0001;max-width:calc(100% - 8px);font:12px Inter,"PingFang SC",sans-serif}.cv-studio-bar button{border:0;background:transparent;padding:7px 9px;border-radius:8px;white-space:nowrap;cursor:pointer;font:inherit;color:#333}.cv-studio-bar button:hover,.cv-studio-bar button.active{background:#f0f0f0}.cv-studio-bar label{display:flex;align-items:center;gap:4px;white-space:nowrap;color:#888;padding:0 4px}.cv-studio-bar input{width:50px;border:0;background:transparent;font:12px inherit;color:#333}.cv-studio-bar select{border:0;background:white;max-width:95px;font:inherit}.cv-color-dot{width:20px;height:20px;display:block;border-radius:50%;border:1px solid #ddd;background-image:linear-gradient(45deg,#ddd 25%,transparent 25%),linear-gradient(-45deg,#ddd 25%,transparent 25%);background-size:8px 8px}.cv-color-dot.stroke{border:4px solid #444;width:14px;height:14px}.cv-studio-pop{position:absolute;z-index:90;width:272px;max-height:420px;overflow:auto;padding:12px;border-radius:16px;border:1px solid #eee;background:white;box-shadow:0 8px 22px #0002;font:12px/1.5 Inter,"PingFang SC",sans-serif;box-sizing:border-box}.cv-studio-pop header{display:flex;align-items:center;justify-content:space-between;padding-bottom:12px;font-size:13px}.cv-studio-pop header button{border:0;background:white;font-size:20px;cursor:pointer}.cv-studio-pop input,.cv-studio-pop select{font:inherit;border:0;border-radius:8px;background:#f5f5f5;padding:7px;box-sizing:border-box;max-width:100%}.cv-studio-pop button{font:inherit;border:0;border-radius:8px;background:white;padding:7px 9px;cursor:pointer}.cv-studio-pop button:hover,.cv-studio-pop button.active{background:#f1f1f1}.cv-style-options{display:flex;align-items:center;gap:6px;margin:8px 0}.cv-style-options>*{flex:1;min-width:0}.cv-style-options input{width:100%}.cv-style-options [data-opacity]{max-width:50px}.cv-style-font input{width:100%;margin-bottom:12px}.cv-font-list button{display:block;width:100%;font-size:22px;text-align:left;margin-bottom:3px}.cv-studio-pop button[hidden]{display:none}.cv-style-weight>button,.cv-style-fontSize>button{display:block;text-align:left;width:100%}.cv-advanced-text{display:grid;grid-template-columns:1fr 1fr;gap:8px}.cv-advanced-text label{display:flex;flex-direction:column;gap:4px}.cv-advanced-text input,.cv-advanced-text select{width:100%}.cv-color-square{height:155px;position:relative;border-radius:8px;background-image:linear-gradient(to top,#000,transparent),linear-gradient(to right,#fff,transparent);touch-action:none;cursor:crosshair}.cv-color-square i{position:absolute;width:12px;height:12px;border:2px solid white;box-shadow:0 0 0 1px #bbb;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}.cv-studio-pop input[type=range]{display:block;width:100%;height:15px;padding:0;margin:12px 0;accent-color:#888}.cv-color-hue{background:linear-gradient(to right,red,#ff0,#0f0,#0ff,#00f,#f0f,red);border-radius:9px;appearance:none}.cv-color-alpha{background:repeating-conic-gradient(#ccc 0 25%,#eee 0 50%) 0/8px 8px;border-radius:9px}.cv-color-presets{display:flex;gap:8px;justify-content:space-between;margin:10px 0}.cv-color-presets button{width:27px;height:27px;border:1px solid #eee;border-radius:50%;padding:0}.cv-text-edit{background:transparent!important}
.cv-rich-editor{white-space:pre-wrap;overflow-wrap:anywhere;min-height:86px;max-height:280px;overflow:auto;outline:0;padding:4px;line-height:1.9;font-size:14px;color:#333}.cv-rich-editor.empty:before{content:attr(data-placeholder);color:#bbb;pointer-events:none}.cv-inline-ref{display:inline-flex;vertical-align:middle;align-items:center;gap:4px;border:1px solid #e5e5e5;border-radius:8px;padding:0 4px;background:#fafafa;margin:0 2px;max-width:230px;height:27px;line-height:1.4;white-space:nowrap;user-select:all}.cv-inline-ref img{width:20px;height:20px;border-radius:4px;object-fit:cover;user-select:none}.cv-inline-ref>span{max-width:165px;text-overflow:ellipsis;overflow:hidden;font-size:12px}.cv-comment-number{display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;border-radius:50%;background:#a78bfa;color:white;font:500 11px Inter,sans-serif}.cv-inline-remove{border:0!important;background:transparent!important;padding:0!important;color:#999!important;font-size:12px;width:12px;height:18px;cursor:pointer}.cv-input-content #cvAgentText[hidden]{display:none!important}.cv-input-content #cvAgentAtts{display:none!important}.cv-root #cvChatParams,.cv-root #cvChatModel{display:none}.cv-root[data-chat-mode=image] #cvChatParams,.cv-root[data-chat-mode=image] #cvChatModel{display:flex}.cv-root[data-chat-mode=image] #cvChatSettings{display:none}.cv-root #cvChatParams{white-space:nowrap;font-size:11px;background:#f5f5f5;border-radius:99px;padding:6px}.cv-root #cvChatModel{font-size:11px;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:140px}.cv-root #cvChatModel span{overflow:hidden;text-overflow:ellipsis}.cv-chat-preferences{padding:14px}.cv-model-preference-head{display:flex;align-items:center;justify-content:space-between;font-size:13px}.cv-model-tabs{display:flex;gap:4px;border-radius:10px;background:#f5f5f5;padding:3px;margin:14px 0}.cv-model-tabs button{flex:1;border:0;border-radius:8px;background:transparent;padding:7px;cursor:pointer;color:#888}.cv-model-tabs button.active{background:white;color:#333}.cv-model-card{display:block;width:100%;border:0;background:white;padding:12px 6px;text-align:left;cursor:pointer;border-radius:8px}.cv-model-card:hover,.cv-model-card.active{background:#f7f7f7}.cv-model-card strong{font-size:13px;font-weight:500;display:block}.cv-model-card small{color:#999;display:block;font-size:11px;line-height:1.6;margin-top:5px}.cv-model-card:disabled{opacity:.5;cursor:default}.cv-chat-models{padding:6px}.cv-chat-models .cv-model-card{padding:9px}.cv-chat-dimensions{display:flex;gap:8px;align-items:center}.cv-chat-dimensions label{background:#f5f5f5;border-radius:8px;padding:7px;display:flex;gap:4px;color:#888}.cv-chat-dimensions input{width:70px;border:0;background:transparent;font:12px inherit}.cv-chat-ratios button{display:flex;flex-direction:column;align-items:center;gap:6px}.cv-ratio-icon{display:block;border:1.5px solid #888;border-radius:3px;box-sizing:border-box}.cv-chat-settings .cv-chat-counts{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.cv-chat-models{max-width:300px;left:auto;right:10px}
.cv-frame-caption{position:absolute;display:flex;justify-content:space-between;gap:12px;color:#4285ff;font:12px -apple-system,"PingFang SC",sans-serif;white-space:nowrap;pointer-events:none;overflow:hidden}
.cv-inline-ref .cv-reference-icon{width:20px;text-align:center;color:#85859b}
.cv-root .cv-chat-toolbar #cvChatMode{flex-shrink:0;white-space:nowrap;padding:4px 2px;gap:3px}.cv-root .cv-chat-toolbar #cvChatParams{flex-shrink:0;padding:6px 4px;font-size:10px}.cv-root .cv-chat-toolbar #cvChatModel{flex:1;min-width:16px;padding:4px 2px;font-size:10px}.cv-root .cv-chat-toolbar #cvAgentImg{flex-shrink:0;width:24px;padding:4px 0}.cv-root .cv-chat-toolbar #cvAgentSend{flex-shrink:0}.cv-root .cv-chat-toolbar .cv-chat-caret{margin-left:0}
/* Text editors use world-sized boxes transformed with the canvas. Keep native
   paragraph wrapping, font shaping and insets aligned with CVStudio.paintText. */
.cv-root .cv-text-edit{box-sizing:border-box;border:0;padding:4px;min-width:0;min-height:0;max-width:none;max-height:none;border-radius:0;white-space:pre-wrap;word-break:break-all;overflow-wrap:anywhere;font-kerning:none;font-variant-ligatures:none;overflow:hidden;resize:none;transform-origin:0 0;}
.cv-studio-bar button{display:inline-flex;align-items:center;justify-content:center;gap:5px}.cv-type-icon{flex-shrink:0;vertical-align:middle}.cv-studio-bar .cv-font-current{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;justify-content:flex-start}.cv-studio-bar .cv-font-current .cv-type-icon{margin-left:auto}.cv-font-state{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#92929f;font-size:10px}.cv-font-state.is-error{color:#b13b46}.cv-studio-pop button:disabled{opacity:.45;cursor:default}.cv-studio-pop button[aria-pressed=true],.cv-font-list [aria-selected=true]{background:#eeeef5;color:#272333}.cv-studio-pop button:focus-visible{outline:2px solid #8b80ff;outline-offset:-2px}.cv-style-font{width:310px;overflow:hidden}.cv-font-picker-head{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.cv-font-picker-head input{flex:1 1 160px;margin-bottom:0}.cv-font-picker-head select{flex:0 0 112px}.cv-font-list{height:280px;overflow:auto;margin-top:10px;overscroll-behavior:contain}.cv-font-list button{display:flex;flex-direction:column;gap:3px;min-height:62px;margin:0;text-align:left;width:100%;font-size:13px}.cv-font-list .cv-font-name{font-size:12px;color:#51515e}.cv-font-preview{font:11px sans-serif;color:#999}.cv-font-preview.is-loaded{font-size:23px;color:#24242b;line-height:1.4}.cv-font-message{font-size:11px;color:#85808c;line-height:1.5;min-height:16px;margin-top:8px;overflow-wrap:anywhere}.cv-font-family-note{font-size:11px;color:#999;margin:0 0 6px}.cv-style-weight [data-weight],.cv-style-weight [data-font-italic]{display:block;width:100%;text-align:left}.cv-advanced-text.cv-type-panel{display:flex;flex-direction:column;gap:8px}.cv-type-panel .cv-type-number{display:flex;flex-direction:row;align-items:center;gap:9px;color:#8a8793}.cv-type-number input{width:calc(100% - 78px);margin-left:auto;text-align:right}.cv-type-panel .cv-type-row{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:30px;color:#8a8793}.cv-type-options{display:flex;gap:4px}.cv-type-options button,.cv-type-row>[data-type-clip]{width:34px;height:30px;display:flex;align-items:center;justify-content:center;padding:5px 8px;color:#5e5a68}.cv-style-align .cv-style-options button{display:flex;align-items:center;justify-content:center;gap:8px}.cv-studio-menu b .cv-type-icon{display:block}.cv-studio-bar button[hidden]{display:none}
