.app-visual-dialog{width:min(1180px,calc(100vw - 40px));max-width:none;height:min(860px,calc(100dvh - 40px));max-height:none;padding:0;overflow:hidden;background:#fff}
.app-visual-dialog[open]{display:flex;flex-direction:column}.app-visual-dialog .app-editor-head{padding:13px 20px;flex-shrink:0;border-bottom:1px solid var(--line);gap:14px}.app-visual-dialog .app-editor-head h3{font-size:18px}.app-visual-dialog .app-sections{padding:8px 18px;margin:0;border-bottom:1px solid var(--line);gap:6px;flex-shrink:0;overflow-x:auto}.app-visual-dialog .app-sections button{font-size:12px;white-space:nowrap;min-height:36px}.app-visual-dialog .app-editor-body{flex:1;min-height:0;overflow:auto;padding:0}.app-visual-dialog .app-editor-footer{padding:12px 20px;flex-shrink:0;border-top:1px solid var(--line);background:#fff;gap:10px;min-height:58px}.app-visual-dialog .app-editor-footer button{min-height:38px}.app-visual-dialog .app-editor-footer .primary{padding:10px 20px}.app-visual-dialog .schedule-layout,.app-visual-dialog .carousel-launch,.app-visual-dialog #app-journal{padding:20px}
.cv-picker-head{padding:22px 26px!important;align-items:flex-start}.cv-picker-head small{font-size:10px;letter-spacing:1.4px;color:var(--green);font-weight:700}.cv-picker-head h2{margin:6px 0;font-size:24px}.cv-picker-head p{color:var(--muted);font-size:13px;line-height:1.6}.cv-templates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:24px;flex:1;min-height:0;overflow:auto;background:#f7faf8}.cv-templates>article{display:flex;flex-direction:column;gap:12px;padding:16px;background:white;border:1px solid #dce7e0;border-radius:16px}.cv-templates h3{font-size:17px}.cv-templates p{font-size:12px;color:var(--muted);line-height:1.6}.cv-templates>article>button{margin-top:auto;min-height:44px}.cv-picker-footer{padding:15px 24px;font-size:12px;color:var(--muted);flex-shrink:0}
.cv-demo{background:#e7eee9;border-radius:12px;padding:13px;min-height:220px;overflow:hidden}.cv-demo-chat{display:flex;align-items:center;gap:7px;font-size:12px;margin-bottom:8px}.cv-demo-chat>small{margin-left:auto;color:#647c6d;font-size:10px}.cv-demo-avatar{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:#2f846f;color:white;flex-shrink:0}.cv-demo-stage{position:relative;height:195px}.cv-demo-card{position:absolute;inset:0;background:#fff;border-radius:10px;padding:12px;box-shadow:0 2px 8px #23432e0c;display:flex;flex-direction:column;gap:7px;animation:cv-card-switch 8s infinite}.cv-demo-card strong{font-size:12px}.cv-demo-card p{font-size:11px;color:#344c40;line-height:1.55;margin:0}.cv-demo-card small{font-size:10px;color:#387e69;margin-top:auto}.cv-demo-card-1{animation-delay:-4s}.cv-demo-picture{height:67px;background:linear-gradient(140deg,#f3e5cf,#d6e7df);border-radius:6px;display:grid;place-items:center;color:#769886;font-size:9px}.cv-demo-picture span{font-size:25px}.cv-demo-dots{text-align:center;font-size:10px;color:#4c8b73;margin-top:8px;letter-spacing:4px}@keyframes cv-card-switch{0%,43%{opacity:1;transform:translateX(0)}49%,93%{opacity:0;transform:translateX(25px)}100%{opacity:1;transform:translateX(0)}}
.cv-workspace{height:100%;min-height:370px;display:grid;grid-template-columns:220px minmax(0,1fr)}.cv-inspector{display:flex;flex-direction:column;gap:12px;padding:16px;background:#f9fbfa;border-right:1px solid var(--line);min-height:0;overflow:auto}.cv-inspector .field{font-size:12px}.cv-section-title{display:flex;flex-direction:column;gap:4px;font-size:12px}.cv-section-title small{color:var(--muted);font-size:10px}.cv-slide-list{display:flex;flex-direction:column;gap:6px;overflow:auto;min-height:70px;flex:1}.cv-slide-list button{display:flex;gap:8px;align-items:center;text-align:left;min-height:42px;flex-shrink:0;background:#fff;font-size:12px}.cv-slide-list b{width:24px;height:24px;display:grid;place-items:center;flex-shrink:0;border-radius:6px;background:#edf3ef}.cv-slide-list span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cv-slide-list button.active{border-color:#55997c;background:#e9f5ee;color:#18583e}.cv-add-page{background:#eff6f2;border:1px dashed #8bb99f;min-height:39px;font-size:12px}.cv-bot-launch{display:flex;gap:10px;text-align:left;align-items:center;background:#e8f0fb;border-color:#cadcf5;color:#325985;padding:12px}.cv-bot-launch>span:first-child{font-size:25px}.cv-bot-launch span:last-child{min-width:0;display:grid;gap:5px}.cv-bot-launch b{font-size:11px;overflow:hidden;text-overflow:ellipsis}.cv-bot-launch small{font-size:10px}.cv-inspector>.text-button{font-size:10px;line-height:1.5;padding:0;text-align:left}
.cv-canvas{display:flex;flex-direction:column;min-width:0;min-height:0;background:#e5eee7;padding:12px 28px;overflow:hidden}.cv-canvas-top{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-shrink:0;margin-bottom:8px}.cv-canvas-top>span{font-size:10px;font-weight:700;letter-spacing:1.4px;color:#607c6b}.cv-canvas-top button{font-size:11px}.cv-edit-card{flex:1;min-height:0;overflow:auto;position:relative;padding:0 8px}.cv-message-shell{width:min(100%,540px);margin:0 auto}.cv-telegram-head{display:flex;align-items:center;gap:9px;padding:5px 0 9px}.cv-telegram-head>div{display:flex;flex-direction:column;gap:3px}.cv-telegram-head b{font-size:12px;color:#285f49}.cv-telegram-head small{font-size:10px;color:#6e8377}.cv-telegram-head>button{margin-left:auto;background:#ffffffa6;padding:1px 8px;font-size:23px;line-height:1.2}.cv-message{border-radius:4px 14px 14px 14px;background:white;padding:12px;box-shadow:0 2px 6px #1837280c;overflow:hidden}.cv-text-label{display:block}.cv-text-label textarea{width:100%;min-height:100px;resize:vertical;background:#fcfdfc;border:1px dashed #b7cdbf;outline:none;border-radius:6px;line-height:1.6;font-family:inherit;font-size:14px;padding:9px;margin-top:5px}.cv-text-label textarea:focus{border-color:#43866a;box-shadow:0 0 0 2px #43866a14}.cv-common-text{font-size:13px;line-height:1.6;white-space:pre-wrap;padding:5px 0}.cv-common-text:empty{display:none}.cv-message-time{text-align:right;color:#8a9b90;font-size:9px;margin-top:6px}.cv-upload{font-size:11px;color:#3b7c60;cursor:pointer;display:block;padding:7px;text-align:center;border:1px dashed #b7cdbf;border-radius:6px}.cv-upload input{display:none}.cv-media{display:grid;gap:5px}.cv-media.cv-album{grid-template-columns:repeat(2,1fr)}.cv-media figure{position:relative;margin:0}.cv-media img,.cv-media video{width:100%;max-height:180px;object-fit:cover;border-radius:7px}.cv-media figure>button{position:absolute;right:5px;top:5px;width:25px;height:25px;border-radius:50%;padding:0;background:#fff;box-shadow:0 1px 4px #0002}.cv-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-top:6px}.cv-buttons button,.cv-buttons span{display:block;background:#d5e4da;text-align:center;color:#31664c;border:0;border-radius:5px;padding:10px;font-size:12px}.cv-link-add{display:block;margin:5px auto;border:0;background:transparent;font-size:11px;color:#4b785e;padding:5px}.cv-source-row{display:flex;align-items:center;justify-content:center;gap:10px;font-size:11px;margin:8px 0}.cv-source-row select{width:auto;font-size:11px;padding:6px}.cv-page-nav{display:flex;justify-content:center;align-items:center;gap:12px;flex-shrink:0;margin-top:8px}.cv-page-nav>span{font-size:12px;min-width:130px;text-align:center;color:#45624f}.cv-page-nav button{min-width:38px;min-height:36px}.cv-page-nav .cv-arrow{background:#386d98;border-color:#386d98;color:white;min-width:55px;font-size:19px}.cv-canvas-help{font-size:10px;text-align:center;color:#647e6c;margin:7px 0 0;flex-shrink:0}
.cv-review{border-left:3px solid #73a892;padding:10px 12px;background:#f0f7f2;border-radius:0 8px 8px 0;margin:10px 0}.cv-review-author{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.cv-review-author>b{font-size:12px;color:#3f755a}.cv-review-author>small{font-size:10px;color:#789380}.cv-review p{font-size:13px;white-space:pre-wrap;line-height:1.6;margin:5px 0}.cv-review a{font-size:11px;color:#307eae}.cv-review>small{font-size:10px;color:var(--muted)}.cv-empty-bot{display:flex;flex-direction:column;align-items:center;gap:7px;background:#f0f6fd;border:1px dashed #a9c9e6;width:100%;text-align:center;margin:8px 0;padding:14px;color:#426890}.cv-empty-bot>span{font-size:30px}.cv-empty-bot b{font-size:13px}.cv-empty-bot small{font-size:11px;line-height:1.5;max-width:300px}.cv-playback{position:absolute;inset:0;overflow:auto;background:#e5eee7;padding:10px max(8px,calc((100% - 540px)/2));z-index:2}.cv-play-label{font-size:11px;color:#477659;text-align:center;margin-bottom:10px}.cv-play-text{font-size:13px;line-height:1.6;white-space:pre-wrap;margin:10px 0}.cv-playback .cv-media figure>button{display:none}
.cv-reviews-layout{display:grid;grid-template-columns:minmax(330px,1fr) minmax(330px,1fr);height:100%;min-height:0}.cv-review-setup{padding:18px 22px;overflow:auto;border-right:1px solid var(--line)}.cv-review-setup>p{font-size:12px;color:var(--muted);line-height:1.6;margin:8px 0 15px}.cv-setup-step{display:grid;gap:9px;padding:15px 0;border-top:1px solid var(--line)}.cv-setup-step>b{font-size:13px}.cv-setup-step small{font-size:11px;color:var(--muted);line-height:1.6}.cv-setup-step button{font-size:11px}.cv-setup-step .field{font-size:12px}.cv-setup-step .primary{min-height:42px}.cv-setup-step p{font-size:12px;line-height:1.5;color:#486d55}.cv-setup-step p:empty{display:none}.cv-keyword-chips{display:flex;gap:5px;flex-wrap:wrap}.cv-keyword-chips button{padding:4px 7px;background:#f1f6f3;border:1px solid #d7e8dd;border-radius:16px;font-size:10px}.cv-review-result{padding:18px;display:flex;flex-direction:column;min-height:0;background:#f8faf8}.cv-review-result .apps-section-head h3{font-size:15px}.cv-review-result .apps-section-head small{font-size:10px;color:var(--muted)}.cv-review-flow{display:flex;justify-content:center;align-items:center;gap:12px;background:#e9f3ed;padding:12px;margin:12px 0;font-size:10px;border-radius:8px}.cv-review-flow b{font-size:17px;white-space:nowrap}#app-reviews{flex:1;min-height:0;overflow:auto}.cv-saved-review{padding:12px;background:white;border:1px solid var(--line);border-radius:10px;margin:0 0 10px}.cv-saved-review>small{font-size:10px;color:var(--muted)}.cv-saved-review>button{font-size:11px}.cv-saved-review.is-hidden{opacity:.65}.cv-review-empty{text-align:center;color:var(--muted);padding:20px 8px}.cv-review-empty>span{font-size:45px}.cv-review-empty>h3{font-size:16px;margin:12px 0}.cv-review-empty>p{font-size:12px;line-height:1.6}.cv-review-example{text-align:left;display:grid;gap:8px;background:#fff;padding:15px;border-radius:10px;margin:18px auto 0;max-width:290px;border:1px dashed #bbd0c3;font-size:12px}.cv-review-example small{font-size:10px;color:#86978d}.cv-review-example span{font-size:11px;color:#6c9ab0}
.cv-details-dialog{width:660px}.cv-details-body{padding:20px;display:grid;gap:15px;max-height:65dvh;overflow:auto}.cv-details-dialog>footer{padding:14px 20px;border-top:1px solid var(--line);display:flex;justify-content:flex-end}.cv-details-dialog .field{font-size:13px}.cv-details-dialog p{font-size:12px;line-height:1.6}.cv-format-guide{border-radius:10px;padding:12px;background:#f1f6f3;display:grid;gap:8px}.cv-details-dialog .slide-button-row{display:grid;grid-template-columns:1fr 1.3fr 30px;gap:6px;margin-bottom:8px}.cv-details-dialog .slide-button-row input{font-size:12px;min-width:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:900px){.app-visual-dialog{width:calc(100vw - 20px);height:calc(100dvh - 20px)}.cv-templates{gap:10px;padding:14px}.cv-templates>article{padding:10px}.cv-workspace{grid-template-columns:185px minmax(0,1fr)}.cv-canvas{padding:10px 12px}.cv-inspector{padding:12px}.cv-reviews-layout{grid-template-columns:1fr;height:auto}.cv-review-result{min-height:450px}.cv-picker-head h2{font-size:20px}.app-visual-dialog .app-editor-footer{flex-wrap:wrap}}
@media(max-width:600px){.cv-templates{grid-template-columns:1fr}.cv-demo-stage{height:170px}.cv-picker-head{padding:16px!important}.cv-workspace{display:flex;flex-direction:column;height:auto;min-height:100%}.cv-inspector{overflow:visible;flex-shrink:0}.cv-slide-list{flex-direction:row;max-height:45px;min-height:45px}.cv-inspector>.field,.cv-section-title,.cv-inspector>.text-button{display:none}.cv-bot-launch{padding:7px}.cv-canvas{min-height:510px;overflow:visible}.cv-edit-card{overflow:visible}.cv-source-row{flex-direction:column;gap:4px}.cv-reviews-layout{display:block}.app-visual-dialog .app-editor-footer{padding:9px;gap:4px}.app-visual-dialog .app-editor-footer button{font-size:11px;padding:8px}.app-visual-dialog .app-editor-head{padding:10px;flex-wrap:wrap}.cv-details-dialog .slide-button-row{grid-template-columns:1fr 30px}.cv-details-dialog .slide-button-row [data-button-url]{grid-column:1;grid-row:2}.cv-details-dialog .slide-button-row button{grid-column:2;grid-row:1/3}}
@media(prefers-reduced-motion:reduce){.cv-demo-card{animation:none}.cv-demo-card-1{display:none}}
/* Two-column editor: fields on the left, live Telegram phone on the right. */
.cv-dual-editor{display:grid;grid-template-columns:minmax(400px,1.1fr) minmax(340px,1fr);height:100%;min-height:0}.cv-fields{padding:16px 24px;min-height:0;overflow:auto;display:flex;flex-direction:column;gap:11px}.cv-fields-heading{display:flex;align-items:flex-end;gap:12px}.cv-fields-heading>.field{flex:1;font-size:11px}.cv-fields-heading>.text-button{font-size:10px;max-width:125px;padding:6px}.cv-fields .cv-page-nav{margin:0;justify-content:flex-start;gap:8px}.cv-fields .cv-page-nav b{min-width:135px;text-align:center;font-size:13px}.cv-fields #app-slide-list{flex-direction:row;flex:none;min-height:34px;max-height:34px;overflow:auto;gap:5px}.cv-fields #app-slide-list button{min-height:31px;padding:5px 8px;font-size:10px}.cv-fields #app-slide-list button b{width:18px;height:18px;font-size:9px}.cv-fields #app-slide-list button span{max-width:95px}.cv-left-form{display:grid;gap:10px}.cv-left-form .field{font-size:12px}.cv-title-row{display:flex;align-items:flex-end;gap:8px}.cv-title-row>.field{flex:1;grid-template-columns:auto 1fr;gap:5px}.cv-title-row .field small{font-size:10px;color:var(--muted);text-align:right}.cv-title-row input{grid-column:1/-1}.cv-title-row>.icon{font-size:22px;padding:4px 10px}.cv-left-form textarea{width:100%;min-height:100px;resize:vertical;font-size:13px;line-height:1.6}.cv-attachments{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.cv-attachments>.cv-upload{background:#f0f7f3;padding:8px 12px;border-color:#bfd6c9}.cv-attachments>span{display:flex;gap:6px;align-items:center;border:1px solid var(--line);border-radius:6px;padding:4px 7px;font-size:10px;max-width:220px;overflow:hidden}.cv-attachments>span>button{padding:0 5px;flex-shrink:0}.cv-left-form .cv-source-row{justify-content:space-between;margin:0}.cv-left-form .cv-source-row select{max-width:220px;flex:1}.cv-button-field{display:flex;justify-content:space-between;gap:10px;padding:10px 12px;text-align:left;font-size:11px}.cv-button-field b{font-size:10px;color:#3b7558;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;max-width:65%}.cv-fields>.cv-bot-launch{margin-top:auto;flex-shrink:0;padding:10px 13px}.cv-fields>.cv-bot-launch b{font-size:12px}.cv-fields>.cv-bot-launch small{font-size:11px}.cv-phone-preview{background:#eaf1ed;border-left:1px solid #d4e1d9;padding:14px 28px;display:flex;flex-direction:column;align-items:center;min-height:0;overflow:hidden}.cv-phone-preview>.cv-canvas-top{width:100%;max-width:370px}.cv-phone{width:310px;flex:1;min-height:320px;max-height:620px;background:#fefefe;border:7px solid #273b35;border-radius:35px;box-shadow:0 16px 32px #19322924;display:flex;flex-direction:column;overflow:hidden;position:relative}.cv-phone-status{height:25px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:0 17px;font-size:9px;font-weight:700}.cv-phone-notch{position:absolute;top:-1px;width:83px;height:16px;left:50%;transform:translateX(-50%);background:#273b35;border-radius:0 0 12px 12px}.cv-telegram-group{display:flex;align-items:center;gap:8px;background:#fff;padding:7px 9px;border-bottom:1px solid #dce6e0;flex-shrink:0}.cv-telegram-group>span{font-size:25px;color:#447ca4}.cv-telegram-group>div:nth-child(3){flex:1;min-width:0;display:grid;gap:3px}.cv-telegram-group b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:#2b3831}.cv-telegram-group small{font-size:8px;color:#90a199}.cv-group-avatar{width:31px;height:31px;flex-shrink:0;display:grid;place-items:center;border-radius:50%;background:linear-gradient(140deg,#71b2cb,#438cac);color:white;font-size:14px;font-weight:700}.cv-phone-chat{min-height:0;flex:1;padding:10px;background-color:#dfeae3;background-image:radial-gradient(#b5cdbd66 1px,transparent 1px);background-size:17px 17px;overflow:auto;position:relative}.cv-today{display:table;margin:0 auto 10px;background:#8aa29366;border-radius:10px;color:white;padding:3px 10px;font-size:9px}.cv-phone .cv-message{padding:9px;border-radius:3px 11px 11px 11px}.cv-phone #cv-phone-bot{font-size:11px;color:#438264;display:block;margin-bottom:5px}.cv-phone #cv-message-text{font-size:12px;white-space:pre-wrap;line-height:1.55;overflow-wrap:anywhere;margin:7px 0}.cv-phone .is-placeholder{color:#98a99f}.cv-phone .cv-common-text{font-size:12px}.cv-phone .cv-media img,.cv-phone .cv-media video{max-height:155px}.cv-phone .cv-buttons{gap:4px}.cv-phone .cv-buttons span{padding:8px 4px;font-size:10px;color:#356a54;background:#c7ddcf}.cv-phone .cv-empty-bot{padding:10px 7px}.cv-phone .cv-empty-bot>span{font-size:24px}.cv-phone .cv-empty-bot>b{font-size:11px}.cv-phone .cv-empty-bot>small{font-size:10px}.cv-phone .cv-review{padding:8px;margin:8px 0}.cv-phone .cv-review p{font-size:11px;line-height:1.5}.cv-phone .cv-review-author b{font-size:11px}.cv-phone .cv-review a{font-size:9px}.cv-phone .cv-review-author small{font-size:9px}.cv-phone .cv-playback{padding:10px;background:#dfeae3;min-height:100%;bottom:auto}.cv-phone-compose{display:flex;align-items:center;gap:12px;height:32px;flex-shrink:0;padding:0 11px;color:#80988b;border-top:1px solid #d4e1d9;background:#fbfdfb;font-size:16px}.cv-phone-compose span:nth-child(2){font-size:11px;flex:1;color:#acb8b0}.cv-home-indicator{height:4px;width:85px;background:#283d34;border-radius:4px;margin:7px auto 5px;flex-shrink:0}.cv-phone-preview>.cv-canvas-help{font-size:10px;line-height:1.5;margin-top:10px}
@media(max-height:770px) and (min-width:850px){.cv-fields{padding:12px 20px;gap:8px}.cv-left-form{gap:8px}.cv-left-form textarea{min-height:78px;height:85px}.cv-title-row input{padding:6px 9px}.cv-fields>.cv-bot-launch{padding:8px 10px}.cv-phone-preview{padding:10px 25px}.cv-phone-preview>.cv-canvas-help{margin-top:6px}.cv-phone{max-height:440px}.app-visual-dialog .app-editor-head{padding:10px 18px}.app-visual-dialog .app-editor-footer{padding:9px 18px}.cv-phone-preview>.cv-canvas-top{margin-bottom:5px}}
@media(max-width:850px){.cv-dual-editor{grid-template-columns:minmax(300px,1fr) minmax(285px,.8fr)}.cv-fields{padding:12px}.cv-phone-preview{padding:12px 10px}.cv-phone{width:275px}.cv-fields-heading{align-items:center}.cv-fields .cv-page-nav b{min-width:110px}.cv-fields .cv-page-nav button{min-width:36px}.cv-left-form .cv-source-row{flex-direction:column;align-items:stretch}.cv-left-form .cv-source-row select{max-width:none;width:100%}}
@media(max-width:650px){.cv-dual-editor{display:flex;flex-direction:column;height:auto}.cv-fields{overflow:visible}.cv-phone-preview{overflow:visible;min-height:650px;border-left:0;border-top:1px solid var(--line);padding:20px}.cv-phone{width:310px;min-height:530px;flex:none}.cv-fields>.cv-bot-launch{margin-top:5px}.cv-fields .cv-page-nav{justify-content:center}.cv-fields #app-slide-list{min-height:34px}.cv-left-form .cv-source-row{flex-direction:row;align-items:center}.cv-fields-heading>.field{display:grid}}

.cv-telegram-review{margin:12px 0 5px;font-size:12px;line-height:1.55;overflow-wrap:anywhere}.cv-telegram-review p{white-space:pre-wrap;margin:0}.cv-telegram-review a{color:#307eae}.cv-play-post+.cv-play-post{margin-top:10px}.cv-phone .cv-buttons span:last-child:nth-child(odd){grid-column:1/-1}

.cv-title-row .field{position:relative}.cv-title-row .field>small{position:absolute;right:0;top:0}
@media(max-height:740px) and (min-width:850px){.cv-fields{gap:6px}.cv-left-form{gap:6px}.cv-left-form textarea{height:70px;min-height:68px}.cv-fields .cv-page-nav{margin-top:0}}

.cv-fields #app-slide-list{flex-direction:row;overflow-x:auto;overflow-y:hidden;max-height:48px}.cv-fields #app-slide-list button{max-width:180px;flex:0 0 auto}.cv-playback .cv-message>b{font-size:11px;color:#438264}

/* Keep closing visible in both the template picker and every editor section. */
.app-visual-dialog>.app-editor-head{position:relative;padding-right:72px}
.app-visual-dialog>.cv-picker-head{position:relative;flex-shrink:0;padding-right:76px!important}
.app-visual-dialog .cv-modal-close{position:absolute;top:10px;right:12px;width:44px;height:44px;min-width:44px;min-height:44px;display:grid;place-items:center;padding:0;border:1px solid #9ebdaf;border-radius:10px;background:#edf5f0;color:#214f3d;font-size:30px;line-height:1;font-weight:500;z-index:3;cursor:pointer;box-shadow:none}
.app-visual-dialog .cv-modal-close:hover{background:#dceee3;border-color:#578e70}
.app-visual-dialog .cv-modal-close:focus-visible{outline:3px solid #3979a6;outline-offset:2px}

/* Creation hub and the shared two-column post editor. */
.post-hub{display:flex;flex-direction:column;gap:16px;height:100%;min-height:0}.post-hub .settings-section-head{margin:0}.post-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.post-choice-grid>article{display:flex;gap:16px;align-items:center;background:white;border:1px solid #d9e6dd;border-radius:14px;padding:18px}.post-choice-grid h3{margin:0 0 6px;font-size:16px}.post-choice-grid p{font-size:12px;color:var(--muted);margin:0 0 12px;line-height:1.5}.post-choice-grid button{min-height:40px}.post-choice-icon{display:grid;place-items:center;width:64px;height:64px;flex:none;background:#edf5f0;border-radius:18px;font-size:34px;color:#347558}.post-hub #post-carousels{border-top:1px solid var(--line);padding-top:12px}.post-hub .apps-section-head{margin:0 0 12px}.post-hub .apps-section-head h3{margin:0 0 4px}.post-hub-note{margin:auto 0 0;font-size:11px;color:var(--muted)}
.cv-templates{grid-template-columns:repeat(2,minmax(0,1fr))}.cv-hub-templates{padding:0;gap:14px;overflow:visible}.cv-hub-templates>article{padding:14px;display:grid;grid-template-columns:150px minmax(0,1fr);gap:14px;align-items:center}.cv-hub-templates>article>div:last-child{min-width:0}.cv-hub-templates h3{font-size:15px;margin:0 0 6px}.cv-hub-templates p{font-size:12px;line-height:1.4;min-height:0;margin:0 0 10px}.cv-hub-templates button{width:100%;min-height:40px;font-size:12px}.cv-hub-templates .cv-demo{margin:0;min-width:0}.cv-hub-templates .cv-demo-stage{height:97px}.cv-hub-templates .cv-demo-picture{display:none}.cv-hub-templates .cv-demo-card{padding:9px}.cv-hub-templates .cv-demo-card strong{font-size:10px}.cv-hub-templates .cv-demo-card p{font-size:10px;margin:6px 0}.cv-hub-templates .cv-demo-card small{font-size:8px}.cv-hub-templates .cv-demo-chat{padding:6px;font-size:9px}.cv-hub-templates .cv-demo-dots{padding:4px}.cv-saved-body{padding:20px;overflow:auto;flex:1}
.cv-button-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;border:1px solid var(--line);padding:12px;border-radius:10px;margin-bottom:12px}.cv-button-row-head{display:flex;align-items:center;justify-content:space-between;grid-column:1/-1}.cv-button-row-head button{width:36px;height:36px;padding:0;font-size:23px}.cv-button-row>.field:last-of-type{grid-column:1/-1}.cv-button-row .field{min-width:0}.cv-button-row input,.cv-button-row select{width:100%;min-width:0}.cv-details-dialog{width:min(690px,94vw)}.cv-details-dialog footer{justify-content:space-between}.cv-phone .cv-buttons button{background:#c7ddcf;color:#28583e;border:0;border-radius:5px;padding:9px 5px;font-size:10px;min-width:0;overflow-wrap:anywhere}.cv-phone .cv-buttons button:hover{background:#b4d4c0}.cv-phone .cv-buttons button:last-child:nth-child(odd){grid-column:1/-1}
dialog.post-visual-dialog{width:min(1120px,96vw);height:min(760px,94dvh);max-height:94dvh}.post-visual-dialog .settings-dialog-body{padding:0;min-height:0;flex:1;overflow:auto}.post-dual-editor{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,1fr);height:100%;min-height:0}.post-fields{padding:22px;overflow:auto;align-content:start;gap:13px}.post-fields textarea{resize:vertical;min-height:110px}.post-sender-options{font-size:11px;display:grid;gap:6px;background:#f2f7f4;border-radius:9px;padding:10px}.post-sender-options p:empty{display:none}.post-sender-options .text-button{justify-self:start;padding:2px 0}.post-sender-options small{color:var(--muted);line-height:1.4}.post-visual-dialog #post-preview{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;line-height:1.55}.post-visual-dialog #post-preview-author{font-size:11px;color:#438264}.post-visual-dialog header>button{width:44px;height:44px;font-size:28px;padding:0;background:#edf5f0;border:1px solid #9ebdaf;color:#214f3d}.post-visual-dialog footer{flex-shrink:0}.settings-overview .settings-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-height:780px) and (min-width:850px){.post-hub{gap:10px}.post-choice-grid>article{padding:12px 14px}.post-choice-grid p{margin-bottom:8px}.post-hub #post-carousels{padding-top:9px}.post-hub .apps-section-head{margin-bottom:8px}.cv-hub-templates>article{padding:10px;grid-template-columns:126px minmax(0,1fr);gap:10px}.cv-hub-templates .cv-demo-stage{height:78px}.cv-hub-templates .cv-demo-card small{display:none}.post-fields{padding:16px;gap:9px}.post-fields textarea{min-height:88px;height:100px}.post-visual-dialog .cv-phone{min-height:290px}}
@media(max-width:1000px){.cv-hub-templates>article{grid-template-columns:1fr}.cv-hub-templates .cv-demo{display:none}.post-choice-icon{display:none}}
@media(max-width:650px){.post-hub{height:auto}.post-choice-grid,.cv-templates,.post-dual-editor{grid-template-columns:1fr}.post-dual-editor{height:auto}.post-hub .settings-section-head{align-items:flex-start;gap:10px}.post-hub .settings-section-head>button{font-size:11px}.post-fields{overflow:visible}.post-visual-dialog .cv-phone-preview{min-height:570px}.post-visual-dialog footer>span{display:none}.cv-button-row{grid-template-columns:1fr}.settings-overview .settings-card-grid{grid-template-columns:1fr}.cv-hub-templates>article{display:block}.cv-details-dialog footer button{font-size:11px}}

.cv-hub-templates .cv-demo{min-height:0;padding:8px}.cv-hub-templates .cv-demo-card{gap:3px;overflow:hidden}.cv-hub-templates .cv-demo-card p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.cv-hub-templates .cv-demo-chat{padding:2px;margin-bottom:6px}

@media(min-width:1001px){.cv-hub-templates>article{min-height:0}.cv-hub-templates .cv-demo{align-self:stretch;display:flex;flex-direction:column}.cv-hub-templates .cv-demo-chat{flex:none}.cv-hub-templates .cv-demo-stage{flex:1;min-height:65px}.cv-hub-templates .cv-demo-dots{flex:none}}
@media(max-height:740px) and (min-width:850px){.post-hub{gap:8px}.post-hub .settings-section-head p{margin:4px 0 0}.post-choice-grid h3{font-size:14px}.post-choice-grid p{font-size:11px}.post-choice-grid>article{padding:10px 12px}.post-choice-grid button,.cv-hub-templates button{min-height:36px;padding:8px 10px}.cv-hub-templates>article{grid-template-columns:108px minmax(0,1fr)}.cv-hub-templates h3{font-size:14px}.cv-hub-templates p{font-size:11px}.post-hub-note{font-size:10px}.cv-hub-templates .cv-demo-chat{gap:3px}.cv-hub-templates .cv-demo-chat small{display:none}}

@media(max-height:740px) and (min-width:850px){.post-hub{gap:6px}.cv-hub-templates>article{padding:8px}.post-hub #post-carousels{padding-top:7px}}
@media(max-width:650px){body:has(#studio-panel:not([hidden])){grid-template-columns:minmax(0,1fr)}body:has(#studio-panel:not([hidden])) #workspace{width:100%;min-width:0;grid-template-columns:minmax(0,1fr)}body:has(#studio-panel:not([hidden])) #workspace>.groups{display:none}.post-hub .apps-section-head{gap:8px}.post-hub .apps-section-head>div{min-width:0}.post-hub .apps-section-head>button{flex-shrink:0;font-size:11px}}

@media(max-width:650px){body:has(#studio-panel:not([hidden])) .top-actions{flex-wrap:wrap;min-width:0;justify-content:flex-end;max-width:100%}}

/* Regular posts UX v1. */
.regular-post-page{gap:12px}.regular-post-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-shrink:0;padding:2px 0 4px}.regular-post-head h3{margin:0 0 4px;font-size:16px;color:#244334}.regular-post-head p{margin:0;font-size:11px;line-height:1.45;color:var(--muted);max-width:720px}.regular-post-head>button{flex-shrink:0;min-height:38px}
.regular-post-list{display:flex;flex-direction:column;gap:8px;min-height:150px;max-height:330px;overflow:auto;padding-right:3px;scrollbar-width:thin}
.regular-post-empty{display:grid;place-items:center;min-height:145px;border:1px dashed #c9d9cf;border-radius:12px;background:#f8fbf9;text-align:center;color:#60766a}.regular-post-empty>span{font-size:25px}.regular-post-empty strong{font-size:13px;color:#315a43}.regular-post-empty p{margin:4px 0 0;font-size:10px}
.regular-post-card{border:1px solid #d9e5dd;border-radius:11px;background:#fff;padding:10px 12px}.regular-post-card.is-active{border-color:#9bc5aa;background:#f7fcf8}.regular-post-card>header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.regular-post-card>header>div{min-width:0}.regular-post-card>header strong{display:block;margin-top:3px;font-size:12px;color:#284637;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.regular-post-state{font-size:9px;font-weight:800;color:#2c7750}.regular-post-card.is-paused .regular-post-state{color:#7b7167}.regular-post-interval{flex:none;padding:4px 7px;border-radius:999px;background:#edf5f0;color:#3f654f;font-size:9px;font-weight:750}
.regular-post-card>p{margin:7px 0 6px;font-size:10.5px;line-height:1.45;color:#53685b;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-wrap}.regular-post-meta{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:9px;color:#6a7e72}.regular-post-meta b{color:#315b43}.regular-post-card>footer{display:flex;justify-content:flex-end;gap:6px;margin-top:8px;padding-top:8px;border-top:1px solid #edf2ee}.regular-post-card>footer button{min-height:30px;padding:5px 9px;font-size:9px}.regular-post-card>footer .danger{color:#9c493d;border-color:#e1b8b2;background:#fff8f7}
.regular-sender-note{padding:10px 11px;border:1px solid #dce7df;border-radius:9px;background:#f4f8f5}.regular-sender-note strong,.regular-sender-note span,.regular-sender-note small{display:block}.regular-sender-note strong{font-size:10px;color:#6d8275}.regular-sender-note span{margin-top:3px;font-size:12px;font-weight:800;color:#284d39}.regular-sender-note small{margin-top:3px;font-size:9.5px;line-height:1.4;color:#6d8074}.regular-interval-row{display:grid;grid-template-columns:minmax(120px,.8fr) minmax(140px,1fr);gap:10px}.regular-post-dialog #post-interval-preview{margin-right:auto;font-size:10px;color:#456551;font-weight:700}
@media(max-height:780px) and (min-width:850px){.regular-post-list{max-height:245px}.regular-post-card{padding:8px 10px}.regular-post-card>p{margin:5px 0}.regular-post-card>footer{margin-top:6px;padding-top:6px}}
@media(max-width:650px){.regular-post-head{align-items:flex-start;flex-direction:column}.regular-post-head>button{width:100%}.regular-post-list{max-height:none;overflow:visible}.regular-interval-row{grid-template-columns:1fr 1fr}.regular-post-card>header{flex-direction:column}.regular-post-card>footer{justify-content:stretch}.regular-post-card>footer button{flex:1}}

/* Regular post editor v2: delay, sender, bots and link buttons. */
.regular-time-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.regular-number-unit{display:grid;grid-template-columns:minmax(80px,1fr) 100px;gap:6px;margin-top:5px}.regular-sender-choice{border:1px solid #d9e5dd;border-radius:10px;padding:10px 11px;display:grid;gap:8px}.regular-sender-choice legend{padding:0 5px;font-size:11px;font-weight:800;color:#315943}.regular-sender-choice>label{display:grid;grid-template-columns:18px minmax(0,1fr);gap:7px;align-items:start}.regular-sender-choice>label b,.regular-sender-choice>label small{display:block}.regular-sender-choice>label b{font-size:11px;color:#294b39}.regular-sender-choice>label small{font-size:9px;color:#718278;margin-top:2px}.regular-sender-choice input[type=radio]{margin-top:2px;accent-color:#2d7650}.regular-anonymous{margin:3px 0 0 25px;font-size:10px}.regular-sender-choice>div>small{display:block;margin:3px 0 0 25px;font-size:9px;color:#708177}
.regular-bot-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:6px;margin:4px 0 0 25px}.regular-bot-row select,.regular-bot-row button{height:34px;font-size:9.5px}.regular-bot-status{margin:5px 0 0 25px;font-size:9px;color:#7a6b58}.regular-bot-status.is-ready{color:#217047;font-weight:800}
.post-buttons-section{border:1px solid #d9e5dd;border-radius:10px;padding:10px 11px}.post-buttons-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.post-buttons-head strong,.post-buttons-head small{display:block}.post-buttons-head strong{font-size:11px;color:#294b39}.post-buttons-head small{font-size:9px;color:#708177;margin-top:2px}.post-buttons-head button{font-size:9px;padding:5px 8px}.post-link-button-row{display:grid;grid-template-columns:minmax(90px,.7fr) minmax(150px,1.5fr) 86px 31px;gap:5px;margin-top:6px}.post-link-button-row input,.post-link-button-row select,.post-link-button-row button{min-width:0;height:32px;font-size:9.5px}.post-link-button-row button{padding:0;font-size:17px}
.post-preview-buttons{display:flex;flex-direction:column;gap:3px;margin-top:7px}.post-preview-buttons>div{display:flex;gap:3px}.post-preview-buttons span{flex:1;min-width:0;padding:5px 6px;border-radius:5px;background:#c7ddcf;color:#28583e;text-align:center;font-size:8px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.post-create-bot-dialog{width:min(470px,92vw);max-width:470px}.regular-history-dialog{width:min(620px,94vw);max-width:620px;max-height:80dvh}.regular-history-row{padding:9px 10px;border:1px solid #e0e8e2;border-radius:9px;margin-bottom:7px}.regular-history-row>div{display:flex;justify-content:space-between;gap:10px}.regular-history-row strong{font-size:10px;color:#315b43}.regular-history-row span,.regular-history-row small{font-size:9px;color:#718278}.regular-history-row p{margin:5px 0;font-size:10px;line-height:1.4;color:#50665a;white-space:pre-wrap}.regular-post-dialog footer{gap:7px}.regular-post-dialog footer #post-interval-preview{margin-right:auto}
@media(max-width:720px){.regular-time-grid{grid-template-columns:1fr}.regular-bot-row{grid-template-columns:1fr 1fr;margin-left:0}.regular-bot-row select{grid-column:1/-1}.regular-bot-status,.regular-sender-choice>div>small,.regular-anonymous{margin-left:0}.post-link-button-row{grid-template-columns:1fr 80px 31px}.post-link-button-row [data-post-button-url]{grid-column:1/-1;grid-row:2}.regular-post-dialog footer{flex-wrap:wrap}.regular-post-dialog footer #post-interval-preview{width:100%;margin:0}}

/* Regular post strip v3: compact horizontal cards with arrows. */
.regular-post-strip{display:grid;grid-template-columns:22px minmax(0,1fr) 22px;gap:4px;align-items:stretch;min-width:0}
.regular-post-arrow{align-self:stretch;min-height:0;padding:0;border:0;border-radius:0;font-size:25px;font-weight:500;line-height:1;color:#507061;background:transparent;box-shadow:none}
.regular-post-arrow:hover,.regular-post-arrow:focus{background:transparent;color:#1f6245;box-shadow:none}
.regular-post-list{display:flex;flex-direction:row;gap:8px;min-height:150px;max-height:none;overflow-x:auto;overflow-y:hidden;padding:0 1px 4px;scroll-snap-type:x proximity;scrollbar-width:none;overscroll-behavior-x:contain}
.regular-post-list::-webkit-scrollbar{display:none}
.regular-post-empty{width:100%;flex:1 0 100%}
.regular-post-card{flex:0 0 min(410px,calc(50% - 4px));min-width:320px;scroll-snap-align:start}
@media(max-height:780px) and (min-width:850px){.regular-post-list{max-height:none}}
@media(max-width:760px){.regular-post-strip{grid-template-columns:20px minmax(0,1fr) 20px}.regular-post-arrow{min-height:0}.regular-post-list{overflow-x:auto;overflow-y:hidden}.regular-post-card{flex-basis:88%;min-width:275px}}

.regular-post-dialog .post-save-error{flex-shrink:0;margin:0;padding:10px 20px;color:#96382d;background:#fff3ef;border-top:1px solid #e9c3ba;font-size:13px;line-height:1.4;white-space:pre-wrap}

/* Review collector v1: standalone from carousel publishing. */
.review-collector-body{padding:0!important;overflow:auto}
.review-collector-layout{display:grid;grid-template-columns:minmax(360px,.9fr) minmax(420px,1.1fr);min-height:0}
.review-collector-setup,.review-collector-result{padding:22px;min-width:0}
.review-collector-setup{border-right:1px solid var(--line);display:flex;flex-direction:column;gap:14px}
.review-collector-title>span{font-size:9px;font-weight:800;letter-spacing:.12em;color:#6f8879}
.review-collector-title h3{margin:4px 0 5px;font-size:18px;color:#244334}
.review-collector-title p{margin:0;font-size:11px;line-height:1.5;color:var(--muted)}
.review-listener-choice{border:1px solid #d9e5dd;border-radius:11px;padding:12px;display:grid;gap:9px}
.review-listener-choice legend{padding:0 6px;font-size:11px;font-weight:800;color:#315943}
.review-listener-choice>label{display:grid;grid-template-columns:18px minmax(0,1fr);gap:8px;align-items:start}
.review-listener-choice>label b,.review-listener-choice>label small{display:block}
.review-listener-choice>label b{font-size:11px;color:#294b39}.review-listener-choice>label small{font-size:9.5px;line-height:1.4;color:#718278;margin-top:2px}
.review-listener-choice input[type=radio]{margin-top:3px;accent-color:#2d7650}
#review-bot-settings{margin:3px 0 0 25px;padding:10px;border-radius:9px;background:#f5f9f6;border:1px solid #e0e9e3}
#review-bot-settings>select{width:100%;min-height:36px;margin-bottom:8px}
#review-bot-settings .studio-actions{gap:6px;flex-wrap:wrap}
#review-bot-settings .secondary-actions{margin-top:6px}
#review-bot-settings small,#review-bot-settings p{font-size:9px;line-height:1.45;color:#6f8176}
.review-collector-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-top:2px}
.review-collector-actions #app-collector-state{width:100%;margin:2px 0 0;font-size:10px;color:#516a5d}
.review-collector-result{display:flex;flex-direction:column;min-height:0;background:#fbfdfb}
.review-collector-result .apps-section-head{margin:0 0 10px}
.review-collector-result #app-reviews{min-height:220px;max-height:520px;overflow:auto;display:grid;gap:8px;align-content:start}
.review-collector-result .cv-saved-review{margin:0}
.review-pager{margin-top:10px;justify-content:center}
.review-collector-footer{justify-content:flex-end}
@media(max-width:850px){.review-collector-layout{grid-template-columns:1fr}.review-collector-setup{border-right:0;border-bottom:1px solid var(--line)}}
@media(max-width:650px){#review-bot-settings{margin-left:0}.review-collector-setup,.review-collector-result{padding:14px}}

.review-collector-demo{padding:9px;min-height:0}
.review-collector-demo .review-demo-flow{display:grid;gap:5px;padding:8px;border-radius:8px;background:#f7fbf8;border:1px solid #dce8df}
.review-collector-demo .review-demo-flow span{display:block;font-size:9px;line-height:1.35;color:#496657}
.review-collector-demo .review-demo-flow span:first-child{font-size:10px;font-weight:700;color:#294b39}
.review-collector-demo .review-demo-flow b{font-size:8px;color:#2f7752}

.apps-tool-block+.apps-tool-block{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}
.apps-tool-block .apps-section-head{margin-bottom:10px}
.review-tool-templates{grid-template-columns:minmax(0,560px)}
.review-tool-templates>article{min-height:120px}
.carousel-next-block>.apps-section-head small{max-width:720px}

/* Review collector v2: keywords -> listener -> database, no carousel controls. */
.review-collector-simple .cv-setup-step{padding:12px;border:1px solid #dce7df;border-radius:10px;background:#fbfdfb}
.review-collector-simple .cv-setup-step>b{display:block;margin-bottom:8px;font-size:11px;color:#294b39}
.review-collector-simple .cv-keyword-chips{display:flex;gap:6px;flex-wrap:wrap;margin:7px 0}
.review-collector-simple .cv-keyword-chips button{min-height:28px;padding:4px 8px;font-size:9px}
.review-bot-compact{display:grid;gap:7px}
.review-bot-compact .field{margin:0}
.review-bot-compact .studio-actions{margin:0}
.review-bot-check{min-height:18px;margin:2px 0 0!important;font-weight:700;color:#2d6c4b!important}
.review-collector-result #review-total{font-size:11px;color:#2d6c4b}
.review-collector-simple .review-collector-actions{padding-top:4px;border-top:1px solid #edf2ee}

/* Review collector v3: compact single-column modal. */
.app-visual-dialog.review-collector-dialog{width:min(720px,calc(100vw - 40px));height:auto;max-height:min(760px,calc(100dvh - 40px))}
.app-visual-dialog.review-collector-dialog .app-editor-body{padding:16px 18px}
.review-collector-compact{display:grid;gap:14px}
.review-collector-intro{margin:0;font-size:15px;line-height:1.45;color:#294b39}
.review-keywords-field{margin:0}
.review-keywords-field>span{display:block;margin-bottom:6px;font-size:11px;font-weight:800;color:#315943}
.review-collector-compact .review-listener-choice{margin:0}
.review-collector-compact .review-collector-actions{border-top:1px solid #edf2ee;padding-top:12px}
.review-collector-compact .review-bot-compact{margin-top:4px}
@media(max-width:650px){.app-visual-dialog.review-collector-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}}

/* Review collector v4: compact modal and one-step bot connection. */
.app-visual-dialog.review-collector-dialog[open]{width:min(680px,calc(100vw - 40px));height:auto!important;min-height:0!important;max-height:calc(100dvh - 40px)}
.review-collector-dialog .review-collector-body{flex:0 1 auto!important;min-height:0!important;max-height:calc(100dvh - 190px);overflow:auto!important;padding:14px 18px!important}
.review-collector-dialog .review-collector-footer{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;justify-content:initial!important;padding:10px 16px!important;min-height:54px!important}
.review-collector-dialog .review-collector-footer>small{margin:0!important;text-align:center;font-size:9px}
.review-footer-actions{display:flex;gap:8px;justify-content:flex-end}
.review-footer-actions button{min-width:92px}
.review-collector-compact{gap:12px}
.review-collector-intro{font-size:14px;margin:0 0 2px}
.review-keywords-field textarea{min-height:72px!important;height:72px}
.review-listener-choice{padding:10px 12px;gap:7px}
.review-listener-choice>label small{margin-top:1px}
.review-bot-compact{margin:2px 0 0 25px!important;padding:9px!important}
.review-bot-row{display:grid;grid-template-columns:minmax(0,360px) auto;gap:8px;align-items:center}
.review-bot-row select{width:100%!important;min-width:0}
.review-bot-row button{white-space:nowrap;min-height:36px}
.review-create-bot{margin-top:4px;padding-left:0!important}
.review-collector-state{margin:0;font-size:9.5px;color:#60766a}
@media(max-width:650px){.app-visual-dialog.review-collector-dialog[open]{width:calc(100vw - 20px)}.review-bot-row{grid-template-columns:1fr}.review-collector-dialog .review-collector-footer{grid-template-columns:1fr auto}.review-collector-dialog .review-collector-footer>small{display:none}.review-footer-actions{grid-column:2}.review-collector-dialog .review-collector-footer>[data-apps="review-db"]{grid-column:1}}

/* Review collector v6: use lower modal space for listener progress. */
.app-visual-dialog.review-collector-dialog[open]{height:min(720px,calc(100dvh - 40px))!important}
.review-collector-dialog .review-collector-body{flex:1 1 auto!important;display:flex!important;flex-direction:column;min-height:0!important;max-height:none!important;overflow:auto!important}
.review-listener-board{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-content:stretch;flex:1 1 auto;min-height:158px;margin-top:12px}
.review-listener-card{display:flex;flex-direction:column;min-width:0;padding:12px;border:1px solid #dbe6df;border-radius:10px;background:#fafcfb}
.review-listener-card.is-selected{border-color:#76a98d;background:#f4faf6}
.review-listener-card>header{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}
.review-listener-card>header>div{min-width:0}
.review-listener-card>header small{display:block;font-size:8px;letter-spacing:.08em;color:#718378}
.review-listener-card>header strong{display:block;margin-top:3px;font-size:12px;color:#284b38;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.review-listener-card>header>span{flex:none;padding:3px 7px;border-radius:999px;font-size:8.5px;font-weight:800;background:#eef3ef;color:#68786d}
.review-listener-card.is-running>header>span,.review-listener-card.is-ready>header>span{background:#e2f3e8;color:#246643}
.review-listener-card.is-paused>header>span{background:#f2eee8;color:#79644f}
.review-listener-card.is-error>header>span{background:#fae9e6;color:#9c493d}
.review-listener-card>p{margin:9px 0 12px;font-size:9.5px;color:#65786c;line-height:1.35}
.review-listener-card>footer{margin-top:auto;padding-top:10px;border-top:1px solid #e8eeea;display:flex;align-items:baseline;gap:6px}
.review-listener-card>footer b{font-size:17px;color:#24543a}
.review-listener-card>footer small{font-size:8.5px;color:#75857b}
.review-listener-total{grid-column:1/3;display:flex;justify-content:space-between;align-items:center;padding:0 4px;font-size:9px;color:#687a70}
.review-listener-total b{color:#2b5f43}
@media(max-width:650px){.app-visual-dialog.review-collector-dialog[open]{height:calc(100dvh - 20px)!important}.review-listener-board{grid-template-columns:1fr;min-height:0}.review-listener-total{grid-column:1}.review-listener-card{min-height:120px}}

/* Review collector v8.5: compact cards with slow scanning status text. */
.review-listener-card{height:150px;min-height:150px;max-height:150px;display:grid;grid-template-rows:auto 1fr auto;overflow:hidden}
.review-scan-status{display:grid;place-items:center;min-height:0;text-align:center;pointer-events:none}
.review-scan-status span{font-size:11px;font-weight:750;letter-spacing:.035em;color:#3f7658;opacity:.22;animation:review-scan-breathe 10s ease-in-out infinite}
.review-scan-status:not(.is-active) span{visibility:hidden;animation:none}
@keyframes review-scan-breathe{0%{opacity:.22}50%{opacity:.94}100%{opacity:.22}}
.review-listener-card>footer{margin-top:0;justify-content:space-between;align-items:center;gap:10px}
.review-listener-progress{display:flex;align-items:baseline;gap:6px;min-width:0}
.review-listener-progress b{font-size:17px;color:#24543a}
.review-listener-progress small{font-size:8.5px;color:#75857b}
.review-listener-control{flex:none;min-width:76px;min-height:30px;padding:5px 10px;font-size:9px;font-weight:750}
.review-listener-control.is-start{border-color:#8bb49c;color:#2a6848;background:#f7fbf8}
.review-listener-control.is-stop{border-color:#d6aaa3;color:#8a473d;background:#fff9f8}
.review-listener-control:disabled{opacity:.5}
@media(max-width:650px){.review-listener-card{height:146px;min-height:146px;max-height:146px}}

/* Review collector v8.1: fit listener board without desktop inner scroll. */
@media(min-width:651px) and (min-height:760px){
 .app-visual-dialog.review-collector-dialog[open]{height:min(790px,calc(100dvh - 40px))!important}
 .review-listener-card{height:150px;min-height:150px;max-height:150px}
 .review-collector-dialog .review-collector-body{overflow:hidden!important}
}


/* Review collector v8.6: compact modal footer and content-sized height. */
.app-visual-dialog.review-collector-dialog[open]{height:auto!important;max-height:calc(100dvh - 40px)!important}
.review-collector-dialog .review-collector-body{flex:0 1 auto!important;min-height:0!important;max-height:calc(100dvh - 150px)!important;overflow:auto!important}
.review-listener-board{flex:0 0 auto!important;min-height:0!important;align-content:start!important}
.review-collector-dialog .review-collector-footer{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:9px 16px!important;min-height:50px!important}
.review-collector-dialog .review-collector-footer button{min-width:120px}
@media(max-width:650px){.app-visual-dialog.review-collector-dialog[open]{height:auto!important;max-height:calc(100dvh - 20px)!important}.review-collector-dialog .review-collector-body{max-height:calc(100dvh - 130px)!important}.review-collector-dialog .review-collector-footer{display:flex!important;grid-template-columns:none!important}.review-collector-dialog .review-collector-footer button{min-width:0;flex:1}}


/* Review collector v8.7: true content-height dialog, no empty tail. */
.app-visual-dialog.review-collector-dialog[open]{
 height:fit-content!important;
 block-size:fit-content!important;
 min-height:0!important;
 min-block-size:0!important;
 max-height:calc(100dvh - 40px)!important;
 max-block-size:calc(100dvh - 40px)!important
}
.review-collector-dialog .review-collector-body{
 flex:0 0 auto!important;
 height:auto!important;
 block-size:auto!important;
 min-height:0!important;
 max-height:calc(100dvh - 150px)!important
}
.review-collector-dialog .review-listener-board{
 flex:none!important;
 height:auto!important;
 min-height:0!important
}
.review-collector-dialog .review-collector-footer{
 flex:0 0 auto!important
}
@media(max-width:650px){
 .app-visual-dialog.review-collector-dialog[open]{
  height:fit-content!important;
  block-size:fit-content!important;
  max-height:calc(100dvh - 20px)!important;
  max-block-size:calc(100dvh - 20px)!important
 }
 .review-collector-dialog .review-collector-body{flex:0 1 auto!important;max-height:calc(100dvh - 130px)!important}
}


/* Carousel rich-text editor v1: Telegram-safe WYSIWYG. */
.cv-rich-toolbar{position:sticky;top:0;z-index:8;display:flex;align-items:center;gap:8px;padding:6px;border:1px solid #d7e4dc;border-radius:9px;background:#f8fbf9;box-shadow:0 3px 10px rgba(38,74,53,.05)}
.cv-rich-tools{display:flex;align-items:center;gap:3px;min-width:0;flex:1}
.cv-rich-tools button{flex:none;min-width:32px;height:30px;padding:3px 7px;border:1px solid transparent;border-radius:6px;background:transparent;color:#315b43;font-size:11px;line-height:1;font-weight:750}
.cv-rich-tools button:hover,.cv-rich-tools button.is-active{background:#e6f1ea;border-color:#b8d1c1;color:#1f6544}
.cv-rich-tools button:focus-visible{outline:2px solid #3f8261;outline-offset:1px}
.cv-rich-sep{width:1px;height:19px;flex:none;background:#d5e2da;margin:0 2px}
.cv-rich-counter{flex:none;font-size:9px;font-weight:700;color:#708278;white-space:nowrap}
.cv-rich-counter.is-over{color:#a34236}
.cv-rich-field{display:grid;gap:5px}
.cv-rich-label{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px;font-weight:800;color:#315943}
.cv-rich-label small{font-size:9px;font-weight:500;color:#7b8e82;text-align:right}
.cv-rich-editor{min-height:54px;padding:9px 10px;border:1px solid #d6e3da;border-radius:8px;background:#fff;outline:none;white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;line-height:1.55;color:#2c4437}
.cv-rich-editor:focus{border-color:#69a284;box-shadow:0 0 0 2px rgba(79,142,105,.10)}
.cv-rich-editor.is-body{min-height:96px;border-left:4px solid #6e9f83;border-radius:4px 8px 8px 4px;background:#f8fbf9;padding-left:11px}
.cv-rich-editor:empty::before{content:attr(data-placeholder);color:#9aa9a0;pointer-events:none}
.cv-rich-editor a,.cv-rich-preview a,#cv-header a,#cv-message-text a,#cv-footer a{color:#2f7da5;text-decoration:underline}
.cv-rich-editor blockquote,.cv-rich-preview blockquote,#cv-header blockquote,#cv-message-text blockquote,#cv-footer blockquote{margin:6px 0;padding:4px 8px;border-left:3px solid #6a9e81;background:#f3f8f5;border-radius:0 5px 5px 0}
.cv-rich-editor code,.cv-rich-preview code,#cv-header code,#cv-message-text code,#cv-footer code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;background:#eef3f0;border-radius:4px;padding:1px 3px}
.cv-rich-help{margin-top:-2px;font-size:9px;line-height:1.45;color:#788a7f}
.cv-rich-gap{height:8px}
.cv-rich-linkbox{position:absolute;z-index:12;top:42px;left:116px;width:min(330px,calc(100% - 24px));padding:9px;border:1px solid #cbdad1;border-radius:9px;background:#fff;box-shadow:0 12px 28px rgba(34,62,46,.18)}
.cv-rich-linkbox[hidden],.cv-rich-context[hidden]{display:none!important}
.cv-rich-linkbox label{display:grid;gap:4px;font-size:9px;font-weight:700;color:#526d5e}
.cv-rich-linkbox input{width:100%;min-width:0;height:34px;padding:6px 8px;border:1px solid #d2ddd6;border-radius:6px;font-size:11px}
.cv-rich-linkbox>div{display:flex;justify-content:flex-end;gap:6px;margin-top:7px}
.cv-rich-linkbox button{min-height:30px;padding:5px 9px;font-size:9px}
.cv-rich-context{position:fixed;z-index:10020;width:184px;padding:5px;border:1px solid #cbd9d0;border-radius:9px;background:#fff;box-shadow:0 14px 32px rgba(31,56,42,.22)}
.cv-rich-context button{display:block;width:100%;min-height:31px;padding:6px 9px;border:0;border-radius:5px;background:transparent;text-align:left;font-size:10px;color:#304d3c}
.cv-rich-context button:hover{background:#edf5f0}
.cv-launch-rich{margin:7px 0;font-size:10.5px;line-height:1.5;color:#52675b;white-space:pre-wrap}
.cv-launch-rich blockquote{margin:6px 0;padding:5px 8px;border-left:3px solid #6a9e81;background:#f3f8f5;border-radius:0 5px 5px 0}
.cv-rich-preview{white-space:pre-wrap}
.cv-phone #cv-message-text{margin:7px 0;font-size:12px;line-height:1.55;overflow-wrap:anywhere;white-space:pre-wrap}
.cv-phone #cv-message-text blockquote{margin:6px 0;padding:5px 8px;border-left:3px solid #6f9e83;background:#eef6f1;border-radius:0 5px 5px 0}
.cv-phone #cv-message-text blockquote.is-placeholder{color:#98a99f;border-left-color:#bac9c0;background:#f7faf8}
@media(max-width:650px){
 .cv-rich-toolbar{position:relative;top:auto;display:grid;grid-template-columns:minmax(0,1fr) auto}
 .cv-rich-tools{overflow-x:auto;scrollbar-width:none}
 .cv-rich-tools::-webkit-scrollbar{display:none}
 .cv-rich-linkbox{left:6px;right:6px;width:auto}
 .cv-rich-label{align-items:flex-start}
 .cv-rich-editor.is-body{min-height:88px}
}

.cv-rich-context hr{height:1px;margin:4px 3px;border:0;background:#e1e9e4}
.cv-phone .cv-message a,.carousel-launch-cards a{pointer-events:none}


/* Carousel editor v2: page-first UX, inline media, button builder under preview. */
.cv-fields .cv-page-nav{display:grid;grid-template-columns:42px minmax(132px,1fr) 42px 36px 36px auto;align-items:center;gap:5px;margin:0 0 9px}
.cv-fields .cv-page-nav>b{min-width:0;text-align:center;font-size:12px;color:#355846}
.cv-fields .cv-page-nav>button{min-width:0;min-height:36px;height:36px}
.cv-fields .cv-page-nav .cv-arrow{min-width:0}
.cv-page-remove,.cv-page-add{padding:0;font-size:20px;line-height:1;background:#fff}
.cv-page-remove{border-color:#dfb9b3;color:#954a40}
.cv-page-remove:hover{background:#fff6f5;border-color:#cf958b}
.cv-page-add{border-color:#9fc2ad;color:#276b49;background:#f8fcf9}
.cv-page-add:hover{background:#edf7f1;border-color:#75a78a}
.cv-format-inline{justify-self:end;white-space:nowrap;padding:5px 9px!important;font-size:9px!important}
.cv-left-form{gap:9px}
.cv-rich-field.is-body{margin-bottom:0}
.cv-rich-media-row{display:flex;align-items:center;gap:7px;min-height:38px;margin:-5px 4px 1px;padding:6px 8px;border:1px solid #d7e3db;border-top:0;border-radius:0 0 8px 8px;background:#fbfdfb;min-width:0}
.cv-rich-attach{display:inline-flex;align-items:center;gap:6px;flex:none;cursor:pointer;color:#356b50;font-size:9.5px;font-weight:750}
.cv-rich-attach>span:first-child{font-size:16px;line-height:1}
.cv-rich-attach input{display:none}
.cv-rich-media-chips{display:flex;gap:5px;min-width:0;overflow-x:auto;scrollbar-width:none}
.cv-rich-media-chips::-webkit-scrollbar{display:none}
.cv-rich-media-chip{display:flex;align-items:center;gap:5px;max-width:180px;flex:none;padding:4px 6px;border:1px solid #dae5de;border-radius:6px;background:#fff;font-size:8.5px;color:#60766a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cv-rich-media-chip button{flex:none;width:20px;height:20px;padding:0;border:0;background:transparent;color:#8b554d;font-size:14px}
.cv-phone-preview{padding-bottom:10px}
.cv-button-builder{width:100%;max-width:370px;flex:none;margin-top:8px;padding-top:9px;border-top:1px solid #d8e3dc}
.cv-button-builder-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:5px}
.cv-button-builder-head b{display:block;font-size:10.5px;color:#2e533f}
.cv-button-builder-head small{display:block;margin-top:2px;font-size:8px;color:#7b8c82}
.cv-preview-button-list{display:grid;gap:5px;max-height:96px;overflow:auto;scrollbar-width:thin}
.cv-preview-button-row{display:grid;grid-template-columns:minmax(0,1fr) 30px;gap:5px;align-items:center;border:1px solid #dae5de;border-radius:8px;background:#fbfdfb;padding:2px}
.cv-preview-button-edit{min-width:0;min-height:32px;padding:5px 7px;border:0;background:transparent;text-align:left}
.cv-preview-button-edit b,.cv-preview-button-edit small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cv-preview-button-edit b{font-size:9.5px;color:#315943}
.cv-preview-button-edit small{margin-top:2px;font-size:8px;color:#73857a}
.cv-preview-button-remove{width:28px;height:28px;padding:0;border:0;background:transparent;color:#925149;font-size:17px}
.cv-add-preview-button{width:100%;min-height:36px;margin-top:6px;border:1px dashed #78a68b;border-radius:8px;background:#f7fbf8;color:#2c6d4c;font-size:10px;font-weight:800}
.cv-add-preview-button:hover{background:#edf7f1}
.cv-add-preview-button:disabled{opacity:.48;cursor:not-allowed}
.cv-button-builder-hint{margin:5px 2px 0;font-size:8.5px;line-height:1.4;color:#75887c}
.cv-button-dialog{width:min(460px,calc(100vw - 28px));max-width:460px;padding:0;border:1px solid #cfdcd4;border-radius:12px;background:#fff}
.cv-button-dialog[open]{display:flex;flex-direction:column}
.cv-button-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:13px 15px;border-bottom:1px solid #e1e8e3}
.cv-button-dialog>header h2{margin:0;font-size:15px;color:#294b39}
.cv-button-dialog>header small{display:block;margin-top:3px;font-size:9px;color:#7b8c82}
.cv-button-dialog>header>button{width:34px;height:34px;padding:0;font-size:22px}
.cv-button-dialog-body{display:grid;gap:9px;padding:14px 15px}
.cv-button-dialog-body .field{margin:0}
.cv-button-dialog-body input,.cv-button-dialog-body select{min-height:36px}
.cv-button-dialog-hint{margin:0;font-size:9px;line-height:1.45;color:#718479}
.cv-button-dialog>footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 15px;border-top:1px solid #e1e8e3}
.cv-button-dialog>footer>div{display:flex;gap:7px}
.cv-button-dialog>footer button{min-width:86px;min-height:34px}
.cv-button-dialog>footer .danger{color:#98493f;border-color:#dfb5ae;background:#fff8f7}
@media(max-width:650px){
 .cv-fields .cv-page-nav{grid-template-columns:38px minmax(96px,1fr) 38px 34px 34px;gap:4px}
 .cv-format-inline{grid-column:1/-1;justify-self:end;height:30px!important;min-height:30px!important}
 .cv-rich-media-row{align-items:flex-start;flex-direction:column}
 .cv-rich-media-chips{width:100%}
 .cv-button-builder{max-width:310px}
 .cv-preview-button-list{max-height:126px}
 .cv-button-dialog>footer{align-items:stretch}
 .cv-button-dialog>footer>div{flex:1}
 .cv-button-dialog>footer>div button{flex:1;min-width:0}
}


/* Carousel editor v3: compact inner layout only. Dialog size is shared by all carousel tabs. */
.app-visual-dialog.is-app-editor[data-app-tab="time"] .app-editor-body{
 overflow:auto;
 padding:16px 18px
}
.carousel-two-tabs{display:grid!important;grid-template-columns:1fr 1fr;gap:6px!important}
.carousel-two-tabs button{min-width:0}
.carousel-editor-footer{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;min-height:52px!important;padding:9px 16px!important}
.carousel-editor-footer>small{font-size:9px;color:#718278}
.carousel-editor-footer .studio-actions{margin-left:auto;display:flex;align-items:center;gap:7px}
.carousel-editor-footer button{min-height:34px!important;padding:7px 11px!important;font-size:10px!important}
.carousel-time-compact{display:grid;gap:12px}
.carousel-bot-section,.carousel-schedule-compact{border:1px solid #d9e5dd;border-radius:11px;background:#fbfdfb;padding:13px 14px}
.carousel-compact-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}
.carousel-compact-heading h3{margin:0;font-size:14px;color:#294b39}
.carousel-compact-heading p{margin:3px 0 0;max-width:600px;font-size:9.5px;line-height:1.4;color:#718278}
.carousel-bot-controls{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:6px;align-items:center}
.carousel-bot-controls select,.carousel-bot-controls button{height:34px;min-height:34px;font-size:9.5px}
.carousel-bot-controls select{min-width:0;width:100%}
.carousel-bot-controls button{white-space:nowrap;padding:5px 9px}
.carousel-bot-status{margin-top:6px;min-height:14px;font-size:9px;line-height:1.35;color:#74867a}
.carousel-bot-status.is-ready{color:#26724c;font-weight:800}
.carousel-schedule-compact{display:grid;gap:0}
.carousel-timing-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:10px 0;border-top:1px solid #e7eee9}
.carousel-timing-row:first-of-type{border-top:0}
.carousel-timing-row>b,.carousel-timing-row>div>b{display:block;font-size:11px;color:#315943}
.carousel-timing-row>div>small{display:block;margin-top:3px;font-size:8.8px;line-height:1.35;color:#75877c}
.carousel-number-unit{display:grid!important;grid-template-columns:72px 94px!important;gap:5px!important;align-items:center}
.carousel-number-unit input,.carousel-number-unit select{width:100%!important;height:34px!important;min-height:34px!important;padding:5px 7px!important;font-size:10px!important}
.carousel-number-unit input{text-align:center;font-variant-numeric:tabular-nums}
.carousel-auto-delete{display:grid;grid-template-columns:22px minmax(0,1fr);gap:8px;align-items:start;margin-top:2px;padding:9px 10px;border-radius:8px;background:#eef7f1;color:#315c45}
.carousel-auto-delete>span{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#dcefe3;color:#217047;font-weight:900;font-size:10px}
.carousel-auto-delete b,.carousel-auto-delete small{display:block}
.carousel-auto-delete b{font-size:9.5px}
.carousel-auto-delete small{margin-top:2px;font-size:8.5px;line-height:1.35;color:#60786a}
@media(max-width:650px){
 .carousel-two-tabs{grid-template-columns:1fr}
 .carousel-editor-footer{align-items:stretch;flex-direction:column}
 .carousel-editor-footer .studio-actions{width:100%;margin:0}
 .carousel-editor-footer .studio-actions button{flex:1}
 .carousel-bot-controls{grid-template-columns:1fr 1fr}
 .carousel-bot-controls select{grid-column:1/-1}
 .carousel-timing-row{grid-template-columns:1fr;gap:7px}
 .carousel-number-unit{grid-template-columns:82px 1fr!important;justify-self:start}
}


/* Carousel editor v4: one stable modal for both tabs + real Telegram button rows. */
.app-visual-dialog.is-app-editor:not(.review-collector-dialog)[open]{
 width:min(980px,calc(100vw - 40px))!important;
 height:min(720px,calc(100dvh - 40px))!important;
 min-height:0!important;
 max-height:calc(100dvh - 40px)!important
}
.app-visual-dialog.is-app-editor:not(.review-collector-dialog) .app-editor-body{
 flex:1 1 auto!important;
 min-height:0!important
}
.app-visual-dialog.is-app-editor:not(.review-collector-dialog)[data-app-tab="time"] .app-editor-body{
 flex:1 1 auto!important;
 padding:16px 18px!important
}
.cv-buttons{display:flex!important;flex-direction:column;gap:4px!important}
.cv-button-preview-line{display:flex;gap:4px;min-width:0}
.cv-button-preview-line>button{flex:1;min-width:0}
.cv-phone .cv-buttons button:last-child:nth-child(odd){grid-column:auto}
.cv-button-dialog-body #cv-button-row{max-width:160px}
@media(max-width:650px){
 .app-visual-dialog.is-app-editor:not(.review-collector-dialog)[open]{
  width:calc(100vw - 20px)!important;
  height:calc(100dvh - 20px)!important;
  max-height:calc(100dvh - 20px)!important
 }
 .cv-button-preview-line{flex-wrap:wrap}
 .cv-button-preview-line>button{min-width:calc(50% - 2px)}
}


/* Carousel editor v6: body modes, media library, upload progress and run status. */
.cv-body-mode{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;border-radius:9px;background:#eef4f0}
.cv-body-mode button{min-height:34px;padding:6px 8px;border:1px solid transparent;border-radius:7px;background:transparent;color:#526d5e;font-size:10px;font-weight:750}
.cv-body-mode button:hover{background:#f8fbf9}
.cv-body-mode button.active{background:#fff;border-color:#c9dbd0;color:#1f6846;box-shadow:0 1px 4px rgba(35,67,48,.08)}
.cv-body-mode-panel{min-height:96px}
.cv-body-photo{min-height:108px;display:grid;place-items:center;padding:10px;border:1px dashed #9fb9aa;border-radius:9px;background:#f8fbf9;text-align:center;color:#61766a}
.cv-body-photo.has-photo{grid-template-columns:150px minmax(0,1fr);place-items:center start;gap:10px;text-align:left;border-style:solid}
.cv-body-photo img{width:150px;height:92px;object-fit:cover;border-radius:7px;background:#e9f0ec}
.cv-body-photo b,.cv-body-photo small{display:block}
.cv-body-photo b{font-size:10px;color:#315943}
.cv-body-photo small{margin-top:3px;font-size:8.5px;line-height:1.35;color:#788a7f}
.cv-body-reviews{min-height:96px;display:grid;grid-template-columns:32px minmax(0,1fr);gap:9px;align-items:center;padding:10px 11px;border-left:4px solid #6e9f83;border-radius:4px 8px 8px 4px;background:#f6faf7}
.cv-body-reviews>span{font-size:27px;color:#5d9275}
.cv-body-reviews b,.cv-body-reviews small{display:block}
.cv-body-reviews b{font-size:10.5px;color:#315943}
.cv-body-reviews small{margin-top:4px;font-size:8.8px;line-height:1.45;color:#718479}
.cv-phone-preview{display:block!important;padding:10px 12px!important}
.cv-preview-workbench{height:100%;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 108px;gap:9px}
.cv-phone-column{display:flex;flex-direction:column;align-items:center;min-width:0;min-height:0}
.cv-phone-column>.cv-canvas-top{width:100%;max-width:292px}
.cv-preview-workbench .cv-phone{width:278px;max-width:100%;min-height:310px}
.cv-phone-column>.cv-canvas-help{max-width:292px;font-size:8.5px;margin:6px 0 0}
.cv-phone-column>.cv-button-builder{max-width:292px}
.cv-media-library{min-width:0;min-height:0;display:flex;flex-direction:column;padding-left:8px;border-left:1px solid #d3dfd7}
.cv-media-library-head{display:flex;align-items:flex-start;justify-content:space-between;gap:5px}
.cv-media-library-head b,.cv-media-library-head small{display:block}
.cv-media-library-head b{font-size:9.5px;color:#315943}
.cv-media-library-head small{margin-top:2px;font-size:7.5px;color:#7a8c81}
.cv-library-upload{width:27px;height:27px;display:grid;place-items:center;flex:none;border:1px dashed #72a184;border-radius:7px;background:#f7fbf8;color:#276a49;font-size:16px;font-weight:800;cursor:pointer}
.cv-library-upload:hover{background:#edf7f1}
.cv-library-upload input{display:none}
.cv-upload-progress{display:grid;gap:4px;margin-top:6px}
.cv-upload-task{padding:4px 5px;border:1px solid #dae5de;border-radius:6px;background:#fff}
.cv-upload-task>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:4px}
.cv-upload-task span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:7px;color:#64796d}
.cv-upload-task b{flex:none;font-size:7px;color:#367554}
.cv-upload-task.error b{color:#a24439}
.cv-upload-bar{height:3px;margin-top:3px;border-radius:4px;background:#e7eee9;overflow:hidden}
.cv-upload-bar i{display:block;height:100%;background:#5f9879;transition:width .15s linear}
.cv-upload-task.error .cv-upload-bar i{background:#b26055}
.cv-media-library-list{display:grid;gap:6px;align-content:start;margin-top:6px;min-height:0;overflow-y:auto;padding-right:2px;scrollbar-width:thin}
.cv-library-item{min-width:0;padding:4px;border:1px solid #d8e4dc;border-radius:8px;background:#fff}
.cv-library-item.is-selected{border:2px solid #4f8e6c;padding:3px;background:#f5fbf7}
.cv-library-thumb{display:block;width:100%;padding:0;border:0;background:transparent}
.cv-library-thumb img{display:block;width:100%;height:58px;object-fit:cover;border-radius:5px;background:#edf3ef}
.cv-library-item>b,.cv-library-item>small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cv-library-item>b{margin-top:3px;font-size:7.8px;color:#315943}
.cv-library-item>small{margin-top:1px;font-size:6.8px;color:#7a8b81}
.cv-library-use{width:100%;min-height:23px;margin-top:3px;padding:3px 4px;font-size:7px;color:#356c50}
.cv-library-item.is-selected .cv-library-use{background:#e8f4ec;border-color:#9fc5ad;font-weight:800}
.cv-library-empty{padding:9px 4px;border:1px dashed #c5d6cb;border-radius:7px;font-size:7.5px;line-height:1.4;text-align:center;color:#788a7f}
.cv-media-preview-dialog{width:min(760px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;border:1px solid #cddbd2;border-radius:12px;background:#fff}
.cv-media-preview-dialog[open]{display:flex;flex-direction:column}
.cv-media-preview-dialog>header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:12px 14px;border-bottom:1px solid #e1e8e3}
.cv-media-preview-dialog>header h2{margin:0;font-size:14px}
.cv-media-preview-dialog>header small{display:block;margin-top:2px;font-size:9px;color:#74867a}
.cv-media-preview-dialog>header button{width:34px;height:34px;padding:0;font-size:22px}
.cv-media-preview-dialog>div{display:grid;place-items:center;min-height:0;overflow:auto;padding:12px;background:#eef3f0}
.cv-media-preview-dialog img{max-width:100%;max-height:65dvh;object-fit:contain;border-radius:8px}
.cv-media-preview-dialog>footer{display:flex;justify-content:flex-end;padding:10px 14px;border-top:1px solid #e1e8e3}
.cv-media-preview-dialog>footer button{min-height:34px}
.cv-review-preview{margin:6px 0!important}
.cv-review-preview .cv-telegram-review{margin:0;font-size:10px}
.carousel-run-state{display:grid;grid-template-columns:24px minmax(0,1fr);gap:8px;align-items:center;padding:9px 11px;border:1px solid #d9e5dd;border-radius:9px;background:#f8fbf9}
.carousel-run-state>span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#e5eee8;color:#547263;font-size:9px}
.carousel-run-state b,.carousel-run-state small{display:block}
.carousel-run-state b{font-size:10px;color:#315943}
.carousel-run-state small{margin-top:2px;font-size:8.5px;line-height:1.35;color:#75877c}
.carousel-run-state.is-running{border-color:#a8cbb5;background:#f2faf5}
.carousel-run-state.is-running>span{background:#dcefe3;color:#217047}
.carousel-run-state.is-error{border-color:#dfb7b0;background:#fff8f7}
.carousel-run-state.is-error>span{background:#f5deda;color:#9a473d}
.carousel-editor-footer .danger{color:#98493f;border-color:#dfb5ae;background:#fff8f7}
@media(max-width:850px){
 .cv-preview-workbench{grid-template-columns:minmax(0,1fr) 94px}
 .cv-preview-workbench .cv-phone{width:260px}
 .cv-library-thumb img{height:52px}
}
@media(max-width:650px){
 .cv-preview-workbench{grid-template-columns:1fr}
 .cv-media-library{border-left:0;border-top:1px solid #d3dfd7;padding:8px 0 0;max-height:170px}
 .cv-media-library-list{display:flex;overflow-x:auto;overflow-y:hidden}
 .cv-library-item{flex:0 0 92px}
 .cv-body-photo.has-photo{grid-template-columns:110px minmax(0,1fr)}
 .cv-body-photo img{width:110px;height:72px}
}

.cv-body-mode-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:2px 0 -5px}.cv-body-mode-head b{font-size:11px;color:#315943}.cv-body-mode-head small{font-size:8.5px;color:#788a7f}


/* Carousel UX v7: obvious runtime control and upload affordance. */
.app-instance-actions{display:flex;gap:6px;align-items:center;margin-top:8px}
.app-instance-actions>button{flex:1;min-width:0}
.app-instance.is-running{border-color:#9fc7ad;background:#f6fbf8}
.app-instance.is-running>span{color:#24704b;font-weight:800}
.carousel-run-state.is-running,.carousel-run-state.is-error{grid-template-columns:24px minmax(0,1fr) auto}
.carousel-run-stop{min-height:30px!important;padding:5px 9px!important;font-size:9px!important;white-space:nowrap}
.cv-library-upload{min-width:54px!important;padding:5px 7px!important;font-size:8.5px!important;text-align:center}
.cv-upload-task{padding:4px 5px;border-radius:6px;background:#f7faf8;border:1px solid #e0e8e3}
.cv-upload-task>div:first-child{display:flex;justify-content:space-between;gap:5px;align-items:center}
.cv-upload-task span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:7.5px;color:#63796c}
.cv-upload-task b{flex:none;font-size:7.5px;color:#326c4c}
.cv-upload-bar{height:3px;margin-top:4px;border-radius:999px;background:#e1ebe5;overflow:hidden}
.cv-upload-bar>i{display:block;height:100%;background:#4f9570;transition:width .12s linear}
.cv-upload-task.done .cv-upload-bar>i{background:#37845d}
.cv-upload-task.error .cv-upload-bar>i{background:#b05c50}
@media(max-width:650px){
 .app-instance-actions{flex-direction:column}
 .app-instance-actions>button{width:100%}
 .carousel-run-state.is-running,.carousel-run-state.is-error{grid-template-columns:24px minmax(0,1fr)}
 .carousel-run-stop{grid-column:2;justify-self:start}
}


/* Carousel UX v8: inline photo upload and review-source selector. */
.cv-preview-workbench{grid-template-columns:1fr!important}
.cv-media-library{display:none!important}
.cv-body-mode{grid-template-columns:minmax(0,.8fr) minmax(0,.8fr) minmax(140px,1.4fr)}
.cv-page-photo-slot{position:relative;display:block;min-height:154px;border:1px dashed #9ebdac;border-radius:10px;background:#f8fbf9;overflow:hidden;cursor:pointer}
.cv-page-photo-slot>input{display:none}
.cv-page-photo-content{min-height:154px;display:grid;place-items:center;position:relative}
.cv-page-photo-empty{display:grid;place-items:center;gap:5px;color:#557565;text-align:center}
.cv-page-photo-empty>span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#e4f0e8;color:#286c4a;font-size:25px;line-height:1}
.cv-page-photo-empty>b{font-size:11px;color:#315943}
.cv-page-photo-empty>small{font-size:8.5px;color:#7a8c81}
.cv-page-photo-slot.has-photo{border-style:solid;border-color:#c9d9d0;background:#eef5f1}
.cv-page-photo-slot.has-photo img{display:block;width:100%;height:174px;object-fit:contain;background:#e8efeb}
.cv-page-photo-slot.has-photo .cv-page-photo-content>small{position:absolute;left:8px;bottom:7px;max-width:calc(100% - 16px);padding:3px 6px;border-radius:5px;background:rgba(25,46,35,.68);color:#fff;font-size:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cv-page-photo-overlay{position:absolute;inset:0;display:grid;place-items:center;background:rgba(24,48,35,.0);color:transparent;font-size:11px;font-weight:800;transition:background .18s ease,color .18s ease}
.cv-page-photo-slot.has-photo:hover .cv-page-photo-overlay{background:rgba(24,48,35,.48);color:#fff}
.cv-photo-upload-progress{position:absolute;left:10px;right:10px;bottom:10px;z-index:3;pointer-events:none}
.cv-page-photo-progress{padding:7px 8px;border:1px solid #c5d7cc;border-radius:8px;background:rgba(255,255,255,.95);box-shadow:0 5px 14px rgba(30,57,42,.12)}
.cv-page-photo-progress>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:10px}
.cv-page-photo-progress b{font-size:9px;color:#315943}
.cv-page-photo-progress span{font-size:8.5px;color:#547263;white-space:nowrap}
.cv-page-photo-progress.done{border-color:#9fc5ad}
.cv-page-photo-progress.error{border-color:#dfb2ab}
.cv-body-reviews{grid-template-columns:34px minmax(0,1fr) auto;align-items:center}
.cv-body-reviews-copy{min-width:0}
.cv-body-reviews-copy b,.cv-body-reviews-copy small,.cv-body-reviews-copy em{display:block}
.cv-body-reviews-copy small{margin-top:3px;font-size:9px;color:#60766a}
.cv-body-reviews-copy em{margin-top:4px;font-size:8.3px;line-height:1.4;color:#819087;font-style:normal}
.cv-body-reviews>button{min-height:34px;padding:6px 9px;white-space:nowrap;font-size:9px}
.cv-review-source-dialog{width:min(620px,calc(100vw - 28px));max-height:min(700px,calc(100dvh - 28px));padding:0;border:1px solid #cad9d0;border-radius:12px;background:#fff}
.cv-review-source-dialog[open]{display:flex;flex-direction:column}
.cv-review-source-dialog>header{display:flex;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid #e0e8e3}
.cv-review-source-dialog>header h2{margin:0;font-size:15px;color:#294b39}
.cv-review-source-dialog>header small{display:block;margin-top:3px;font-size:9px;line-height:1.4;color:#76887d}
.cv-review-source-dialog>header>button{width:34px;height:34px;padding:0;font-size:21px}
.cv-review-source-body{padding:13px 16px;overflow:auto;min-height:0}
.cv-review-source-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px;border-radius:8px;background:#eef6f1;margin-bottom:8px}
.cv-review-source-summary b{font-size:10px;color:#315943}
.cv-review-source-summary span{font-size:9px;color:#60766a}
.cv-review-source-list{display:grid;gap:6px}
.cv-review-source-row{display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:8px;align-items:center;padding:9px 10px;border:1px solid #d9e4dd;border-radius:8px;background:#fbfdfb;cursor:pointer}
.cv-review-source-row:hover{border-color:#aac7b6;background:#f6faf7}
.cv-review-source-row input{width:16px;height:16px;margin:0}
.cv-review-source-row b,.cv-review-source-row small{display:block}
.cv-review-source-row b{font-size:10px;color:#315943}
.cv-review-source-row small{margin-top:2px;font-size:8.5px;color:#74867b}
.cv-review-source-row em{font-size:8px;color:#829087;font-style:normal;white-space:nowrap}
.cv-review-source-row.is-empty{opacity:.55;cursor:default}
.cv-review-source-body>p{margin:10px 0 0;font-size:8.7px;line-height:1.5;color:#718479}
.cv-review-source-dialog>footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 16px;border-top:1px solid #e0e8e3}
.cv-review-source-dialog>footer>div{display:flex;gap:7px}
.cv-review-source-dialog>footer button{min-height:34px;padding:6px 10px;font-size:9px}
@media(max-width:650px){
 .cv-body-mode{grid-template-columns:1fr}
 .cv-page-photo-slot,.cv-page-photo-content{min-height:132px}
 .cv-page-photo-slot.has-photo img{height:150px}
 .cv-body-reviews{grid-template-columns:30px 1fr}
 .cv-body-reviews>button{grid-column:2;justify-self:start}
 .cv-review-source-row{grid-template-columns:18px 1fr}
 .cv-review-source-row em{grid-column:2;white-space:normal}
 .cv-review-source-dialog>footer{align-items:stretch;flex-direction:column}
 .cv-review-source-dialog>footer>div{width:100%}
 .cv-review-source-dialog>footer>div button{flex:1}
}
