/* Dragonomi visual system. Existing palette, font families and service contracts
   remain authoritative. This layer follows legacy theme and UX styles. */
html[data-dg-design] {
 --global-max-width:1440px;
 --dp-radius-control:4px; --dp-radius-card:6px; --dp-radius-dialog:10px;
 --dp-border:color-mix(in srgb,var(--color-text) 14%,var(--color-bg-elev));
 --dp-shadow-card:0 1px 2px var(--shadow-warm-light),0 10px 26px -18px var(--shadow-warm-strong);
 --dp-shadow-hover:0 2px 5px var(--shadow-warm-light),0 16px 30px -18px var(--shadow-warm-strong);
 --dp-shadow-dialog:0 8px 24px var(--shadow-warm-light),0 24px 64px -20px var(--shadow-warm-strong);
 --dp-top-light:color-mix(in srgb,var(--color-bg-elev) 75%,transparent);
 --dp-space-1:8px; --dp-space-2:16px; --dp-space-3:24px; --dp-space-4:32px; --dp-space-5:48px;
}
html[data-dg-design][data-color-scheme="dark"] {
 --dp-shadow-card:0 2px 4px rgba(0,0,0,.16),0 12px 28px -18px rgba(0,0,0,.48);
 --dp-shadow-hover:0 3px 8px rgba(0,0,0,.2),0 18px 32px -18px rgba(0,0,0,.55);
 --dp-shadow-dialog:0 12px 56px rgba(0,0,0,.48);
 --dp-top-light:color-mix(in srgb,var(--color-text) 4%,transparent);
}
@media(prefers-color-scheme:dark) {
 html[data-dg-design][data-color-scheme="system"] {
  --dp-shadow-card:0 2px 4px rgba(0,0,0,.16),0 12px 28px -18px rgba(0,0,0,.48);
  --dp-shadow-hover:0 3px 8px rgba(0,0,0,.2),0 18px 32px -18px rgba(0,0,0,.55);
  --dp-shadow-dialog:0 12px 56px rgba(0,0,0,.48);
  --dp-top-light:color-mix(in srgb,var(--color-text) 4%,transparent);
 }
}
@media(min-width:901px) {
 html[data-dg-design] .container.wrapper {padding-left:32px!important;padding-right:32px!important;}
}
/* Texture stays on the outside paper; information gets an opaque, clean surface. */
html[data-dg-design] :is(.hx-discovery,.home-utility-row,.hcol,.hs-reports__card,.pbox,.company-directory-card,.tag-filters,.company-directory__controls,.hx-search-results,.hx-shelf,.rd-empty) {
 background-color:var(--color-bg-elev)!important;background-image:none!important;
}
html[data-dg-design] :is(.post-hero.is-post,.post-template article.content) {background-color:var(--color-bg-elev)!important;background-image:none!important;}
html[data-dg-design] :is(.hcol,.hs-reports__card,.pbox,.company-directory-card,.hx-search-results,.hx-shelf) {
 border:1px solid var(--dp-border)!important;border-radius:var(--dp-radius-card)!important;
 box-shadow:var(--dp-shadow-card),inset 0 1px 0 var(--dp-top-light)!important;
}
html[data-dg-design] :is(.hx-library,.ddask-dialog .ddsearch-modal) {
 border-color:var(--dp-border)!important;border-radius:var(--dp-radius-dialog)!important;
 background-color:var(--color-bg-elev)!important;box-shadow:var(--dp-shadow-dialog)!important;
}
/* Type has three roles: reading, interface and data. */
html[data-dg-design] :is(.section-title,.ssec__kick,.psec__kick,.rd-field,.company-directory__controls label>span,.tag-filters__label) {
 font-family:var(--font-sans)!important;font-size:12px!important;letter-spacing:.055em!important;line-height:1.4;
}
html[data-dg-design] :is(.company-page-badge,.company-directory-badge__ticker,.pbox__val,.pbox__chg) {font-variant-numeric:tabular-nums lining-nums;}
html[data-dg-design] :is(.rd-card-tags a,.post-tag) {font-family:var(--font-sans)!important;letter-spacing:.05em!important;}
html[data-dg-design] :is(.hx-button,.hx-submit,.rd-submit,.rd-clear,.rd-filter-chip,.tag-filter,.company-directory__clear,.ddask-dialog__submit) {
 font-family:var(--font-sans)!important;font-size:14px!important;line-height:1.35;
 border-radius:var(--dp-radius-control)!important;min-height:44px;
 transition:background-color 160ms ease,border-color 160ms ease,color 160ms ease,box-shadow 160ms ease;
}
html[data-dg-design] :is(.hx-search input,.rd-field input,.rd-field select,.company-directory__controls input,.company-directory__controls select,.ddask-dialog textarea.ddsearch-input) {
 border-radius:var(--dp-radius-control)!important;border-color:var(--dp-border)!important;
 background:var(--color-bg-elev)!important;color:var(--color-text)!important;
}
html[data-dg-design] :is(a,button,input,select,textarea,summary):focus-visible {
 outline:2px solid var(--color-brand)!important;outline-offset:3px;
}
html[data-dg-design] :is(.hx-button,.hx-save,.hx-follow)[aria-pressed="true"] {
 color:var(--color-text)!important;background:var(--color-bg-acc)!important;
 border-color:var(--color-brand)!important;
}
html[data-dg-design] [data-dp-confirmed] {box-shadow:0 0 0 2px color-mix(in srgb,var(--color-brand) 32%,transparent)!important;}
.dp-sr-status {position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
/* Header remains the same navigation, with less competition between controls. */
html[data-dg-design] .header {border-bottom:1px solid var(--color-border);box-shadow:0 2px 10px var(--shadow-warm-light)!important;}
html[data-dg-design] .header__mainnav a {min-height:44px;display:inline-flex;align-items:center;}
html[data-dg-design] .header :is(.signup-link,.header__mainnav-search) {border-radius:var(--dp-radius-control)!important;}
@media(min-width:901px) and (max-width:1200px) {
 html[data-dg-design] .header .header__container {display:flex!important;flex-wrap:wrap!important;gap:8px 20px!important;}
 html[data-dg-design] .header .header__brand {position:static!important;transform:none!important;order:1;flex:1 1 auto!important;min-width:0;}
 html[data-dg-design] .header .header__brand>a {flex-wrap:nowrap!important;}
 html[data-dg-design] .header .header__actions {order:2;flex:0 0 auto!important;}
 html[data-dg-design] .header .header__mainnav {order:3;flex:1 0 100%!important;width:100%;justify-content:space-between!important;margin:0!important;}
}
@media(max-width:900px) {
 html[data-dg-design] .header .header__more .header__search-toggle.ddask-trigger {display:none!important;}
 html[data-dg-design] .header :is(.header__menu-toggle,.header__theme-toggle) {min-width:44px!important;min-height:44px!important;}
 html[data-dg-design] .header .signup-link {min-height:40px;display:inline-flex;align-items:center;}
 html[data-dg-design] .mobile-action-bar {border-top:1px solid var(--dp-border)!important;box-shadow:0 -3px 16px var(--shadow-warm-light);}
 html[data-dg-design] .mobile-action-bar a {font:600 13px/1.3 var(--font-sans)!important;letter-spacing:0!important;text-transform:none!important;min-height:48px;display:flex;align-items:center;justify-content:center;}
}
/* The existing AI dialog adopts the same control scale; access logic is untouched. */
html[data-dg-design] .ddask-dialog__head {padding:24px;border-bottom-color:var(--dp-border);}
html[data-dg-design] .ddask-dialog__body {padding:24px;}
html[data-dg-design] .ddask-dialog :is(.ddask-dialog__eyebrow,.ddask-dialog__form-foot>span,.ddask-dialog__footer,.ddsearch-ask__source time) {font-size:12px;letter-spacing:.015em;}
html[data-dg-design] .ddask-dialog__close {min-width:44px;min-height:44px;border-color:var(--dp-border);}
html[data-dg-design] .ddask-dialog__examples button {min-height:44px;padding:12px 0;}
html[data-dg-design] .ddask-dialog .ddsearch-ask__source {padding:14px 12px;margin-top:8px;border:1px solid var(--dp-border);border-radius:var(--dp-radius-control);background:var(--color-bg-acc);}
html[data-dg-design] .ddask-dialog__access {border-radius:var(--dp-radius-card);}
@media(max-width:640px) {
 html[data-dg-design] .ddask-dialog .ddsearch-modal {border-radius:0!important;}
 html[data-dg-design] .ddask-dialog__head,html[data-dg-design] .ddask-dialog__body {padding:20px;}
}
/* Footer keeps its current background and foreground; injected links become a list. */
html[data-dg-design] .footer>.container.wrapper>.row {display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,480px);gap:32px;margin:0;}
html[data-dg-design] .footer>.container.wrapper>.row>[class*="col-"] {max-width:none;width:auto;flex:none;border:0!important;padding:32px 0!important;}
html[data-dg-design] .footer__brand {margin:0!important;}
html[data-dg-design] .footer__title {font:600 32px/1.15 var(--font-serif);}
html[data-dg-design] .footer__description {font:400 15px/1.55 var(--font-sans);color:inherit;opacity:.8;max-width:34ch;margin:12px 0 0;}
html[data-dg-design] .footer #dragon-smart-wrapper {margin-top:0!important;font-family:var(--font-sans)!important;}
html[data-dg-design] .footer #dragon-smart-wrapper h5 {margin:0 0 10px!important;color:inherit!important;font:600 12px/1.4 var(--font-sans)!important;letter-spacing:.06em;}
html[data-dg-design] .footer #dragon-smart-wrapper .ds-grid {grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:4px 24px!important;}
html[data-dg-design] .footer #dragon-smart-wrapper .ds-card {
 flex-direction:row!important;justify-content:flex-start!important;gap:10px!important;
 min-height:44px!important;padding:10px 0!important;border:0!important;border-radius:0!important;
 color:inherit!important;background:transparent!important;text-align:left!important;
 transform:none!important;filter:none!important;box-shadow:none!important;grid-column:auto!important;
}
html[data-dg-design] .footer #dragon-smart-wrapper .ds-icon {width:18px;height:18px;margin:0;flex:none;color:inherit!important;fill:currentColor!important;}
html[data-dg-design] .footer #dragon-smart-wrapper .ds-text {font:500 15px/1.4 var(--font-sans);color:inherit!important;}
html[data-dg-design] .footer #dragon-smart-wrapper .ds-card:hover .ds-text {text-decoration:underline;text-underline-offset:4px;}
html[data-dg-design] .footer__bottom {display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:0!important;padding:16px 0!important;border-top:1px solid color-mix(in srgb,currentColor 20%,transparent)!important;}
html[data-dg-design] .footer__copy {font:400 13px/1.5 var(--font-sans);color:inherit;opacity:.8;}
html[data-dg-design] .footer :is(.color-scheme,.color-scheme-select) {min-height:40px;font:400 13px var(--font-sans);}
html[data-dg-design] .footer .hx-library-footer {justify-content:flex-start;width:100%;max-width:var(--global-max-width);margin:0 auto;padding:0 32px 24px;gap:20px;}
html[data-dg-design] .footer .hx-library-footer button {min-height:44px;padding:6px 0;background:transparent!important;color:inherit!important;border:0!important;font:500 14px var(--font-sans);}
html[data-dg-design] .footer .hx-library-footer button:hover {text-decoration:underline;text-underline-offset:4px;}
@media(max-width:700px) {
 html[data-dg-design] .footer>.container.wrapper>.row {grid-template-columns:minmax(0,1fr);gap:0;}
 html[data-dg-design] .footer>.container.wrapper>.row>[class*="col-"] {padding:24px 0 12px!important;}
 html[data-dg-design] .footer>.container.wrapper>.row>[class*="col-"]:last-child {padding-top:12px!important;padding-bottom:24px!important;}
 html[data-dg-design] .footer #dragon-smart-wrapper .ds-grid {gap:4px 16px!important;}
 html[data-dg-design] .footer__bottom {align-items:flex-start;}
}
@media(hover:hover) and (prefers-reduced-motion:no-preference) {
 html[data-dg-design] :is(.company-directory-card,.hs-reports__card) {transition:transform 160ms ease,box-shadow 160ms ease,border-color 160ms ease!important;}
 html[data-dg-design] :is(.company-directory-card,.hs-reports__card):hover {transform:translateY(-2px)!important;box-shadow:var(--dp-shadow-hover)!important;border-color:color-mix(in srgb,var(--color-brand) 45%,var(--dp-border))!important;}
}
@media(prefers-reduced-motion:reduce) {
 html[data-dg-design] {scroll-behavior:auto!important;}
 html[data-dg-design] :is(.company-directory-card,.hs-reports__card,.hcol,.hx-button,.hx-submit,.rd-submit,.tag-filter,.ds-card) {transition:none!important;animation:none!important;transform:none!important;}
}

@media(max-width:900px){html[data-dg-design] .footer .hx-library-footer{padding-right:var(--gap,16px);padding-left:var(--gap,16px);}}
