/* Home is the reference. Keep the feed's own rules and the full-screen chat
   layout intact; share its typography, surfaces and controls elsewhere. */
:root{--dp-ui-font:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--dp-ui-bg:#f8f7fa;--dp-ui-surface:#fff;--dp-ui-text:#21182b;--dp-ui-muted:#596274;--dp-ui-line:#eae5ee;--dp-ui-purple:#6500c7;--dp-ui-soft:#f2e9fb;--dp-ui-radius:14px}
@media screen{
 body:not(.dp-social-home){font-family:var(--dp-ui-font);font-size:14px;line-height:1.5}
 body:not(.dp-social-home) :is(h1,h2,h3){font-family:var(--dp-ui-font);font-weight:700;line-height:1.3;letter-spacing:-.4px}
 body:not(.dp-social-home) h1{font-size:25px;letter-spacing:-.75px}
 body:not(.dp-social-home) h2{font-size:18px}
 body:not(.dp-social-home) h3{font-size:15px}
 body:not(.dp-social-home) :is(button,.button,.btn,.primary,.secondary){font-family:var(--dp-ui-font);font-size:12px;font-weight:650;line-height:1.45}
 body:not(.dp-social-home) :is(input,select,textarea){font-family:var(--dp-ui-font);font-weight:400;line-height:1.5}
 body:not(.dp-social-home) :is(.panel,.card,.club-card,.trust-card){border-radius:var(--dp-ui-radius);border-color:var(--dp-ui-line);box-shadow:none}
 body:not(.dp-social-home) :is(.heading,.hero) p{font-size:14px;line-height:1.6}
 body:not(.dp-social-home) :is(.label,.eyebrow,.badge,.roles,.open){font-weight:650}
 body:not(.dp-social-home) :is(.create,.btn){box-shadow:none;border-radius:24px}
 body:not(.dp-social-home) .create{background:var(--dp-ui-purple)}
 body:not(.dp-social-home) :is(.logo,.trust-logo,.brand){font-family:var(--dp-ui-font);font-size:27px;font-weight:850;letter-spacing:-1px}
 /* Common signed-in frame matches Home, including its original wordmark. */
 body.dp-app-shell:not(.dp-social-home),body.fi-app:not(.dp-social-home){background:var(--dp-ui-bg);color:var(--dp-ui-text);font-size:14px;line-height:1.5}
 body.dp-app-shell:not(.dp-social-home)>.dp-main{padding-top:0}
 body.dp-app-shell:not(.dp-social-home)>.dp-main>.dp-top{height:78px;min-height:64px;margin:0 0 16px;padding:16px 0;background:var(--dp-ui-bg);border:0;gap:15px}
 body.dp-app-shell:not(.dp-social-home) .dp-top .dp-mobile-brand{font-size:27px;font-weight:850;letter-spacing:-1px;color:var(--dp-ui-purple)}
 body.dp-app-shell:not(.dp-social-home) .dp-top .dp-mobile-brand span{color:#967000}
 .dp-app-shell:not(.dp-social-home) .dp-top .dp-avatar>.dp-member-avatar{display:block;width:36px;height:36px;min-width:36px;flex-basis:36px;border-radius:50%;object-fit:cover;font-size:13px}
 .dp-app-shell:not(.dp-social-home) .dp-top .dp-avatar>span.dp-member-avatar{display:grid;place-items:center;background:#eee4fc;color:var(--dp-ui-purple)}
 .dp-app-shell .dp-top .dp-presence-dot{position:absolute;right:0;bottom:0;width:9px;height:9px;box-sizing:border-box;border:2px solid white;border-radius:50%;background:#4fb581}
 .dp-app-shell .dp-top .dp-presence-dot[hidden]{display:none!important}
 body.dp-app-shell:not(.dp-social-home) :is(.dp-heading,.fi-title){margin:0;padding:16px 0}
 body.dp-app-shell:not(.dp-social-home) :is(.dp-heading,.fi-title) h1{font-size:25px;line-height:1.25;font-weight:700;letter-spacing:-.75px;margin:0}
 body.dp-app-shell:not(.dp-social-home) .dp-heading p{font-size:13px;line-height:1.6;color:var(--dp-ui-muted);margin:6px 0 0}
 body.dp-app-shell:not(.dp-social-home) :is(.dp-panel,.fi-content,.dp-social-profile,.product-card,.shop-seller-card){border:1px solid var(--dp-ui-line);border-radius:var(--dp-ui-radius);box-shadow:none;background:var(--dp-ui-surface)}
 body.dp-app-shell:not(.dp-social-home) .dp-panel{padding:18px}
 body.dp-app-shell:not(.dp-social-home) :is(.dp-entry,.fi-form-panel,.fi-calculation,.fi-comments){border-color:var(--dp-ui-line);border-radius:var(--dp-ui-radius);box-shadow:none}
 /* Home's 13px names, 14px copy and 11px metadata. */
 body.dp-app-shell:not(.dp-social-home) :is(.dp-post-author,.fi-person) strong{font-size:13px;font-weight:700}
 body.dp-app-shell:not(.dp-social-home) :is(.dp-post-body,.fi-content p,.shop-empty p,.dp-profile-bio){font-size:14px;line-height:1.6}
 body.dp-app-shell:not(.dp-social-home) :is(.dp-sub,.fi-person small,.fi-row small){font-size:11px;color:var(--dp-ui-muted)}
 body.dp-app-shell:not(.dp-social-home) :is(.dp-form label,.fi-content label,.pt-content form label,.shop-market-search label){font-size:12px;font-weight:500;color:var(--dp-ui-muted)}
 body.dp-app-shell:not(.dp-social-home) :is(.dp-button,.button,.primary,.secondary,.fi-content button){font-family:var(--dp-ui-font);font-size:12px;font-weight:650;border-radius:24px;box-shadow:none}
 body.dp-app-shell:not(.dp-social-home) :is(.dp-primary,.primary,.fi-content .button:not(.fi-outline)){background:var(--dp-ui-purple);color:#fff}
 body.dp-app-shell:not(.dp-social-home) :is(.dp-form,.pt-content form,.fi-form-panel) :is(input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea){border:1px solid #e3dbe9;border-radius:12px;background:#f8f6fa;color:var(--dp-ui-text);font-size:16px;box-shadow:none;max-width:100%}
 /* Same underline, size and spacing as Following / Discover on Home. */
 body.dp-app-shell:not(.dp-social-home) :is(.fi-tabs,.shop-market-tabs,.dp-feed-tabs,.dp-profile-tabs,.fi-detail-tabs,.fi-holding-links,.subnav,.pt-nav){display:flex;align-items:center;gap:27px;justify-content:flex-start;background:transparent;border:0;border-bottom:1px solid #e8e1ee;border-radius:0;padding:0 2px;margin:0 0 15px;overflow-x:auto;flex-wrap:nowrap}
 body.dp-app-shell:not(.dp-social-home) :is(.fi-tabs,.shop-market-tabs,.dp-feed-tabs,.dp-profile-tabs,.fi-detail-tabs,.fi-holding-links,.subnav,.pt-nav)>a{flex:0 0 auto;display:block;font-size:13px;font-weight:650;line-height:1.5;letter-spacing:0;white-space:nowrap;text-decoration:none;color:var(--dp-ui-muted);background:transparent;border:0;border-bottom:3px solid transparent;border-radius:0;padding:13px 2px 11px}
 body.dp-app-shell:not(.dp-social-home) :is(.fi-tabs,.shop-market-tabs,.dp-feed-tabs,.dp-profile-tabs,.fi-detail-tabs,.fi-holding-links,.subnav,.pt-nav)>a:is(.selected,.dp-active,[aria-current=page]){color:var(--dp-ui-purple);border-bottom-color:var(--dp-ui-purple);background:transparent}
 body.dp-app-shell:not(.dp-social-home) .shop-market-tabs>a.selected:after{display:none}
 body.dp-app-shell.dp-shop-browse .subnav{display:none}
 /* Chats retain compact rows and their independent conversation controls. */
 body.dp-app-shell[data-module=messages] .dp-chat-layout:not(.is-open){background:#fff;border:1px solid var(--dp-ui-line);border-radius:var(--dp-ui-radius);overflow:hidden;margin:14px auto 0}
 body.dp-app-shell[data-module=messages] .dp-chat-list-heading{padding:15px 15px 12px}
 body.dp-app-shell[data-module=messages] .dp-chat-list-heading h1{font-size:23px;letter-spacing:-.75px;font-weight:700}
 body.dp-app-shell[data-module=messages] .dp-chat-layout .dp-chat-person strong{font-size:13px;line-height:1.4;font-weight:700;color:var(--dp-ui-text)}
 body.dp-app-shell[data-module=messages] .dp-chat-layout .dp-chat-person small{font-size:14px;line-height:1.6;color:var(--dp-ui-muted)}
 body.dp-app-shell[data-module=messages] .dp-chat-layout .dp-chat-person>.dp-chat-list-meta{font-size:11px}
 body.dp-app-shell[data-module=messages] .dp-chat-search input{font-size:14px!important}
 body.dp-app-shell[data-module=messages] .dp-chat-filters button{font-size:12px;font-weight:500;border-radius:24px}
 body.dp-app-shell[data-module=messages] .dp-chat-filters button[aria-pressed=true]{font-weight:650;background:var(--dp-ui-soft);color:var(--dp-ui-purple)}
 /* Invest keeps prices, progress and semantic status colours distinct. */
 body.fi-app .fi-content{padding:18px;border-color:var(--dp-ui-line);border-radius:var(--dp-ui-radius)}
 body.fi-app .fi-cover{background:#f2e9fb;color:var(--dp-ui-text);min-height:120px;padding:18px}
 body.fi-app .fi-cover h2{font-size:20px;font-weight:700;color:var(--dp-ui-text);letter-spacing:-.4px;margin-top:20px}
 body.fi-app .fi-cover p,body.fi-app .fi-cover small{color:var(--dp-ui-muted)}
 body.fi-app :is(.fi-section-heading,.fi-opportunity-heading) h2{font-size:18px;font-weight:700}
 body.fi-app .fi-metrics strong{font-size:18px;font-weight:700;letter-spacing:-.4px}
 body.fi-app .fi-chips a{font-size:12px;font-weight:500;border-color:var(--dp-ui-line);border-radius:24px}
 body.fi-app .fi-chips a[aria-current]{color:var(--dp-ui-purple);background:var(--dp-ui-soft);border-color:#e4d7f3}
 body.fi-app .fi-search input{font-size:16px;border:1px solid #e3dbe9;border-radius:12px;background:#f8f6fa}
 /* Shop's catalogue, order detail, seller and checkout use the same system. */
 body.dp-module-shop .dp-module-content{padding-top:12px}
 body.dp-module-shop :is(.shop-results-heading,.shop-rail-heading,.shop-seller-card) :is(h1,h2){font-size:18px;font-weight:700;letter-spacing:-.4px}
 body.dp-module-shop .shop-search-line{border:1px solid #e3dbe9;border-radius:24px;background:#fff;box-shadow:none;padding:5px 6px 5px 13px}
 body.dp-module-shop .shop-search-line:focus-within{border-color:var(--dp-ui-purple);outline:2px solid #e4d2f5;outline-offset:1px}
 body.dp-module-shop .shop-search-line input[type=search]{font-size:14px;font-weight:400;border:0;background:transparent}
 body.dp-module-shop .shop-search-line .primary{font-size:12px;border-radius:24px;background:var(--dp-ui-purple);min-height:40px}
 body.dp-module-shop .shop-area-line,body.dp-module-shop .shop-area-line select{font-size:12px;font-weight:500;color:var(--dp-ui-muted)}
 body.dp-module-shop .shop-assurance{background:#f2e9fb;border-color:var(--dp-ui-line);border-radius:var(--dp-ui-radius)}
 body.dp-module-shop .shop-assurance strong{font-weight:650;color:var(--dp-ui-text)}
 body.dp-module-shop .shop-assurance small{color:var(--dp-ui-muted)}
 body.dp-module-shop .shop-chips a{font-size:12px;font-weight:500;color:var(--dp-ui-muted);border-color:var(--dp-ui-line);border-radius:24px}
 body.dp-module-shop .shop-chips a.selected{background:var(--dp-ui-soft);border-color:#e4d7f3;color:var(--dp-ui-purple);font-weight:650}
 body.dp-module-shop .shop-market-grid .product-card h3{font-size:14px;font-weight:650}
 body.dp-module-shop .shop-market-grid .product-card strong{font-size:18px;font-weight:700}
 body.dp-module-shop .shop-empty h2{font-size:18px}
 body.dp-module-shop .shop-empty p{font-size:14px}
 /* My DigiPay: retain the cover and portrait; align the text hierarchy. */
 body.dp-app-shell .dp-profile-identity h1{font-size:25px;font-weight:700;line-height:1.25;letter-spacing:-.75px}
 body.dp-app-shell .dp-profile-identity :is(.dp-profile-visibility,.dp-profile-online){font-size:12px}
 body.dp-app-shell .dp-profile-identity .dp-profile-counts{font-size:14px}
 body.dp-app-shell .dp-profile-actions .dp-button{font-size:12px;font-weight:650;min-height:44px;border-radius:24px}
 body.dp-app-shell .dp-social-profile{margin-top:14px}
 @media(max-width:700px){
  body:not(.dp-social-home) h1{font-size:23px}
  body:not(.dp-social-home) :is(.heading,.card) h1{font-size:23px;line-height:1.25;letter-spacing:-.75px}
  body:not(.dp-social-home) :is(input,select,textarea){font-size:16px}
  body.dp-app-shell:not(.dp-social-home)>.dp-main{margin-left:0;margin-right:0;padding:0 16px 28px}
  body.dp-app-shell:not(.dp-social-home)>.dp-main>.dp-top{height:70px;min-height:64px;padding:12px 0;margin:0 0 12px;gap:15px}
  body.dp-app-shell:not(.dp-social-home) .dp-top>div{gap:7px}
  body.dp-app-shell:not(.dp-social-home) #dpMenuOpen{width:42px;min-width:42px;height:42px;font-size:15px;border:1px solid #e4d9ed;background:#fff}
  body.dp-app-shell:not(.dp-social-home) .dp-top .dp-mobile-brand{font-size:25px}
  body.dp-app-shell:not(.dp-social-home) .dp-top :is(.dp-header-circle,.dp-avatar){width:35px;height:35px}
  body.dp-app-shell:not(.dp-social-home) .dp-top .dp-avatar>.dp-member-avatar{width:34px;height:34px;min-width:34px;flex-basis:34px}
  body.dp-app-shell:not(.dp-social-home) :is(.dp-heading,.fi-title) h1{font-size:23px}
  body.dp-app-shell:not(.dp-social-home) .dp-panel{padding:15px}
  body.dp-app-shell .dp-profile-identity h1{font-size:23px}
  body.fi-app .fi-content{padding:15px}
  body.dp-module-shop .shop-shortcuts>a{font-size:11px;line-height:1.5}
  body.dp-module-shop .shop-assurance strong{font-size:11px}
  body.dp-module-shop .shop-assurance small{font-size:10px}
 }
 @media(max-width:360px){body.dp-module-shop .shop-shortcuts{grid-template-columns:1fr}.dp-module-shop .shop-shortcuts>a{padding:10px 12px}}
 @media(prefers-reduced-motion:reduce){body.dp-app-shell{scroll-behavior:auto}}
}
