/* DANQVORA ATELIER V7 | Visual enhancement only.
   Layered after Studio V6; no auth, account or database logic is changed. */
:root {
  --dq7-ink:#141414;
  --dq7-panel:#1c1c1c;
  --dq7-deep:#131313;
  --dq7-raised:#262626;
  --dq7-hairline:#3c3c3c;
  --dq7-muted:#adadad;
  --dq7-fg:#eeeeee;
  --dq7-sage:#cfcfcf;
  --dq7-accent:#c6c6c6;
  --dq7-ease:cubic-bezier(.2,.72,.25,1);
}
html { color-scheme:dark; }
body { background:var(--dq7-deep); font-feature-settings:"kern" 1; }
button, input, select, textarea { font-family:inherit; }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible {
  outline:2px solid #dddddd!important; outline-offset:3px!important;
}
/* A sober, tighter navigation bar with a small signature accent. */
.topbar { background:#181818f5; backdrop-filter:blur(18px); border-bottom:1px solid #3a3a3a; }
.brand-mark { border-radius:5px; background:#e2e2e2; border-color:#e2e2e2; color:#1e1e1e;
  position:relative; box-shadow:0 2px 12px #0a0a0a48; }
.brand-name { font-size:16.5px; letter-spacing:1.7px; font-weight:750; }
.brand-tag { letter-spacing:1.55px; color:#aaaaaa; }
.topbar > .tabs .tab { transition:color .23s ease,background-color .23s ease,border-color .23s ease; }
.topbar > .tabs .tab.active { border-bottom-color:#e4e4e4; }
.topbar > .tabs .tab:not(.active):hover { background:#ffffff07; }
.top-actions .icon-btn:hover,.top-actions .outlined-btn:hover { background:#303030; border-color:#5c5c5c; }
.top-actions .user-chip { background:#292929; border-color:#4b4b4b; }
.top-actions .user-chip:hover { border-color:#828282; }
#dq-market-strip { background:#131313; border-bottom-color:#3b3b3b; }
#dq-market-strip .dq-market-label { color:#e2e2e2; font-weight:800; }
#dq-market-strip .dq-market-source { font-size:9px; }

/* Chat-desk geometry — balanced left rail, wide conversation, useful context. */
.app-grid { grid-template-columns:218px minmax(0,1fr) 232px; background:#181818; }
.sidebar { background:#181818; border-color:var(--dq7-hairline); padding-top:23px; }
.sidebar-intro { color:#cecece; border-color:#3e3e3e; font-size:9px; }
.sidebar-intro p { color:#a6a6a6; font-size:11px; }
.section-label { color:#9a9a9a; letter-spacing:1.5px; font-size:9px; }
.app .room-btn { border-radius:6px; margin:1px 0; min-height:42px; font-size:12px; }
.app .room-btn .icon { color:#b8b8b8; }
.app .room-btn.active { color:#f2f2f2; border-color:#565656; background:linear-gradient(90deg,#333333 0%,#2b2b2b 100%);
  box-shadow:inset 2px 0 0 #dcdcdc; }
.app .room-btn.active .icon { color:#e9e9e9; }
.app .room-btn:hover { transform:none; padding-left:14px; }
.sidebar-rule { background:#3c3c3c; }
.sidebar .muted-action { border-style:solid; color:#cecece; background:#272727; }
.sidebar .muted-action:hover { background:#353535; }
.sidebar-bottom { padding-bottom:7px; }
.rules-card { border-color:#3f3f3f; background:#1f1f1f; }
.rules-card .eyebrow { letter-spacing:1px; }
.rules-card p { color:#adadad; }
.sidebar-foot { color:#999999; }

.main { background:#1c1c1c; position:relative; }
.chat-head { min-height:74px; background:#1f1f1f; border-bottom:1px solid #404040; }
.head-title { gap:12px; min-width:0; }
.header-symbol { background:#323232; border-color:#4f4f4f; border-radius:7px; }
.header-symbol .icon { color:#dedede; }
.app .head-title h1 { letter-spacing:-.55px; font-weight:700; }
.app .head-title p { max-width:min(47vw,640px); overflow:hidden; white-space:nowrap; text-overflow:ellipsis; color:#aeaeae; }
.preview-pill { color:#cbcbcb; background:#2f2f2f; border-color:#515151; border-radius:4px; }
.head-tools { gap:7px; }
/* Functional focus + density controls are injected by the small V7 JS. */
.dq7-controls { display:flex; align-items:center; gap:5px; margin-right:7px; padding-right:11px; border-right:1px solid #4e4e4e; }
.dq7-tool { appearance:none; display:inline-flex; align-items:center; justify-content:center; gap:6px;
  min-height:31px; padding:0 10px; color:#bebebe; background:#292929; border:1px solid #484848;
  border-radius:5px; font-size:10.5px; font-weight:650; letter-spacing:.1px; cursor:pointer; }
.dq7-tool:hover { color:#f4f4f4; background:#323232; border-color:#808080; }
.dq7-tool[aria-pressed="true"] { background:#e6e6e6; border-color:#dddddd; color:#202020; }
.dq7-tool svg { width:13px; height:13px; stroke:currentColor; stroke-width:1.75; fill:none; stroke-linecap:round; stroke-linejoin:round; }
.dq7-tool:focus-visible { outline:2px solid #e4e4e4; outline-offset:2px; }

.messages { scrollbar-color:#505050 transparent; }
.app .messages { padding-top:23px; }
.welcome-inline { background:linear-gradient(112deg,#2d2d2d 0%,#242424 82%); border-color:#565656; border-left:2px solid #b2b2b2;
  border-radius:7px; padding:18px 21px; }
.welcome-inline strong { font-weight:700; color:#f0f0f0; }
.welcome-inline p { color:#bdbdbd; }
.welcome-icon { background:#363636; border-color:#4f4f4f; }
.date-separator { color:#a7a7a7; letter-spacing:1.45px; }
.app .message { padding:12px 9px 12px 8px; border-radius:6px; border:1px solid transparent; }
.app .message:hover { background:#2a2a2a; border-color:#404040; }
.app .message .avatar { border-radius:50%; width:33px; height:33px; border-color:#727272;
  background:#424242; color:#f1f1f1; }
.app .message .avatar .pfp-img { border-radius:50%; }
.app .msg-name { font-size:12.15px; color:#f1f1f1; }
.app .msg-text { font-size:13.1px; line-height:1.64; color:#dcdcdc; }
.app .msg-time { color:#a5a5a5; }
.app .message-actions { transition:opacity .17s ease; }
.app .msg-act { background:#282828; border-color:#464646; color:#c5c5c5; }
.app .msg-act:hover,.app .msg-act.active { border-color:#939393; background:#3b3b3b; color:#f2f2f2; }
.composer-wrap { padding-bottom:15px; background:linear-gradient(180deg,#1f1f1f,#1c1c1c); border-top-color:#464646; }
.app .composer { border-color:#606060; border-radius:8px; background:#2c2c2c; }
.app .composer:focus-within { border-color:#ababab; box-shadow:0 0 0 3px #b6b6b615; }
.app #messageInput { color:#f1f1f1; }
.app #messageInput::placeholder { color:#acacac; }
.app .send-btn { background:#e3e3e3; border-color:#e3e3e3; color:#1d1d1d; }
.app .send-btn:hover { background:#f5f5f5; transform:translateY(-1px); }
.fine-print { color:#aaaaaa; }
.rail { background:#1b1b1b; border-color:#404040; }
.rail-title { color:#e5e5e5; letter-spacing:1.05px; }
.community-stat { background:#282828; border-color:#4c4c4c; }
.community-stat .big-label { font-weight:650; letter-spacing:-.6px; }
.community-stat p,.rail-block p { color:#b4b4b4; }
.rail-link { color:#dadada; }
.rail-link:hover { color:#f8f8f8; }
.moderation-shortcut { background:#2d2d2d; border:1px solid #5c5c5c; }

/* The other three navigation destinations are first-class parts of the system. */
.feature-body { background:#1c1c1c; }
.feature-body .page-eyebrow { color:#b3b3b3; letter-spacing:1.55px; }
.feature-body .page-title { font:640 clamp(30px,3.2vw,42px)/1.16 'DM Sans',system-ui,sans-serif; letter-spacing:-1.5px; }
.feature-body .page-desc { color:#c0c0c0; }
.topic-card,.article-card,.discovery-card { background:#232323; border-color:#444444; border-radius:8px; }
.topic-card:hover,.article-card:hover,.discovery-card:hover { background:#2f2f2f; border-color:#848484; transform:translateY(-2px); box-shadow:0 14px 26px #0003; }
.topic-card h3,.article-content h3 { font-family:'DM Sans',system-ui,sans-serif; font-weight:650; letter-spacing:-.4px; }
.article-art,.product-art { background:#303030; border-color:#474747; }
.article-art .icon,.product-art .icon { color:#dedede; }
.modal { background:#262626; border-color:#676767; border-radius:11px; }
.modal-top h2 { font-family:'DM Sans',system-ui,sans-serif; font-weight:650; }
.field { background:#1f1f1f; border-color:#5e5e5e; }
.toast { border-radius:6px; }

/* Picks: a restrained editorial shop wing, rather than a loud template. */
.picks-page { background:#1c1c1c; }
.picks-page .hero { border-bottom-color:#464646; }
.picks-page .hero h1 { font-weight:600; letter-spacing:-2.15px; }
.picks-page .hero h1 .dim { color:#b9b9b9; }
.picks-page .hero-description { color:#c2c2c2; }
.picks-page .kicker { color:#bebebe; }
.picks-page .text-btn { color:#d0d0d0; }
.picks-page .primary-btn { background:#e6e6e6; border-color:#e6e6e6; color:#202020; }
.picks-page .primary-btn:hover { background:#f6f6f6; }
.picks-page .signature { border-left-color:#6a6a6a; }
.picks-page .signature h3 { color:#ededed; }
.picks-page .sig-foot { border-color:#5e5e5e; }
.picks-page .market-bar { background:#272727; border-color:#4f4f4f; }
.picks-page .feature-main { background:linear-gradient(128deg,#333333 0%,#262626 84%); border-color:#5e5e5e;
  position:relative; overflow:hidden; }
.picks-page .feature-main::after { content:""; pointer-events:none; position:absolute; inset:0;
  background:linear-gradient(105deg,transparent 48%,#dfdfdf0a 62%,transparent 75%); opacity:.8; }
.picks-page .feature-art { opacity:.38; }
.picks-page .side-panel,.picks-page .side-panel.light { background:#272727; border-color:#494949; }
.picks-page .side-panel.light { background:#353535; }
.picks-page .side-panel h3 { color:#f4f4f4; }
.picks-page .side-panel p,.picks-page .side-panel.light p { color:#bfbfbf; }
.picks-page .item { background:#262626; border-color:#4a4a4a; border-radius:8px; }
.picks-page .item:hover { border-color:#949494; background:#2f2f2f; }
.picks-page .item-visual { background:#3a3a3a; }
.picks-page .v-two,.picks-page .v-five { background:#858585; }
.picks-page .item-category { color:#cbcbcb; }
.picks-page .item h3 { color:#f1f1f1; }
.picks-page .item p { color:#b9b9b9; }
.picks-page .item-foot { border-color:#464646; }
.picks-page .item-foot a,.picks-page .item-foot button { color:#ececec; }
.picks-page .bottom-cta { background:#e4e4e4; color:#202020; }
.picks-page .bottom-cta h2 { color:#1e1e1e; }

/* Calm motion: navigation, focused actions and content transitions.
   No looping glows, faux price movement, or animated background noise. */
@keyframes dq7-enter { from { opacity:0; transform:translateY(12px); } to { opacity:1; transform:translateY(0); } }
@keyframes dq7-scale { from { opacity:0; transform:scale(.988); } to { opacity:1; transform:scale(1); } }
@keyframes dq7-toast { from { opacity:0; transform:translateY(10px); } to { opacity:1; transform:translateY(0); } }
.main > .chat-head,.main > .feature-body,.main > .picks-page { animation:dq7-enter .36s var(--dq7-ease) both; }
.picks-page .hero,.picks-page .feature-grid { animation:dq7-enter .52s var(--dq7-ease) both; }
.picks-page .feature-grid { animation-delay:.06s; }
.modal { animation:dq7-scale .2s var(--dq7-ease) both; }
.toast { animation:dq7-toast .22s var(--dq7-ease) both; }
.topbar > .tabs .tab.active { transition:color .23s ease,border-color .23s ease; }

/* Focus mode: expand the conversation only, leave other tabs unaffected. */
.dq7-focus-active .app-grid { grid-template-columns:minmax(0,1fr); }
.dq7-focus-active .app-grid > .sidebar,
.dq7-focus-active .app-grid > .rail { display:none; }
.dq7-focus-active .main .messages { padding-left:clamp(32px,8vw,180px); padding-right:clamp(32px,8vw,180px); }
.dq7-focus-active .main .composer-wrap { padding-left:clamp(32px,8vw,180px); padding-right:clamp(32px,8vw,180px); }
.dq7-focus-active .chat-head { padding-left:clamp(32px,8vw,180px); padding-right:clamp(32px,8vw,180px); }
.dq7-compact .app .message { padding-top:7px; padding-bottom:7px; margin-bottom:4px; }
.dq7-compact .app .msg-text { font-size:12.7px; line-height:1.48; }
.dq7-compact .app .msg-meta { margin-bottom:3px; }
.dq7-compact .app .message-actions { margin-top:5px; }
.dq7-compact .messages { padding-top:13px; }
.dq7-compact .welcome-inline { margin-bottom:14px; padding:12px 16px; }

@media(max-width:1190px) {
  .app-grid { grid-template-columns:207px minmax(0,1fr) 215px; }
  .topbar { grid-template-columns:202px minmax(0,1fr) auto; }
}
@media(max-width:980px) {
  .app-grid { grid-template-columns:207px minmax(0,1fr); }
  .rail { display:none; }
  .dq7-tool-label { display:none; }
  .dq7-tool { padding:0 9px; }
}
@media(max-width:680px) {
  .app-grid { display:flex; }
  .sidebar { background:#1b1b1b; }
  /* Keep the sign-in/account control identifiable on narrow screens. */
  .top-actions .user-chip { padding:7px 9px; min-height:33px; }
  .top-actions .user-chip #userLabel { display:inline-block; max-width:68px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:10.5px; }
  .top-actions .user-chip #userInitial { display:none; }
  .topbar { grid-template-columns:minmax(0,1fr) auto; }
  .dq7-controls { padding-right:0; border-right:none; margin-right:0; gap:3px; }
  .dq7-tool { min-height:30px; padding:0 8px; }
  .dq7-tool svg { width:14px; height:14px; }
  .dq7-focus-active .app-grid { display:flex; }
  .dq7-focus-active .app-grid > .sidebar { display:flex; }
  .dq7-focus-active .main .messages { padding-left:13px; padding-right:13px; }
  .dq7-focus-active .main .composer-wrap { padding-left:12px; padding-right:12px; }
  .dq7-focus-active .chat-head { padding-left:13px; padding-right:13px; }
  .app .head-title p { max-width:42vw; }
  .preview-pill { display:none; }
  .app .msg-text { font-size:13px; }
}
@media(max-width:400px) {
  .top-actions #bellTrigger { display:none; }
  .top-actions .user-chip #userLabel { max-width:54px; }
  .dq7-controls .dq7-tool[data-dq7-action="focus"] { display:none; }
  .head-tools { gap:2px; }
}
@media(prefers-reduced-motion:reduce) {
  *,*::before,*::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
}
