:root{font-family:Inter,"PingFang SC","Microsoft YaHei",sans-serif;color:#222326;background:#f5f2ec}*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,4vw,72px);background:#fcfbf8;border-bottom:1px solid #e6e1d9}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;color:#252526;font-size:21px;font-weight:700}.brand small{display:block;font-size:11px;font-weight:500;letter-spacing:.18em;color:#8b8985}.brand-mark{background:#b14a32;color:#fff;width:42px;height:42px;display:grid;place-items:center;font:700 17px Georgia,serif;border-radius:12px}.top-actions{display:flex;align-items:center;gap:20px;color:#69645e;font-size:13px}.identity{color:#ab4b35}.text-button{border:0;background:transparent;color:#7b4b3d;text-decoration:underline}.entry-panel{max-width:760px;margin:clamp(45px,11vh,128px) auto 30px;padding:60px clamp(24px,6vw,68px);background:#fff;border:1px solid #ece7df;border-radius:24px;box-shadow:0 18px 55px #45352b0b}.eyebrow{margin:0 0 15px;color:#b3563d;font-size:11px;font-weight:800;letter-spacing:.22em}.entry-panel h1,.sidebar h1{font-family:Georgia,"Noto Serif SC",serif;font-weight:500;letter-spacing:.02em}.entry-panel h1{font-size:clamp(32px,5vw,52px);margin:0 0 18px}.entry-panel>p:not(.eyebrow){line-height:1.8;color:#6e6964}.entry-actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0}.primary,.secondary{border-radius:12px;border:1px solid #ad4e35;padding:12px 22px;font-weight:650}.primary{background:#ad4e35;color:white}.secondary{background:#fff;color:#9f4933}.primary:hover{background:#8f3e29}.secondary:hover{background:#fff3ed}.entry-note{font-size:12px}#activationForm,#accountForm{display:grid;gap:12px;margin-top:28px}#activationForm input,#accountForm input{padding:13px 15px;border:1px solid #d8d0c8;border-radius:9px;background:white;min-width:0}#activationForm label,#accountForm label{font-size:13px;font-weight:650}#activationForm .primary{margin-top:10px}.guide{height:calc(100vh - 76px);min-height:600px;display:grid;grid-template-columns:minmax(250px,340px) minmax(0,1fr)}.sidebar{padding:40px 30px;background:#ede7df;border-right:1px solid #e4dacf;display:flex;flex-direction:column}.sidebar h1{font-size:31px;line-height:1.25;margin:0}.subtle{line-height:1.7;color:#77716a;font-size:13px}.scenario-list{display:grid;gap:10px;margin-top:26px}.scenario-list button{display:flex;justify-content:space-between;align-items:center;border:1px solid #d9cfc3;border-radius:13px;background:#f9f6f1;text-align:left;padding:16px;color:#383331;font-weight:650}.scenario-list button:hover{border-color:#b65d45;background:white}.scenario-list span{color:#ad4e35}.journey-actions{margin-top:auto;display:grid;gap:14px;color:#82786f;font-size:12px}.conversation{position:relative;min-width:0;display:flex;flex-direction:column;background:#fcfbf8}.messages{flex:1;overflow:auto;padding:26px clamp(18px,5vw,70px);display:flex;flex-direction:column;gap:20px}.welcome{text-align:center;margin:auto;color:#615c56;max-width:410px}.welcome>span{font-size:42px;color:#b45e47}.welcome h2{font-family:Georgia,"Noto Serif SC",serif;font-weight:500;color:#33302d}.welcome p{line-height:1.7;font-size:13px}.message{display:flex;gap:10px;max-width:min(760px,100%)}.message.user{align-self:flex-end;flex-direction:row-reverse}.avatar{flex:none;width:30px;height:30px;border-radius:50%;background:#e2c9ba;color:#8f3e29;display:grid;place-items:center;font-size:14px}.message.user .avatar{background:#ae4c34;color:white}.message-body{min-width:0}.bubble{padding:14px 18px;background:white;border:1px solid #ede7de;border-radius:16px;box-shadow:0 4px 15px #372c2207;white-space:pre-wrap;line-height:1.65}.user .bubble{background:#ae4c34;color:#fff;border-color:#ae4c34}.bubble p{margin:0}.bubble-images{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:10px;margin-top:10px}.bubble-images img{display:block;max-width:100%;max-height:270px;object-fit:contain;border-radius:9px}.candidate-card{border:1px solid #e7d8cc;background:#faf8f5;border-radius:10px;padding:7px;text-align:left;color:#333;max-width:240px}.candidate-card:hover{border-color:#ac5339;transform:translateY(-2px)}.candidate-caption{display:block;font-size:11px;padding:7px 2px 2px;line-height:1.4}.workflow-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.workflow-action{background:#fff8f4;border:1px solid #d8b5a5;color:#8c432f;border-radius:99px;padding:7px 13px;font-size:12px}.message-meta{font-size:10px;color:#918980;margin-top:5px}.composer{border-top:1px solid #eee8df;padding:14px clamp(18px,5vw,70px) 17px;background:#fff}.composer-main{display:flex;gap:10px;align-items:end;border:1px solid #ded7cf;border-radius:16px;padding:7px;background:#fff}.composer textarea{resize:none;border:0;outline:0;flex:1;min-width:0;max-height:130px;padding:10px 2px;line-height:1.5}.composer .primary{border-radius:11px;padding:10px 18px}.icon-button{border:0;background:transparent;border-radius:9px;padding:7px;color:#9b4e38;font-size:24px;line-height:1}.icon-button.recording{background:#f6d9d0}.hint{margin:8px 3px 0;font-size:11px;color:#99918a}.previews{display:flex;gap:7px;overflow:auto;margin-bottom:10px}.preview-item{position:relative}.preview-item img{height:70px;width:70px;object-fit:cover;border-radius:8px}.preview-item button{position:absolute;right:1px;top:1px;border:0;border-radius:50%;background:#fff;color:#822;font-weight:700}.drop-overlay{position:absolute;inset:12px;z-index:5;background:#fff8efeb;border:2px dashed #ad4e35;border-radius:18px;display:grid;place-items:center;color:#ad4e35;font-size:22px;font-weight:700;pointer-events:none}.toast{position:fixed;bottom:30px;left:50%;transform:translate(-50%,15px);padding:11px 20px;border-radius:11px;background:#333;color:white;opacity:0;transition:.2s;pointer-events:none;z-index:20;font-size:13px}.toast.show{opacity:1;transform:translate(-50%,0)}[hidden]{display:none!important}@media(max-width:780px){.topbar{height:64px;padding:0 16px}.top-actions #storeName{display:none}.guide{height:calc(100vh - 64px);min-height:0;grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.sidebar{padding:13px 18px}.sidebar h1,.sidebar .subtle,.sidebar .eyebrow{display:none}.scenario-list{display:flex;overflow:auto;margin:0;gap:7px}.scenario-list button{flex:none;padding:9px 11px;font-size:12px}.journey-actions{display:none}.messages{padding:15px}.composer{padding:10px 12px}.entry-panel{margin:25px 12px;padding:34px 22px}}

/* Keep the store controls in view while the conversation alone scrolls. */
body.guide-active{height:100dvh;min-height:0;overflow:hidden;display:flex;flex-direction:column}
body.guide-active .topbar{flex:none;position:relative;z-index:10}
body.guide-active main{flex:1;min-height:0}
body.guide-active .guide{height:100%;min-height:0}
.sidebar,.conversation,.messages{min-height:0}
.sidebar{overflow-y:auto}
.messages{overflow-y:auto;overscroll-behavior:contain;overflow-anchor:none;scroll-behavior:auto}
.messages>.message{flex-shrink:0}
.leave-button{border:1px solid #a9432a;border-radius:999px;background:#ad4e35;color:#fff;padding:10px 16px;font-size:13px;font-weight:700;white-space:nowrap;box-shadow:0 3px 12px #7d2e2222}
.leave-button:hover{background:#903d27}
.leave-button:focus-visible,.candidate-preview:focus-visible,.candidate-select:focus-visible,.browse-actions button:focus-visible{outline:3px solid #bd7046;outline-offset:2px}
.candidate-card{display:flex;flex-direction:column;min-width:0;transition:border-color .15s}
.candidate-card:hover{transform:none}
.candidate-preview{display:block;border:0;background:transparent;padding:0;width:100%;text-align:center;cursor:zoom-in}
.candidate-preview{height:240px;overflow:hidden}
.candidate-preview img{width:100%;height:100%;max-height:100%;margin:auto;object-fit:contain}
.candidate-footer{display:flex;align-items:center;justify-content:space-between;gap:9px;min-height:44px}
.candidate-caption{min-width:0;overflow-wrap:anywhere}
.candidate-select{flex:none;width:38px;height:38px;border:1px solid #a9432a;border-radius:50%;background:#ad4e35;color:#fff;font-weight:800;font-size:18px;display:grid;place-items:center}
.candidate-select:hover{background:#903d27}
.browse-actions{display:flex;gap:8px;margin-top:9px;flex-wrap:wrap}
.browse-actions button{border:1px solid #d8b5a5;background:#fff8f4;color:#8c432f;border-radius:99px;padding:7px 14px;font-size:12px;font-weight:650}
.browse-actions button:hover{background:#fcebe3}
.image-preview-dialog{border:0;border-radius:18px;padding:14px;background:#fff;box-shadow:0 20px 70px #18100f66;width:min(92vw,800px);max-height:92dvh}
.image-preview-dialog::backdrop{background:#1a1615b8}
.image-preview-heading,.image-preview-controls{display:flex;align-items:center;justify-content:space-between;gap:12px}
.image-preview-heading{margin-bottom:10px;color:#292524}
.image-preview-heading strong{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.image-preview-heading button{border:0;background:#f4eae4;border-radius:50%;width:34px;height:34px;font-size:22px;color:#7b3726}
.image-preview-dialog img{display:block;max-width:100%;max-height:calc(92dvh - 125px);margin:auto;object-fit:contain}
.image-preview-controls{margin-top:12px;font-size:12px;color:#756962}
.image-preview-controls button{border:1px solid #d8b5a5;background:#fff8f4;color:#8c432f;border-radius:99px;padding:7px 12px}
@media(max-width:780px){.top-actions{gap:8px}.identity{display:none}.leave-button{padding:8px 10px;font-size:12px}.sidebar{overflow:visible}.scenario-list{scrollbar-width:thin}.guide-active .conversation{min-height:0}.browse-actions{padding-right:4px}}

/* Keep the existing diagnostics reachable in narrow browser panels. */
@media(max-width:780px){.journey-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.journey-actions .secondary{padding:7px 10px;font-size:12px}}

/* Customer choices: one clear next step, secondary choices remain accessible. */
.workflow-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:14px;max-width:680px}
.workflow-heading{flex-basis:100%;font-size:13px;color:#746158}
.workflow-action{min-height:44px;padding:10px 18px;font-size:14px;font-weight:650;border-radius:12px;background:#fff;border:1px solid #d8b5a5;color:#713d2e}
.workflow-action.is-primary{background:#ad4e35;color:#fff;border-color:#ad4e35;box-shadow:0 4px 12px #ad4e351f}
.workflow-action.is-primary:hover{background:#903d27}
.workflow-more{display:flex;gap:8px}
.workflow-more summary{cursor:pointer;padding:12px;color:#75645b;font-size:13px}
.workflow-more[open]{flex-basis:100%;padding-top:3px}
.workflow-more .workflow-action{margin:5px 8px 0 0}
.candidate-select{width:auto;min-width:72px;min-height:42px;height:auto;border-radius:22px;font-size:13px;padding:8px 12px}

.current-photo-card{margin:20px 0;padding:16px;border:1px solid #d9cfc3;border-radius:14px;background:#f9f6f1}
.current-photo-card strong{font-size:14px}.current-photo-card button{width:100%;padding:12px;font-size:13px}
.current-photo-card .current-photo-preview{padding:0}.current-photo-card .photo-card-actions button{width:auto;padding:9px 12px;font-size:12px}
.camera-entry{flex:none;min-height:44px;padding:8px 13px;border:1px solid #d8b5a5;background:#fff8f4;color:#8c432f;border-radius:12px;font-weight:650}
.photo-source-dialog,.camera-dialog{width:min(94vw,850px);max-height:94dvh;overflow:auto;border:0;border-radius:22px;padding:24px;background:#fcfbf8;box-shadow:0 20px 70px #18100f66}
.photo-source-dialog::backdrop,.camera-dialog::backdrop{background:#1a1615b8}
.photo-source-dialog h2,.camera-dialog h2{margin:0;font-size:24px}.source-photo-preview{display:block;max-width:100%;max-height:48dvh;margin:18px auto;object-fit:contain;border-radius:14px}
.source-photo-preview[hidden],.camera-stage [hidden],.current-photo-card[hidden]{display:none}
.camera-stage{position:relative;display:grid;place-items:center;min-height:220px;background:#211c1a;border-radius:16px;overflow:hidden}
.camera-stage video,.camera-stage img{max-width:100%;width:100%;height:min(52dvh,580px);object-fit:contain}
.camera-countdown{position:absolute;inset:0;display:grid;place-items:center;font-size:100px;color:#fff;font-weight:800;background:#0003}
.camera-dialog .entry-actions,.photo-source-dialog .entry-actions{margin:20px 0 0}.camera-dialog .primary,.photo-source-dialog .primary{min-height:52px}
@media(min-width:1200px){.photo-source-dialog .primary,.camera-dialog .primary{font-size:17px;padding:16px 26px}.camera-entry{padding:10px 16px}}
.current-photo-preview{display:block;width:100%;border:0;padding:0;background:#ece4db;border-radius:12px;overflow:hidden;margin:12px 0;cursor:zoom-in}
.current-photo-preview img{display:block;width:100%;height:156px;object-fit:contain}
.photo-card-actions{display:flex;flex-wrap:wrap;gap:8px}.photo-card-actions button{font-size:12px;padding:9px 12px}
.preference-summary-card{margin-top:16px;padding:15px;border:1px solid #dcd0c3;border-radius:14px;background:#f8f5f0}.preference-summary-card strong{font-size:14px}.preference-summary-card p{margin:8px 0 0;font-size:12px;line-height:1.7}
.candidate-tags{display:flex;gap:5px;flex-wrap:wrap;margin:9px 0}.candidate-tag{font-size:11px;padding:4px 7px;border-radius:6px;background:#f1ebe4;color:#62534b}.candidate-explanation{font-size:12px;color:#78675d;line-height:1.65;margin:6px 0 10px}.candidate-material{font-size:11px;color:#887e75;margin:5px 0}
.candidate-controls{display:flex;gap:8px;align-items:center;justify-content:space-between;margin-top:10px}.candidate-dislike{border:1px solid #e4d6ca;border-radius:18px;padding:8px 12px;background:#fff;color:#835542;font-size:12px;cursor:pointer}.candidate-dislike:hover{background:#f4e7df}
.feedback-reasons{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.feedback-reason{position:relative;cursor:pointer}.feedback-reason input{position:absolute;opacity:0}.feedback-reason span{display:block;border:1px solid #d8c9bc;border-radius:22px;padding:10px 14px;color:#66534a;font-size:13px}.feedback-reason input:checked+span{background:#a64d34;color:#fff;border-color:#a64d34}.feedback-reason input:focus-visible+span{outline:3px solid #db9e83;outline-offset:2px}
.workflow-heading{flex-basis:100%}.workflow-more summary{font-weight:600}.candidate-card{min-width:0}.candidate-footer{align-items:flex-start;flex-wrap:wrap}
.outfit-history-list{display:grid;gap:16px;max-height:58vh;overflow:auto}.outfit-history-card{border:1px solid #e2d7cd;border-radius:12px;padding:12px}.outfit-history-card img{display:block;max-width:100%;height:180px;object-fit:contain;margin:auto}.outfit-history-card p{font-size:13px;line-height:1.6}
.feedback-reasons{display:grid;grid-template-columns:1fr;gap:10px}
.feedback-group{border:1px solid #e2d5c9;border-radius:12px;background:#fcfaf7;overflow:hidden}
.feedback-group summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 16px;cursor:pointer;font-size:15px;font-weight:650;list-style:none}
.feedback-group summary::-webkit-details-marker{display:none}
.feedback-group-count{font-size:12px;font-weight:400;color:#846f61}
.feedback-group[open] summary{border-bottom:1px solid #eadfd5}.feedback-group.has-selection{border-color:#b86145;background:#fff5ee}
.feedback-group-options{display:flex;flex-wrap:wrap;gap:8px;padding:14px}.feedback-group-options .feedback-reason span{font-size:13px;border-radius:10px}
.idle-notice{position:fixed;top:86px;left:50%;transform:translateX(-50%);z-index:1000;display:flex;align-items:center;gap:18px;max-width:90vw;padding:14px 20px;background:#fff5df;border:1px solid #dfbf83;border-radius:14px;box-shadow:0 6px 22px #40201624;color:#653d22}.idle-notice[hidden]{display:none}.idle-notice button{white-space:nowrap}@media(max-width:600px){.idle-notice{width:90vw;box-sizing:border-box;flex-wrap:wrap;top:78px}}

/* Query controls and request recovery remain available beside the current journey. */
#conditionFields label{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:8px 0}#conditionFields select{max-width:65%;padding:8px;border:1px solid #d8ddd9;border-radius:8px;background:white}.color-group-heading{grid-column:1/-1;font-weight:600;margin:12px 0 4px}.task-status{padding:12px 18px;background:#f1f5f2;border-radius:12px;display:flex;gap:12px;align-items:center;justify-content:space-between}.task-status[hidden],[data-color-group][hidden]{display:none!important}

#recognitionCanvas{width:100%;height:auto;cursor:crosshair;border-radius:12px;background:#f4f4f4} .recognition-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.recognition-fields label{display:flex;flex-direction:column;gap:4px}.recognition-photo{display:flex;flex-direction:column;gap:8px;margin:12px 0}.recognition-photo p{font-size:12px;color:var(--muted)}#photoRecognitionDialog .entry-actions{flex-wrap:wrap}@media(max-width:600px){.recognition-fields{grid-template-columns:1fr}}

.recognition-extras summary{cursor:pointer;font-size:12px;color:var(--muted);padding:6px 0}.recognition-extras[open]{display:flex;flex-direction:column;gap:8px}.recognition-extras button{margin:4px 0;width:100%}
.recognition-quick-colors{display:flex;gap:8px;flex-wrap:wrap;margin:15px 0}.recognition-main-actions{margin:18px 0}.recognition-inline{padding:18px;max-width:720px}.recognition-inline p{line-height:1.7;margin:10px 0}.recognition-inline button{margin:4px 8px 4px 0}#recognitionAdvanced{margin-top:16px}#recognitionAdvanced summary{cursor:pointer;color:#806c62;font-size:13px;padding:8px 0}

.more-tools{margin-top:16px;border-top:1px solid var(--line,#ddd);padding-top:12px}.more-tools>summary{cursor:pointer;font-weight:600;padding:8px 0}.recognition-inline .secondary{margin:6px 6px 0 0}.recognition-question{font-weight:600}.recognition-inline details{margin-top:12px}.recognition-inline input{max-width:100%;padding:8px;border:1px solid #ddd;border-radius:8px}
.recognition-inline>strong{display:block;margin-bottom:8px}

.pipeline-preview-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.pipeline-preview-gallery figure{margin:0}.pipeline-preview-gallery img{width:100%;height:180px;object-fit:contain;border-radius:10px;background:#f4f2ef}.pipeline-preview-gallery figcaption{font-size:12px;margin-top:6px}@media(max-width:600px){.pipeline-preview-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.pipeline-preview-gallery img{height:140px}}
.candidate-color-panel{margin:8px 0 10px;font-size:12px;color:var(--muted,#706860)}
.message.has-candidate-colors{width:100%;align-self:stretch}
.message.has-candidate-colors .message-body{flex:1;min-width:0}
.message.has-candidate-colors .bubble{width:100%}
.message.has-candidate-colors .bubble-images{grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr))}
.candidate-color-rows{display:flex;gap:10px;align-items:flex-start}
.candidate-color-group{flex:1;min-width:0}
.candidate-color-title{display:block;margin-bottom:5px;font-weight:600;color:var(--ink,#312d29)}
.candidate-color-strip{display:flex;height:14px;border:1px solid #d6cec6;border-radius:4px;overflow:hidden}
.candidate-color-strip>span{min-width:12px;flex-basis:0}
.candidate-color-names{display:block;margin-top:5px;line-height:1.5;overflow-wrap:anywhere}
.candidate-color-near{display:block;margin-top:5px;color:#9a512d;font-weight:600}
.guide{grid-template-columns:minmax(230px,290px) minmax(0,1fr)}
.sidebar{padding:28px 20px}.sidebar h1{font-size:28px}.sidebar>.subtle{margin-bottom:0}
.chat-starters{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:20px}.chat-starters button{padding:10px 14px;font-size:13px}
.chat-conditions{flex:none;padding:3px clamp(18px,5vw,70px) 8px}.chat-conditions .text-button{font-size:12px;color:#78675d;text-decoration:none;border:1px solid #ded7cf;border-radius:20px;padding:7px 12px;background:#fff}
.reply-details{margin-top:8px}.reply-details summary,.candidate-details summary{cursor:pointer;color:#78675d;font-size:12px;padding:5px 0}.reply-details[open] summary{margin-bottom:8px}.candidate-details{margin-top:4px}
.gallery-source{font-size:11px;color:#827970;margin-top:12px!important}.candidate-details .candidate-tags:empty,.candidate-details p:empty{display:none}

/* Product first: keep one reason visible, with evidence and feedback on demand. */
.candidate-card{padding:12px;max-width:none;background:#fff;border-color:#e9e1d9;border-radius:12px}
.candidate-preview{height:210px;background:#faf9f7;border-radius:8px}
.candidate-footer{min-height:0;margin-top:10px}
.candidate-caption{padding:0;font-size:14px;font-weight:600;line-height:1.5;color:#302b27}
.bubble p.candidate-choice-reason{margin:4px 0 0;font-size:12px;line-height:1.5;color:#7b695d}
.candidate-color-panel{margin:12px 0 6px;font-size:11px}
.candidate-color-title{font-size:11px;font-weight:500;color:#7b7169;margin-bottom:4px}
.candidate-color-strip{height:10px;border-radius:3px}
.candidate-color-names{margin-top:4px;font-size:11px;line-height:1.4}
.candidate-details{margin:4px 0 0}.candidate-details summary{font-size:11px}
.candidate-controls{margin-top:auto;padding-top:12px;justify-content:space-between;align-items:center}
.candidate-select{font-size:12px;min-height:36px;padding:7px 15px}
.candidate-feedback{position:relative;margin-left:auto;font-size:12px;color:#7b6b5e}
.candidate-feedback>summary{cursor:pointer;padding:8px 3px;list-style:none}
.candidate-feedback>summary::-webkit-details-marker{display:none}
.candidate-feedback[open]>summary{color:#a64d34}
.candidate-feedback-options{position:absolute;right:0;bottom:calc(100% + 5px);z-index:5;display:flex;flex-direction:column;gap:5px;min-width:100px;padding:8px;background:#fff;border:1px solid #e7dcd2;border-radius:10px;box-shadow:0 8px 24px #33251b18}
.candidate-feedback-options button{width:100%;white-space:nowrap;margin:0}
.candidate-feedback:not([open]) .candidate-feedback-options{display:none}
.color-group-heading{font-size:12px!important;font-weight:500!important;color:#7b6b5e!important;margin-top:8px!important}
.gallery-source{color:#aaa096;font-size:10px}
@media(max-width:520px){.message.has-candidate-colors .bubble-images{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.candidate-card{padding:9px}.candidate-preview{height:170px}.candidate-caption{font-size:13px}.candidate-color-rows{gap:7px}.candidate-select{min-width:64px;padding:7px 10px}}
.workflow-actions{margin-top:9px;gap:8px}.workflow-action{font-size:13px;padding:9px 14px}.workflow-more summary{font-size:12px;padding:10px}
.task-status{padding:7px 18px;margin:0 clamp(18px,5vw,70px) 7px;font-size:12px}.recognition-inline{padding:14px 18px}
@media(max-width:780px){.guide{grid-template-columns:1fr}.sidebar{padding:10px 14px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px;max-height:38dvh;overflow-y:auto}.sidebar>.scenario-list{grid-column:1/-1}.sidebar>.subtle{display:none}.current-photo-card{margin:0;padding:8px}.current-photo-preview img{height:70px}.current-photo-preview{margin:7px 0}.more-tools{margin:0;padding:4px 0;border:0}.journey-actions{display:grid}.chat-conditions{padding:4px 14px}.task-status{margin:0 14px 6px}}
.voice-status{display:flex;align-items:center;gap:12px;padding:6px 8px 0;font-size:12px;color:var(--muted,#6b655f)}
.voice-status[hidden]{display:none}
.voice-status span{flex:1;overflow-wrap:anywhere}
#voiceButton[aria-pressed="true"]{color:#a54028;background:#f9e7df;box-shadow:0 0 0 2px #c55d3b33}

.historical-action-preview { display:block; width:100%; max-height:260px; object-fit:contain; border-radius:12px; }
.historical-action-preview[hidden] { display:none; }

.composer #prompt{min-height:42px;max-height:180px;overflow-y:hidden;overscroll-behavior:contain;scrollbar-width:thin}

/* Quoted images keep their full silhouette in square, zoomable cards. */
.candidate-card{position:relative}
.quote-image-button{position:absolute;right:12px;top:12px;display:grid;place-items:center;width:32px;height:32px;padding:0;border:1px solid #e7ddd4;border-radius:9px;background:#fffffff0;color:#815543;box-shadow:0 2px 7px #33251a12;z-index:1}
.quote-image-button:hover,.quote-image-button:focus-visible{background:#fff3eb;border-color:#b56a50;color:#a8462d;outline-offset:3px}
.quote-image-button:disabled{cursor:default;opacity:.35}
.image-quote-draft{margin:0 0 10px}
.image-quote-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;color:#876957;margin-bottom:6px}
.image-quote-heading .text-button{font-size:12px;padding:2px 4px}
.image-quote-list{display:flex;gap:10px;overflow-x:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:0 2px 5px}
.message-quote-list{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px;max-width:100%}
.image-quote{position:relative;display:flex;flex-direction:column;gap:7px;flex:0 0 148px;width:148px;min-width:0;max-width:100%;border:1px solid #e8dfd5;border-radius:12px;padding:7px;background:#faf8f5;color:#4e463f;white-space:normal}
.image-quote.is-draft{flex-basis:116px;width:116px;background:#fcf8f3}
.image-quote-preview{display:block;position:relative;width:100%;aspect-ratio:1;border:0;border-radius:8px;padding:3px;background:#fff;overflow:hidden;cursor:zoom-in}
.image-quote-preview:hover{background:#fffdf9}
.image-quote-preview:focus-visible{outline:3px solid #bd7046;outline-offset:2px}
.image-quote-preview:disabled{cursor:default;opacity:.6}
.image-quote-thumb{display:block;width:100%;height:100%;max-height:none;object-fit:contain;background:transparent}
.image-quote-content{display:flex;min-width:0;flex-direction:column;gap:3px;padding:0 2px 2px}
.image-quote-label{font-size:11px;color:#94745e;line-height:1.4}
.image-quote-name{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12px;line-height:1.4}
.image-quote-remove{position:absolute;top:3px;right:3px;display:grid;place-items:center;width:28px;height:28px;border:1px solid #e8dfd5;background:#fffffff5;color:#765d4d;font-size:21px;padding:0;line-height:1;border-radius:50%;box-shadow:0 2px 6px #33251a12}
.image-quote-remove:hover{background:#f5e8df}
.user .image-quote{background:#ffffffed}
@media(max-width:480px){.image-quote{flex-basis:120px;width:120px}.image-quote.is-draft{flex-basis:104px;width:104px}.image-quote-list,.message-quote-list{gap:8px}}
.outfit-card{display:flex;flex-direction:column}
.outfit-card .candidate-caption{font-size:12px;line-height:1.6;padding:10px 2px 2px}
.outfit-card .candidate-controls{margin-top:auto;padding-top:10px}
.outfit-card .candidate-select{width:100%}
@media(max-width:780px){.quote-image-button{width:34px;height:34px;right:10px;top:10px}.image-quote{max-width:100%}}
