/* Opt-in base styles; legacy pages are unaffected until they adopt .dq-ui. */
.dq-ui { color:var(--dq-ink); background:#fff; font:14px/20px var(--dq-font); letter-spacing:-.005em; -webkit-font-smoothing:antialiased; font-feature-settings:"tnum" 1,"cv11" 1; }
.dq-ui :where(button,input,select,textarea) { font:inherit; }
.dq-ui :where(button,a,input,select,textarea,summary):focus-visible { outline:2px solid var(--dq-accent); outline-offset:3px; }
.dq-ui :where(button) { cursor:pointer; }
.dq-ui :where(button:disabled) { cursor:wait; }
.dq-ui .dq-avatar { display:inline-grid; place-items:center; flex:0 0 auto; width:20px; height:20px; border-radius:50%; background:var(--dq-avatar); color:var(--dq-avatar-ink); font-size:12px; line-height:1; font-weight:500; }
.dq-ui .dq-icon { display:inline-block; flex:0 0 auto; width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:var(--dq-icon-stroke,1.5); stroke-linecap:round; stroke-linejoin:round; }
.dq-ui .dq-title-icon { display:inline-grid; place-items:center; flex:0 0 auto; width:26px; height:26px; border-radius:7px; background:var(--dq-accent-soft); color:var(--dq-accent); }
.dq-ui .dq-primary { display:inline-flex; align-items:center; justify-content:center; gap:6px; min-height:28px; padding:4px 10px; border:0; border-radius:8px; color:#fff; background:var(--dq-accent); box-shadow:var(--dq-raised-pri); font-size:14px; font-weight:500; text-decoration:none; }
.dq-ui .dq-primary:hover { background:var(--dq-accent-dark); }
.dq-ui .dq-account-menu { position:relative; color:var(--dq-ink); }
.dq-ui .dq-account-summary { display:flex; align-items:center; gap:8px; height:32px; padding:2px 6px; border-radius:6px; list-style:none; cursor:pointer; font-size:13px; font-weight:500; }
.dq-ui .dq-account-summary::-webkit-details-marker { display:none; }
.dq-ui .dq-account-summary:hover,.dq-ui .dq-account-menu[open] > summary { background:var(--dq-hover); }
.dq-ui .dq-account-name { max-width:240px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:13px; font-weight:500; }
.dq-ui .dq-account-actions { position:absolute; z-index:300; top:38px; right:0; min-width:180px; padding:4px; border:1px solid var(--dq-line-soft); border-radius:10px; background:#fff; box-shadow:var(--dq-mid); }
.dq-ui .dq-account-menu .dq-account-meta { display:block; margin:0 0 4px; padding:6px 8px 10px; border-bottom:1px solid var(--dq-line-soft); color:var(--dq-muted); font-size:12px; line-height:18px; }
.dq-ui .dq-account-menu .dq-account-actions > :is(a,button) { display:block; box-sizing:border-box; width:100%; min-height:28px; margin:0; padding:5px 8px; border:0; border-radius:6px; color:var(--dq-ink); background:transparent; box-shadow:none; text-align:left; text-decoration:none; font:13px/20px var(--dq-font); cursor:pointer; }
.dq-ui .dq-account-menu .dq-account-actions > :is(a,button)[hidden] { display:none; }
.dq-ui .dq-account-menu .dq-account-actions > :is(a,button):hover { background:var(--dq-hover); }
.dq-ui .dq-account-menu .dq-account-actions > [data-account-action="logout"] { color:var(--dq-danger-tx); }
.dq-ui .dq-account-menu :is(summary,a,button):focus-visible { outline:2px solid var(--dq-accent); outline-offset:2px; }
