/* Desktop presentation shares the mobile glass palette and surface rhythm.
   The matching link media is a second boundary for touch/narrow viewports. */
@media screen and (min-width:1024px) and (hover:hover) and (pointer:fine) {
  :root {
    --background:#f1f5fa; --text:#202c3b; --muted:#596675;
    --line:#dce5ee; --border:#dce5ee; --radius:26px;
    --surface-gap:28px; --inside-gap:22px;
    --surface-shadow:inset 0 1px 0 #fff,0 12px 36px #2945640d;
    --desktop-gutter:clamp(28px,3.3vw,56px);
    /* Opaque fallback, progressively replaced by clear material below. */
    --desktop-fill:#f5f5f7; --desktop-hover:#ebebef;
    --desktop-ink:#263b54; --desktop-edge:#b5c4d5;
    --desktop-glint:none; --desktop-blur:none; --desktop-shadow:none;
    --desktop-bar:#fafafa; --desktop-bar-blur:none;
    --control-fill:var(--desktop-fill); --control-hover:var(--desktop-hover);
    --control-ink:var(--desktop-ink); --control-edge:var(--desktop-edge);
    --control-glint:var(--desktop-glint); --control-blur:var(--desktop-blur);
    --control-shadow:var(--desktop-shadow);
  }
  body {
    background:radial-gradient(ellipse at 4% 6%,#aed2f18c,transparent 48%),
      radial-gradient(ellipse at 92% 32%,#ecd0e778,transparent 46%),
      radial-gradient(ellipse at 18% 88%,#b9e4dd70,transparent 44%),var(--background);
    background-attachment:fixed; color:var(--text);
  }
  .content {max-width:1320px;padding:24px var(--desktop-gutter) 72px}
  .content>.page-head {padding:10px 0 14px;gap:24px}
  .page-head h1,.public-content .page-head h1 {
    font-size:clamp(28px,2.5vw,36px);line-height:1.4;letter-spacing:-.035em;font-weight:700;
  }
  .page-head p {margin-top:12px;color:#626268;line-height:1.8;max-width:62ch}
  .section-head h2 {font-size:21px;line-height:1.5;letter-spacing:-.025em;font-weight:650}
  .section-head {gap:20px;margin-bottom:24px}
  .content .actions,.topbar .actions,dialog .actions,.form-footer {gap:12px 16px}
  .content .section-head {gap:24px}
  .content .section-head .actions button {min-height:44px;padding:10px 18px;font-size:14px}
  .content .small,.content .metric>.small {font-size:13px;line-height:1.75}
  .fields {gap:24px 22px}.field {gap:10px}.form {gap:24px}
  .content .card,.content .card.section,.content>.grid>.card,
  .content .fx-panel,.gate>.card,.home-summary-list,.quick-actions {
    background:#fff;border:1px solid #dce5ee;border-radius:26px;
    box-shadow:var(--surface-shadow);-webkit-backdrop-filter:none;backdrop-filter:none;
  }
  .content .card.section {padding:30px}
  .content .card.danger-zone {border-color:#d9a0ab}
  .home-balance.card {
    padding:34px;
  }
  .home-balance .label {font-size:17px;color:#5e5e66}
  .home-summary-list>.metric {border-radius:0;background:transparent;border:0;border-bottom:1px solid #ececf0;box-shadow:none}
  .home-summary-list>.metric:last-child {border-bottom:0}
  .metric .label,.home-summary-list .label {color:#626268}
  .metric .value {letter-spacing:-.8px}
  .asset-tile,.market-watch-card,.bank-product-card,.performance-card,.transaction-card {
    border-color:#e8e8ed;border-radius:22px;box-shadow:0 4px 18px #1d1d1f04;
  }
  .asset-footer {background:#f4f7fb;border-color:#e4ebf3;border-radius:0 0 21px 21px;gap:12px;padding:16px 22px}
  .content .row,.security-row {border-color:#e9e9ee}
  .security-summary:hover {background:#f5f5f780}
  .security-head {color:#626268;padding-bottom:16px}
  .security-symbol,.security-private,.security-evidence {color:#60616a}
  .security-summary {padding-block:18px}
  .public-property-metric {background:#f7f7fa;border-color:transparent}
  .note:not(.warning):not(.error),.empty,.asset-empty {background:#f0f5fa;color:#526174}
  .field input,.field select,.field textarea,.public-market-search input,.public-market-search select {
    border:1px solid #d2d2d9;border-radius:15px;background:#ffffffd9;color:#1d1d1f;
  }
  .public-market-search input {min-height:48px;padding:12px 16px}
  .field input:focus,.field select:focus,.field textarea:focus,.public-market-search input:focus {
    background:#fff;outline:3px solid #0071e36b;outline-offset:1px;border-color:#0071e3;
  }
  th {background:#f7f7f9;color:#626268}td {border-color:#ededf1}
  .layout .sidebar {
    padding-top:36px;background:var(--desktop-bar);border-right-color:#1d1d1f0d;
    -webkit-backdrop-filter:var(--desktop-bar-blur);backdrop-filter:var(--desktop-bar-blur);
  }
  .sidebar .brand {font-size:23px;letter-spacing:-1px}
  .sidebar nav {gap:24px}.sidebar .nav-group {gap:8px}
  .nav-group-label {font-size:12px;letter-spacing:0;color:#596675}
  .sidebar .nav {color:#45454d;border-radius:16px;font-weight:550}
  .sidebar .nav .ui-icon {color:#666670}
  .sidebar-foot {border-color:#1d1d1f12}
  .layout .topbar {
    margin:20px var(--desktop-gutter) 8px;padding:10px 16px;gap:16px;border-radius:20px;
    background:var(--desktop-glint),var(--desktop-bar);border-color:var(--desktop-edge);
    box-shadow:var(--desktop-shadow);-webkit-backdrop-filter:var(--desktop-bar-blur);backdrop-filter:var(--desktop-bar-blur);
  }
  .topbar .identity {color:#55555e}.topbar .profile-mark {background:#ffffff40;color:#55555e}
  .public-shell {max-width:1240px;padding:28px var(--desktop-gutter) 40px}
  .public-header {padding:8px 0 30px}.public-header .brand {font-size:24px;padding-left:0}
  .public-nav {
    width:fit-content;max-width:100%;gap:8px;padding:6px;margin-bottom:30px;border-radius:20px;
    background:var(--desktop-glint),var(--desktop-bar);border-color:var(--desktop-edge);
    box-shadow:var(--desktop-shadow);-webkit-backdrop-filter:var(--desktop-bar-blur);backdrop-filter:var(--desktop-bar-blur);
  }
  .public-content {padding:0;max-width:none}.public-market-view {gap:24px}
  .public-footer {margin-top:36px;padding-top:24px;border-top:1px solid #1d1d1f12;color:#626268}
  .gate {max-width:540px;margin-top:9vh}.gate>.card {padding:38px}
  .gate h1 {font-size:30px;letter-spacing:-1px}.gate-brand {margin-bottom:30px}
  dialog:not(.menu-sheet) {background:#fcfcfef7;border:1px solid #fff;border-radius:28px;box-shadow:0 28px 100px #1d1d1f29}
  dialog::backdrop {background:#1c24332b;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}

  @supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) {
    :root {
      --desktop-fill:var(--liquid-neutral-fill); --desktop-hover:var(--liquid-neutral-hover);
      --desktop-edge:rgba(108,135,164,.28);
      /* Symmetric sheen: top-to-bottom only, no corner hot spot. */
      --desktop-glint:linear-gradient(180deg,#ffffff8c 0%,#ffffff00 45%,#ffffff40 100%);
      --desktop-blur:blur(16px) saturate(145%);
      /* Inset shadows are top/bottom only so controls read flat and even. */
      --desktop-shadow:inset 0 1px 1px #ffffffff,inset 0 -1px 2px #6687a633,0 2px 4px #2443660f,0 8px 22px #24436614;
      --desktop-bar:rgba(250,252,255,.22); --desktop-bar-blur:blur(24px) saturate(140%);
    }
    .content .card,.content .card.section,.content>.grid>.card,
    .content .fx-panel,.gate>.card,.home-summary-list,.quick-actions {
      /* Optical depth lives in the material, not the content or layout. */
      background:linear-gradient(180deg,#ffffffa6 0%,#ffffff1a 50%,#ffffff59 100%),rgba(255,255,255,.40);
      border-color:#ffffffe6;
      box-shadow:inset 0 1px 1px #ffffffff,inset 0 -1px 2px #7498b524,0 4px 10px #2945640d,0 16px 40px #29456417;
      -webkit-backdrop-filter:blur(22px) saturate(130%);backdrop-filter:blur(22px) saturate(130%);
    }
    .asset-tile,.market-watch-card,.bank-product-card,.performance-card,.transaction-card {
      background:linear-gradient(180deg,#ffffff99 0%,#ffffff26 55%,#ffffff4d 100%),#ffffff4d;
      border-color:#ffffffe0;box-shadow:inset 0 1px 1px #ffffffe6,inset 0 -1px 2px #7898b526,0 7px 20px #2945640a;
    }
    .asset-footer {background:#eff5fc66;border-color:#d4e1ee70}
    .content .card.danger-zone {border-color:#d9a0ab}
    .primary,.signin-button {
      --control-fill:var(--liquid-primary-fill);--control-hover:var(--liquid-primary-hover);
      --control-ink:var(--liquid-primary-ink);--control-edge:rgba(48,104,168,.34);
      --control-glint:var(--desktop-glint);--control-shadow:var(--desktop-shadow);--control-blur:var(--desktop-blur);
    }
    .soft,[aria-pressed=true] {
      --control-fill:var(--liquid-selected-fill);--control-hover:var(--liquid-selected-hover);
      --control-ink:var(--liquid-selected-ink);--control-edge:rgba(58,103,161,.32);
      --control-glint:var(--desktop-glint);--control-shadow:var(--desktop-shadow);--control-blur:var(--desktop-blur);
    }
    .danger {
      --control-fill:var(--liquid-danger-fill);--control-hover:var(--liquid-danger-hover);
      --control-ink:var(--liquid-danger-ink);--control-edge:rgba(160,73,94,.34);
      --control-glint:var(--desktop-glint);--control-shadow:var(--desktop-shadow);--control-blur:var(--desktop-blur);
    }
    .sidebar .nav.active,.public-nav [aria-current=page] {
      background:var(--desktop-glint),#6697d01a;color:#214f83;border-color:#4575ac52;
      box-shadow:var(--desktop-shadow);-webkit-backdrop-filter:var(--desktop-blur);backdrop-filter:var(--desktop-blur);
    }
    .public-nav button[aria-current=page] {--control-fill:#6697d01a;--control-hover:#6697d033}
    .sidebar .nav.active .ui-icon {color:#214f83}
    .quick-action:nth-child(n) .quick-icon {
      background:var(--desktop-glint),#83acd619;border-color:#8796ae38;
      box-shadow:var(--desktop-shadow);-webkit-backdrop-filter:var(--desktop-blur);backdrop-filter:var(--desktop-blur);
    }
  }
  :is(.public-shell,.content,.gate,dialog,.topbar) button:where(:not(.bar-button,.help-trigger,.bottom-item,.public-brand)) {
    background:var(--control-glint),var(--control-fill);color:var(--control-ink);border:1px solid var(--control-edge);
    box-shadow:var(--control-shadow);-webkit-backdrop-filter:var(--control-blur);backdrop-filter:var(--control-blur);
    position:relative;border-radius:14px;min-height:44px;padding:10px 18px;line-height:1.5;
  }
  .signin-button {position:relative;display:inline-flex;align-items:center;justify-content:center;text-align:center;text-decoration:none;border-radius:14px}
  .topbar button,.gate button,.content .actions>button,.form-footer>button,.market-search>button,.public-shell .public-content button {border-radius:14px}
  .public-brand,.public-brand:hover {background:none;border-color:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}
  .public-nav {position:relative}
  :is(.public-shell,.content,.gate,dialog,.topbar) button:where(:not(.bar-button,.help-trigger,.bottom-item,.public-brand)):hover:not(:disabled) {
    background:var(--control-glint),var(--control-hover);
  }
  :is(.content,.gate,dialog,.topbar) button.primary,.public-signin,.signin-button {
    background:var(--control-glint),var(--control-fill);color:var(--control-ink);border-color:var(--control-edge);box-shadow:var(--control-shadow);
  }
  .sidebar .nav:not(.active):hover {background:#ffffff40}
  .public-nav button {border-color:transparent;box-shadow:none;background:transparent;color:#45454d}
  .public-nav [aria-current=page] {font-weight:650}
  .public-nav button[aria-current=page] {background:var(--desktop-glint),var(--control-fill);border-color:#4575ac52;box-shadow:var(--control-shadow);color:#214f83}
  .public-content button.public-market-result,.content button.account-heading-button {border-radius:18px;padding:14px 18px}
  .content button.quick-action {border-radius:18px;min-height:64px}
  .gate button.account-signout {min-height:48px;padding:12px 22px;white-space:normal}
  .topbar button.account-signout {min-height:44px;padding:10px 20px;white-space:nowrap;flex-shrink:0}
  .public-header button.public-signin,.gate .signin-button {min-height:48px;padding:12px 22px}
  dialog button:is(.dialog-close,.icon-button) {width:44px;height:44px;min-width:44px;min-height:44px;padding:0;border-radius:50%}
  :is(.public-shell,.content,.gate,dialog,.topbar) button:disabled {
    background:#eeeeF2;color:#72727a;border-color:#c7c7ce;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;
  }
  button:focus-visible,a:focus-visible,summary:focus-visible {outline:3px solid #0071e3;outline-offset:3px}

  /* A transparent center with a separate one-pixel optical rim. This layer
     never intercepts a click or sits across the label; no raster/remote assets. */
  @supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) and (mask-composite:exclude) {
    :is(.public-shell,.content,.gate,dialog,.topbar) button:where(:not(.bar-button,.help-trigger,.bottom-item,.public-brand))::before,
    .signin-button::before,.layout .topbar::before,.public-nav::before {
      content:"";position:absolute;inset:-1px;padding:1.5px;border-radius:inherit;pointer-events:none;
      /* An even rim: brighter above, slightly cooler below, identical left and right. */
      background:linear-gradient(180deg,#ffffffe6 0%,#ffffff8c 50%,#b9cbdd99 100%);
      -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
      mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
      -webkit-mask-composite:xor;mask-composite:exclude;opacity:.85;
      transition:opacity .35s ease;
    }
    :is(.public-shell,.content,.gate,dialog,.topbar) button:where(:not(.bar-button,.help-trigger,.bottom-item,.public-brand)):is(:hover,:focus-visible):not(:disabled)::before,
    .signin-button:is(:hover,:focus-visible)::before {opacity:1}
    .public-nav button:not([aria-current=page])::before,
    :is(.public-shell,.content,.gate,dialog,.topbar) button:disabled::before {content:none}
  }
  @media (prefers-reduced-transparency:reduce),(prefers-contrast:more) {:root:where(:not([data-glass-appearance=active])){
      --desktop-fill:#f5f5f7;--desktop-hover:#e8e8ed;--desktop-edge:#777783;
      --desktop-glint:none;--desktop-blur:none;--desktop-shadow:none;--desktop-bar:#fff;--desktop-bar-blur:none;
    }:where(:root:not([data-glass-appearance=active])) body{background:#f5f5f7}:where(:root:not([data-glass-appearance=active])) .primary,:where(:root:not([data-glass-appearance=active])) .signin-button{--control-fill:#1459b8;--control-hover:#0c4593;--control-ink:#fff;--control-edge:#1459b8}:where(:root:not([data-glass-appearance=active])) .soft,:where(:root:not([data-glass-appearance=active])) [aria-pressed=true]{--control-fill:#e5efff;--control-hover:#d8e8ff;--control-ink:#164f98;--control-edge:#6d8db5}:where(:root:not([data-glass-appearance=active])) .danger{--control-fill:#fff1f3;--control-hover:#ffe1e6;--control-ink:#a5243c;--control-edge:#bd6575}:where(:root:not([data-glass-appearance=active])) .content .card,:where(:root:not([data-glass-appearance=active])) .content .card.section,:where(:root:not([data-glass-appearance=active])) .content>.grid>.card,:where(:root:not([data-glass-appearance=active])) .content .fx-panel,:where(:root:not([data-glass-appearance=active])) .gate>.card,:where(:root:not([data-glass-appearance=active])) .home-summary-list,:where(:root:not([data-glass-appearance=active])) .quick-actions,:where(:root:not([data-glass-appearance=active])) .asset-tile,:where(:root:not([data-glass-appearance=active])) .market-watch-card,:where(:root:not([data-glass-appearance=active])) .bank-product-card,:where(:root:not([data-glass-appearance=active])) .performance-card,:where(:root:not([data-glass-appearance=active])) .transaction-card{
      background:#fff;border-color:#acbacb;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;
    }:where(:root:not([data-glass-appearance=active])) .asset-footer{background:#f4f7fb;border-color:#dce5ee}:where(:root:not([data-glass-appearance=active])) .sidebar .nav.active,:where(:root:not([data-glass-appearance=active])) .public-nav button[aria-current=page]{--control-fill:#e5efff;--control-hover:#d8e8ff;background:#e5efff;border-color:#164f98;box-shadow:none;color:#164f98}:where(:root:not([data-glass-appearance=active])) .quick-action:nth-child(n) .quick-icon{background:#edf3fa;border-color:#acbacb;box-shadow:none}:where(:root:not([data-glass-appearance=active])) dialog:not(.menu-sheet){background:#fff;border-color:#acbacb;box-shadow:none}:where(:root:not([data-glass-appearance=active])) dialog::backdrop{-webkit-backdrop-filter:none;backdrop-filter:none}:where(:root:not([data-glass-appearance=active])) :is(.public-shell,.content,.gate,dialog,.topbar) button:where(:not(.bar-button,.help-trigger,.bottom-item,.public-brand))::before,:where(:root:not([data-glass-appearance=active])) .signin-button::before,:where(:root:not([data-glass-appearance=active])) .layout .topbar::before,:where(:root:not([data-glass-appearance=active])) .public-nav::before{content:none}
  }
  @media (forced-colors:active) {
    body,.layout .sidebar,.layout .topbar,.public-nav,.content .card,.content .card.section,
    .content>.grid>.card,.content .fx-panel,.gate>.card,.home-summary-list,.quick-actions,dialog:not(.menu-sheet),
    .asset-tile,.asset-footer,.market-watch-card,.bank-product-card,.performance-card,.transaction-card {
      background:Canvas;color:CanvasText;border-color:CanvasText;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;
    }
    :is(.public-shell,.content,.gate,dialog,.topbar) button:where(:not(.bar-button,.help-trigger,.bottom-item,.public-brand)),
    :is(.content,.gate,dialog,.topbar) button.primary,.public-signin,.signin-button,
    :is(.public-shell,.content,.gate,dialog,.topbar) button:where(:not(.bar-button,.help-trigger,.bottom-item,.public-brand)):hover:not(:disabled),
    :is(.content,.gate,dialog,.topbar) button.primary:hover:not(:disabled),.signin-button:hover {
      background:ButtonFace;color:ButtonText;border-color:ButtonText;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;
    }
    .sidebar .nav.active,.public-nav button[aria-current=page],.public-nav button[aria-current=page]:hover:not(:disabled) {background:Highlight;color:HighlightText;border-color:Highlight}
    .sidebar .nav.active .ui-icon {color:HighlightText}
    :is(.public-shell,.content,.gate,dialog,.topbar) button:disabled {background:Canvas;color:GrayText;border-color:GrayText}
    :is(.public-shell,.content,.gate,dialog,.topbar) button:where(:not(.bar-button,.help-trigger,.bottom-item,.public-brand))::before,
    .signin-button::before,.layout .topbar::before,.public-nav::before {content:none}
    button:focus-visible,a:focus-visible,summary:focus-visible {outline-color:Highlight}
  }
}
