.dc-shell{--dc-ink:#281b22;--dc-rose:#8e1b4d;--dc-line:#e7d8ce;--dc-cream:#fbf5ec;--dc-muted:#74646c;color:var(--dc-ink);font-family:'Montserrat','Montserrat Fallback',sans-serif;max-width:1180px;margin:0 auto 46px;padding:18px 0 22px}
.dc-shell *{box-sizing:border-box}
.dc-shell h1,.dc-shell h2,.dc-shell h3{font-family:'Montserrat','Montserrat Fallback',sans-serif;color:var(--dc-ink)}
.dc-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin:0 0 25px}
.dc-kicker{display:block;color:var(--dc-rose);font-size:11px;line-height:1.4;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.dc-intro h1{max-width:750px;font-size:clamp(34px,5vw,58px);line-height:1.06;letter-spacing:-.065em;font-weight:800;margin:12px 0 10px}
.dc-intro p{font-size:15px;line-height:1.55;color:var(--dc-muted);margin:0}
.dc-reset{color:var(--dc-rose);font-size:13px;font-weight:700;border:1px solid var(--dc-line);border-radius:999px;padding:11px 15px;background:#fff;white-space:nowrap}
.dc-reset[hidden]{display:none}
.dc-panel{height:600px;min-height:520px;border:1px solid var(--dc-line);border-radius:23px;background:#fff;box-shadow:0 18px 60px rgba(48,25,33,.045);display:flex;flex-direction:column;overflow:hidden}
.dc-thread{padding:25px;min-height:0;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:20px}
.dc-welcome{max-width:600px;margin:36px auto 4px;text-align:center}
.dc-spark{display:inline-grid;place-items:center;width:43px;height:43px;background:#f5e2ea;color:var(--dc-rose);border-radius:13px;font-size:27px}
.dc-welcome h2{font-size:27px;font-weight:800;line-height:1.15;letter-spacing:-.045em;margin:16px 0 8px}
.dc-welcome p{margin:0;color:var(--dc-muted);font-size:14px;line-height:1.5}
.dc-examples{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;max-width:800px;margin:0 auto}
.dc-examples button,.dc-choice-list button{border:1px solid var(--dc-line);border-radius:14px;background:#fff;color:var(--dc-ink);min-height:44px;padding:10px 13px;font:600 12px/1.35 'Montserrat','Montserrat Fallback',sans-serif;text-align:left}
.dc-examples button:hover,.dc-choice-list button:hover{border-color:var(--dc-rose);background:#fdf6f8}
.dc-examples button span,.dc-choice-list button span{color:var(--dc-rose);margin-left:8px}
.dc-message{width:min(78%,690px);display:flex;flex-direction:column;gap:5px}
.dc-user{align-self:flex-end}.dc-assistant{align-self:flex-start}
.dc-speaker{font-size:11px;font-weight:800;color:var(--dc-muted)}
.dc-user .dc-speaker{text-align:right}
.dc-bubble{padding:15px 18px;border-radius:16px;background:#f8f0eb;border:1px solid #efe2db;font-size:14px;line-height:1.55}
.dc-bubble p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.dc-bubble img{display:block;max-width:150px;max-height:160px;object-fit:cover;border-radius:10px;margin-bottom:9px}
.dc-user .dc-bubble{background:#f7e3ec;border-color:#efd1dd}
.dc-choice-panel,.dc-review,.dc-results{width:min(100%,770px);margin:0 auto;border:1px solid var(--dc-line);background:#fffaf6;border-radius:18px;padding:21px}
.dc-choice-panel>p{font-weight:700;margin:0 0 12px}.dc-choice-list{display:flex;flex-wrap:wrap;gap:9px}
.dc-review-heading h3,.dc-results-head h3{font-size:23px;line-height:1.16;letter-spacing:-.04em;margin:8px 0 7px}.dc-review-heading p,.dc-results-head p{font-size:13px;line-height:1.55;color:var(--dc-muted);margin:0}
.dc-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin:18px 0}
.dc-review-grid label{display:flex;flex-direction:column;gap:6px;min-width:0}.dc-review-grid label span{font-size:11px;font-weight:800;color:var(--dc-muted)}
.dc-shell .dc-review-grid input{width:100%;height:43px;min-height:43px;border:1px solid var(--dc-line);border-radius:10px;background:#fff;color:var(--dc-ink);padding:0 12px;font:600 13px 'Montserrat','Montserrat Fallback',sans-serif;outline:none}
.dc-review-grid input:focus,.dc-compose-row:focus-within{border-color:var(--dc-rose);box-shadow:0 0 0 3px #8e1b4d19}
.dc-uncertainty{color:var(--dc-muted);font-size:12px;line-height:1.5;margin:-3px 0 17px}
.dc-review-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.dc-review-actions span{font-size:11px;color:var(--dc-muted);line-height:1.4}
.dc-main-button{display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--dc-rose);color:#fff;border:0;border-radius:12px;padding:14px 17px;font:800 13px 'Montserrat','Montserrat Fallback',sans-serif}
.dc-results{width:100%}.dc-result-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:18px}.dc-result{display:block;text-decoration:none;color:var(--dc-ink);min-width:0;border:1px solid var(--dc-line);border-radius:13px;background:#fff;overflow:hidden}.dc-result-image{height:150px;background:#f6eee7;display:grid;place-items:center;color:var(--dc-muted);font-size:12px}.dc-result-image img{width:100%;height:100%;object-fit:contain}.dc-result-copy{padding:11px}.dc-result-copy small,.dc-result-copy strong,.dc-result-copy span{display:block}.dc-result-copy small{font-size:10px;color:var(--dc-muted)}.dc-result-copy strong{font-size:12px;line-height:1.4;margin:5px 0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.dc-result-copy span{font-size:11px;color:var(--dc-rose);font-weight:700}.dc-result-note{font-size:11px;line-height:1.5;color:var(--dc-muted);margin:13px 0 0}
.dc-thinking{align-self:flex-start;display:flex;gap:9px;align-items:center;background:#fff5f9;border:1px solid #efd1dd;border-radius:12px;padding:12px 15px;font-size:12px;font-weight:700;color:var(--dc-rose)}.dc-thinking-dot{width:9px;height:9px;background:var(--dc-rose);border-radius:50%;animation:dc-pulse 1.1s ease-in-out infinite}.dc-thinking button{font-size:11px;color:var(--dc-ink);text-decoration:underline;margin-left:10px}
.dc-composer{padding:15px 18px 12px;border-top:1px solid var(--dc-line);background:#fff}.dc-compose-row{display:flex;align-items:center;gap:8px;border:1px solid var(--dc-line);border-radius:14px;background:#fff;min-height:59px;padding:5px 7px}.dc-attach,.dc-send{width:42px;height:42px;flex:none;display:grid;place-items:center;border:0;border-radius:10px;font-size:26px;font-weight:400}.dc-attach{color:var(--dc-rose);background:#f7e3ec}.dc-send{color:#fff;background:var(--dc-rose)}.dc-send:disabled{opacity:.45}.dc-text-wrap{flex:1;min-width:0}.dc-text-wrap textarea{display:block;width:100%;min-height:43px;max-height:130px;border:0;resize:vertical;background:transparent;color:var(--dc-ink);font:500 13px/1.5 'Montserrat','Montserrat Fallback',sans-serif;padding:9px 2px;outline:0}.dc-text-wrap textarea::placeholder{color:#91848b}.dc-compose-help{font-size:10px;color:var(--dc-muted);margin:7px 3px 0}.dc-pending{display:flex;align-items:center;gap:9px;width:max-content;max-width:100%;background:#f7e3ec;border-radius:9px;padding:5px 6px;margin-bottom:9px;font-size:11px;font-weight:700}.dc-pending img{width:35px;height:35px;object-fit:cover;border-radius:6px}.dc-pending button{color:var(--dc-rose);font-size:21px;padding:2px 5px}.dc-below{display:flex;justify-content:space-between;gap:10px;color:var(--dc-muted);font-size:10px;font-weight:700;letter-spacing:.05em;margin-top:13px}
@keyframes dc-pulse{50%{opacity:.28;transform:scale(.75)}}
@media(max-width:700px){.dc-shell{margin:0 auto 30px;padding:3px 0 8px}.dc-intro{margin-bottom:17px}.dc-intro h1{font-size:33px;max-width:330px;margin:8px 0}.dc-intro p{font-size:12px;max-width:330px}.dc-reset{font-size:10px;padding:7px 9px}.dc-panel{height:clamp(390px,calc(100dvh - 320px),560px);min-height:390px;border-radius:16px}.dc-thread{padding:16px;gap:15px}.dc-welcome{margin:22px auto 4px}.dc-welcome h2{font-size:22px}.dc-welcome p{font-size:12px}.dc-examples{flex-direction:column;align-items:stretch;width:100%}.dc-examples button{min-height:43px;font-size:11px}.dc-message{width:min(92%,500px)}.dc-bubble{font-size:12px;padding:11px 13px}.dc-review,.dc-results,.dc-choice-panel{padding:15px}.dc-review-heading h3,.dc-results-head h3{font-size:20px}.dc-review-grid{gap:9px}.dc-review-grid input{font-size:12px}.dc-result-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dc-result-image{height:118px}.dc-composer{padding:10px}.dc-compose-help{font-size:9px}.dc-below{font-size:9px}.dc-below span:last-child{text-align:right}}
@media(max-width:380px){.dc-intro{flex-direction:column;gap:8px}.dc-review-grid{grid-template-columns:1fr}.dc-result-grid{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){.dc-thinking-dot{animation:none}}
/* Exa-style search bar: model chip, credits and search button sit inside the input box */
.dc-shell .dc-compose-row{border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom:0}
.dc-compose-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border:1px solid var(--dc-line);border-top:1px dashed var(--dc-line);border-radius:0 0 18px 18px;background:#fff;padding:9px 10px 9px 12px}
.dc-composer:focus-within .dc-compose-bar{border-color:var(--dc-rose)}
.dc-model select{appearance:none;-webkit-appearance:none;border:1px solid var(--dc-line);background:#fbf5ec url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%238e1b4d' stroke-width='1.6' fill='none'/%3E%3C/svg%3E") no-repeat right 11px center;border-radius:999px;padding:8px 30px 8px 13px;font:700 12px 'Montserrat','Montserrat Fallback',sans-serif;color:var(--dc-ink);min-height:36px;cursor:pointer}
.dc-model select:focus-visible{outline:2px solid var(--dc-rose);outline-offset:2px}
.dc-wallet{font-size:12px;color:var(--dc-muted)}.dc-wallet b{color:var(--dc-ink)}.dc-wallet.empty b{color:#b3261e}
.dc-shell .dc-send{margin-left:auto;width:auto;height:auto;min-height:38px;border-radius:999px;padding:9px 16px;background:var(--dc-rose);color:#fff;border:0;font:800 13px 'Montserrat','Montserrat Fallback',sans-serif;display:inline-flex;align-items:center;gap:8px}
.dc-shell .dc-send:disabled{opacity:.45}
.dc-meta{display:block;margin-top:6px;font-size:11px;color:var(--dc-muted)}
/* Query retrieval panel */
.dc-retrieval{margin:16px 0 4px;border:1px solid var(--dc-line);border-radius:14px;background:#fff;padding:4px 14px}
.dc-retrieval summary{cursor:pointer;font-size:12px;font-weight:800;color:var(--dc-ink);padding:10px 0;list-style-position:inside}
.dc-retrieval ol{list-style:none;margin:0 0 10px;padding:0;display:grid;gap:12px}
.dc-retrieval li{display:flex;gap:11px;align-items:flex-start}
.dc-step-n{flex:none;width:22px;height:22px;border-radius:50%;background:#f5e2ea;color:var(--dc-rose);display:grid;place-items:center;font-size:11px;font-weight:800}
.dc-retrieval strong{display:block;font-size:12px;margin:2px 0 6px}
.dc-retrieval p{margin:0;font-size:12px;line-height:1.5;color:var(--dc-muted)}.dc-retrieval p b{color:var(--dc-ink)}
.dc-chips,.dc-queries{display:flex;flex-wrap:wrap;gap:6px}
.dc-chips span{border-radius:999px;background:#fbf5ec;border:1px solid var(--dc-line);padding:4px 10px;font-size:11px;font-weight:600}
.dc-queries code{font:600 11px ui-monospace,SFMono-Regular,Menlo,monospace;background:#281b22;color:#fbf5ec;border-radius:7px;padding:5px 8px;max-width:100%;overflow-wrap:anywhere}
@media (max-width:560px){.dc-compose-bar{gap:8px}.dc-wallet{order:3;width:100%}.dc-shell .dc-send{margin-left:auto}}
/* Phones: the conversation grows with its content and the page scrolls, instead of squeezing replies
   into a fixed box above the search bar. */
@media (max-width:700px){.dc-shell .dc-panel{height:auto;min-height:0;overflow:visible}.dc-shell .dc-thread{overflow:visible;flex:none;padding:18px 16px}.dc-compose-help{font-size:10px}}
.dc-queries{flex-direction:column;align-items:flex-start}.dc-query{display:flex;flex-direction:column;gap:3px;max-width:100%}.dc-query small{font-size:10px;color:var(--dc-muted);padding-left:2px}
/* Product photos fill a fixed 4:5 frame and never spill over the title (a % height inside a grid
   track never resolved, so tall photos rendered at natural size on top of the copy). */
.dc-shell .dc-result-image{height:auto;aspect-ratio:4/5;position:relative;overflow:hidden}
.dc-shell .dc-result-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top center}
/* ---- Discover v2: QA round 1 (7 Oct 2026) ---- */
/* In-app model dropdown (replaces the phone's native select sheet) */
.dc-model{position:relative}
.dc-model-chip{border:1px solid var(--dc-line);background:#fbf5ec;border-radius:999px;padding:8px 14px;font:800 12px 'Montserrat','Montserrat Fallback',sans-serif;color:var(--dc-ink);min-height:36px;display:inline-flex;align-items:center;gap:6px;cursor:pointer}
.dc-model-chip span{color:var(--dc-rose);font-size:10px}
.dc-model-menu{position:absolute;bottom:calc(100% + 8px);left:0;z-index:30;list-style:none;margin:0;padding:6px;width:min(280px,78vw);background:#fff;border:1px solid var(--dc-line);border-radius:16px;box-shadow:0 18px 44px rgba(48,25,33,.16)}
.dc-model-menu button{width:100%;display:flex;align-items:center;gap:10px;text-align:left;border:0;background:none;border-radius:11px;padding:10px 11px;color:var(--dc-ink);font-family:'Montserrat','Montserrat Fallback',sans-serif;cursor:pointer}
.dc-model-menu button:hover,.dc-model-menu [aria-selected=true] button{background:#fdf6f8}
.dc-model-menu span{flex:1;display:flex;flex-direction:column;gap:2px}.dc-model-menu b{font-size:14px}.dc-model-menu small{font-size:11px;color:var(--dc-muted)}
.dc-model-menu em{font-style:normal;font-size:11px;font-weight:800;color:var(--dc-rose)}.dc-model-menu i{font-style:normal;color:var(--dc-rose);font-weight:800}
/* Voice */
.dc-mic{flex:none;width:42px;height:42px;border-radius:13px;border:1px solid var(--dc-line);background:#fff;font-size:18px;cursor:pointer}
.dc-mic.on{background:var(--dc-rose);color:#fff;border-color:var(--dc-rose);animation:dc-pulse 1.2s ease-in-out infinite}
@keyframes dc-pulse{0%,100%{box-shadow:0 0 0 0 #8e1b4d55}50%{box-shadow:0 0 0 8px #8e1b4d00}}
/* Loading */
.dc-loading{width:min(100%,770px);margin:0 auto;border:1px dashed var(--dc-line);border-radius:18px;background:#fffaf6;padding:22px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px}
.dc-loading p{margin:0;font-weight:700;font-size:14px;color:var(--dc-ink);min-height:20px}
.dc-loading-orbit{position:relative;width:46px;height:46px}
.dc-loading-orbit i{position:absolute;inset:0;border-radius:50%;border:3px solid transparent;border-top-color:var(--dc-rose);animation:dc-spin 1.1s linear infinite}
.dc-loading-orbit i:nth-child(2){inset:7px;border-top-color:#c98aa5;animation-duration:1.6s}.dc-loading-orbit i:nth-child(3){inset:14px;border-top-color:#e7c8d4;animation-duration:2.2s}
@keyframes dc-spin{to{transform:rotate(360deg)}}
.dc-mall-hint{display:flex;flex-direction:column;gap:8px;align-items:center;font-size:12px;color:var(--dc-muted)}
.dc-mall-hint button{border:0;background:var(--dc-rose);color:#fff;border-radius:999px;padding:9px 15px;font:800 12px 'Montserrat','Montserrat Fallback',sans-serif;cursor:pointer}
.dc-cancel{border:0;background:none;color:var(--dc-muted);font:600 12px 'Montserrat','Montserrat Fallback',sans-serif;text-decoration:underline;cursor:pointer}
/* "Searched for" chips with free refine */
.dc-understood{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px}
.dc-understood .dc-kicker{width:100%}
.dc-edit{border:0;background:none;color:var(--dc-rose);font:800 12px 'Montserrat','Montserrat Fallback',sans-serif;cursor:pointer;padding:6px 4px}
.dc-refine{margin-bottom:18px}
/* Results: matches, then store searches */
.dc-empty{margin:14px 0 0;font-size:13px;color:var(--dc-muted)}
.dc-stores{margin-top:18px}
.dc-store-row{display:flex;gap:8px;overflow-x:auto;padding:8px 0 4px;scrollbar-width:none}.dc-store-row::-webkit-scrollbar{display:none}
.dc-store-row a{flex:none;border:1px solid var(--dc-line);background:#fff;border-radius:999px;padding:9px 14px;font-size:12px;font-weight:700;color:var(--dc-ink);text-decoration:none}
.dc-store-row a:hover{border-color:var(--dc-rose);color:var(--dc-rose)}
/* Saved chats */
.dc-chats{display:flex;gap:8px;overflow-x:auto;margin:0 0 12px;padding-bottom:2px;scrollbar-width:none}.dc-chats::-webkit-scrollbar{display:none}
.dc-chat{flex:none;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:1px solid var(--dc-line);background:#fff;border-radius:999px;padding:8px 13px;font:700 12px 'Montserrat','Montserrat Fallback',sans-serif;color:var(--dc-ink);cursor:pointer}
.dc-chat.active{background:var(--dc-ink);color:#fff;border-color:var(--dc-ink)}
.dc-chat.new{color:var(--dc-rose);border-style:dashed}
.dc-chat-limit{border:1px solid var(--dc-line);background:#fffaf6;border-radius:16px;padding:16px;margin:0 0 12px}
.dc-chat-limit strong{display:block;font-size:14px}.dc-chat-limit p{margin:4px 0 10px;font-size:12px;color:var(--dc-muted)}
.dc-chat-limit ul{list-style:none;margin:0 0 8px;padding:0;display:grid;gap:6px}
.dc-chat-limit li{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#fff;border:1px solid var(--dc-line);border-radius:12px;padding:8px 10px;font-size:13px}
.dc-chat-limit li button{border:0;background:#fbe9ec;color:#b3261e;border-radius:999px;padding:6px 12px;font:800 11px 'Montserrat','Montserrat Fallback',sans-serif;cursor:pointer}
/* Results-ready pill, visible from anywhere in the app */
.dc-ready-pill{position:fixed;left:50%;bottom:calc(84px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:60;border:0;background:var(--dc-ink,#281b22);color:#fff;border-radius:999px;padding:12px 18px;font:800 13px 'Montserrat','Montserrat Fallback',sans-serif;box-shadow:0 12px 30px rgba(40,27,34,.28);cursor:pointer;animation:dc-rise .35s ease-out}
@keyframes dc-rise{from{transform:translate(-50%,16px);opacity:0}to{transform:translateX(-50%);opacity:1}}
@media(prefers-reduced-motion:reduce){.dc-loading-orbit i,.dc-mic.on,.dc-ready-pill{animation:none}}

/* Design QA 6 Oct (v3): chats as pinned tabs, and a results-ready pop-up you can't miss. */
.dc-chats{position:sticky;top:0;z-index:20;display:block;overflow:visible;margin:0 -4px 12px;padding:10px 4px 8px;background:var(--bg,#faf3ea);border-bottom:1px solid var(--dc-line)}
.dc-chats-label{display:flex;justify-content:space-between;align-items:center;margin:0 2px 8px;font:800 11px 'Montserrat','Montserrat Fallback',sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--dc-rose)}
.dc-chats-label em{font-style:normal;letter-spacing:0;color:var(--dc-muted,#7a6670);font-weight:600}
.dc-chat-row{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.dc-chat-row::-webkit-scrollbar{display:none}
.dc-chats .dc-chat{display:flex;flex-direction:column;align-items:flex-start;gap:1px;max-width:180px;border-radius:14px;padding:8px 12px;text-align:left}
.dc-chats .dc-chat b{max-width:156px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}
.dc-chats .dc-chat small{font:600 10px 'Montserrat','Montserrat Fallback',sans-serif;opacity:.7}
.dc-chats .dc-chat.new{justify-content:center}
.dc-chat-empty{align-self:center;font:600 12px 'Montserrat','Montserrat Fallback',sans-serif;color:var(--dc-muted,#7a6670);white-space:nowrap}
.dc-ready-pill{position:fixed;left:16px;right:16px;top:calc(12px + env(safe-area-inset-top));bottom:auto;transform:none;margin:0 auto;max-width:440px;z-index:90;display:flex;align-items:center;gap:12px;padding:10px 10px 10px 10px;border-radius:18px;background:#fff;color:var(--dc-ink,#281b22);border:1.5px solid var(--dc-rose,#8e1b4f);box-shadow:0 18px 40px rgba(40,27,34,.28);animation:dc-drop .4s cubic-bezier(.2,.9,.3,1.2)}
.dc-ready-pill img,.dc-ready-spark{flex:none;width:48px;height:56px;border-radius:10px;object-fit:cover;background:#f6e3ea;display:grid;place-items:center;font-size:22px}
.dc-ready-pill div{flex:1;min-width:0}
.dc-ready-pill strong{display:block;font:800 14px 'Montserrat','Montserrat Fallback',sans-serif}
.dc-ready-pill small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:600 12px 'Montserrat','Montserrat Fallback',sans-serif;color:var(--dc-muted,#7a6670)}
.dc-ready-go{flex:none;border:0;border-radius:999px;background:var(--dc-rose,#8e1b4f);color:#fff;padding:10px 12px;font:800 12px 'Montserrat','Montserrat Fallback',sans-serif;cursor:pointer}
.dc-ready-close{flex:none;border:0;background:none;color:var(--dc-muted,#7a6670);font-size:20px;line-height:1;padding:4px 6px;cursor:pointer}
@keyframes dc-drop{from{opacity:0;transform:translateY(-24px)}to{opacity:1;transform:none}}
.dc-refine select{width:100%;border:1px solid var(--dc-line);border-radius:12px;padding:10px;background:#fff;font:inherit}
.dc-results{scroll-margin-top:96px}

/* Design QA 6 Oct (v4): trending looks from real people, shuffled. */
.dc-looks{display:flex;flex-direction:column;gap:10px}
.dc-looks-head{display:flex;justify-content:space-between;align-items:center}
.dc-shuffle{border:1px solid var(--dc-line);background:#fff;border-radius:999px;padding:7px 12px;font:800 12px 'Montserrat','Montserrat Fallback',sans-serif;color:var(--dc-rose);cursor:pointer}
.dc-looks .dc-examples button{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 6px;text-align:left}
.dc-looks .dc-examples button small{flex-basis:100%;font:700 10px 'Montserrat','Montserrat Fallback',sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--dc-rose)}
.dc-idea{border-style:dashed!important}

/* Design QA 6 Oct (v5): the in-app "results ready" card, no browser permission prompt. */
.dc-ready-pill{flex-direction:column;align-items:stretch;gap:10px;padding:12px 14px 14px;border:1px solid #ecd3dd;background:rgba(255,255,255,.97);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 20px 44px rgba(40,27,34,.24),0 0 0 4px rgba(142,27,77,.08)}
.dc-ready-top{display:flex;justify-content:space-between;align-items:center}
.dc-ready-kicker{font:800 10px 'Montserrat','Montserrat Fallback',sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--dc-rose,#8e1b4d)}
.dc-ready-body{display:flex;align-items:center;gap:12px}
.dc-ready-body div{flex:1;min-width:0}
.dc-ready-body strong{display:block;font:800 16px/1.25 'Montserrat','Montserrat Fallback',sans-serif;color:var(--dc-ink,#281b22)}
.dc-ready-body small{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:normal;margin-top:2px;font:600 13px/1.35 'Montserrat','Montserrat Fallback',sans-serif;color:var(--dc-muted,#74646c)}
.dc-ready-stack{flex:none;display:flex}
.dc-ready-stack img{width:44px;height:56px;border-radius:10px;object-fit:cover;background:#f6e3ea;border:2px solid #fff;box-shadow:0 4px 10px rgba(40,27,34,.18)}
.dc-ready-stack img+img{margin-left:-18px}
.dc-ready-pill .dc-ready-go{width:100%;padding:12px;font-size:14px}
.dc-ready-pill .dc-ready-close{padding:0 2px;font-size:22px}

/* Loading mascot (owner, 6 Oct): panda, pug, cat or fox, a different one each search. */
.dc-mascot{margin:0;display:flex;flex-direction:column;align-items:center;gap:4px}
.dc-mascot svg{width:84px;height:84px;animation:dc-bob 1.6s ease-in-out infinite;transform-origin:50% 90%}
.dc-mascot .dc-eyes{animation:dc-blink 4s infinite;transform-origin:50% 50%;transform-box:fill-box}
.dc-mascot-shadow{width:46px;height:7px;border-radius:50%;background:rgba(40,27,34,.14);animation:dc-shadow 1.6s ease-in-out infinite}
.dc-mascot figcaption{font:800 11px 'Montserrat','Montserrat Fallback',sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--dc-rose)}
@keyframes dc-bob{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-8px) rotate(3deg)}}
@keyframes dc-blink{0%,92%,100%{transform:scaleY(1)}95%{transform:scaleY(.1)}}
@keyframes dc-shadow{0%,100%{transform:scaleX(1);opacity:.9}50%{transform:scaleX(.7);opacity:.5}}
@media(prefers-reduced-motion:reduce){.dc-mascot svg,.dc-mascot .dc-eyes,.dc-mascot-shadow{animation:none}}
.dc-credits-card{display:flex;flex-direction:column;gap:4px;background:#fff;border:1px solid var(--dc-line,#e7d8ce);border-radius:22px;padding:18px;margin:0 0 20px;font-family:'Montserrat','Montserrat Fallback',sans-serif;color:#281b22}
.dc-credits-card .dc-kicker{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#8e1b4d}
.dc-credits-card strong{font-size:20px;font-weight:800}.dc-credits-card small{font-size:13px;color:#74646c}

/* Design QA #20: the welcome mascot replaces the star. */
.dc-hello{position:relative;display:inline-flex;flex-direction:column;align-items:center;gap:2px;border:0;background:none;padding:22px 0 0;cursor:pointer;-webkit-tap-highlight-color:transparent}
.dc-hello svg{width:92px;height:92px;animation:dc-bob 2.4s ease-in-out infinite;transform-origin:50% 90%}
.dc-hello .dc-eyes{animation:dc-blink 4s infinite;transform-origin:50% 50%;transform-box:fill-box}
.dc-hello .dc-mascot-shadow{animation-duration:2.4s}
.dc-hello-bubble{position:absolute;top:0;left:62%;white-space:nowrap;background:#fff;border:1px solid var(--dc-line);border-radius:12px 12px 12px 3px;padding:4px 9px;font:800 11px 'Montserrat','Montserrat Fallback',sans-serif;color:var(--dc-ink);box-shadow:0 6px 14px rgba(40,27,34,.1)}
.dc-hello:active svg{transform:scale(.94)}
@media(prefers-reduced-motion:reduce){.dc-hello svg,.dc-hello .dc-eyes,.dc-hello .dc-mascot-shadow{animation:none}}
.dc-mascot svg,.dc-hello svg{stroke:none}
