/* Public site counterpart to the Editor's line theme. Existing layout,
   interaction, access rules and artwork presentation stay with each component. */
:is(.landing-page,.account-page,.legal-page) {
  --site-divider:linear-gradient(90deg,transparent,#ffffff60 20%,#ffffff60 80%,transparent);
  --site-divider-vertical:linear-gradient(transparent,#ffffff60 20%,#ffffff60 80%,transparent);
  scrollbar-color:#a0a0a0 transparent;
}
:is(.landing-page,.account-page,.legal-page) :is(.site-header,.legal-header,
  .recent-work-heading,.bundle-showcase-heading,.store-heading,.account-heading,
  .account-profile-heading,.bundle-detail-heading,.recent-gallery-heading,
  .storage-heading,.billing-heading,.creative-feature-column > h3,
  .bundle-cart-row,.bundle-store-purchase,.plan-card > header) {
  border-bottom-color:transparent;
  background-image:var(--site-divider);
  background-position:center bottom;
  background-size:100% 1px;
  background-repeat:no-repeat;
}
:is(.landing-page,.account-page,.legal-page) :is(.commercial-section,.topup-section,
  .subscription-summary,.credit-summary,.account-security,.store-section,
  .account-actions,.auth-links,footer,.legal-footer) {
  border-top-color:transparent;
  background-image:var(--site-divider);
  background-position:center top;
  background-size:100% 1px;
  background-repeat:no-repeat;
}
:is(.landing-page,.account-page) :is(.account-card,.store-card,.plan-card,
  .store-product,.bundle-store-card,.bundle-individual-card,.recent-work,
  .account-popover,.feature-panel,.site-legal-menu > nav,dialog,
  .bundle-cart,.bundle-detail,.bundle-image-detail,.customer-generation-gallery):not(#home-start-dialog):not(:where(#home-start-dialog *)) {
  border-color:transparent;
  background-image:var(--site-divider),var(--site-divider),
    var(--site-divider-vertical),var(--site-divider-vertical);
  background-position:center top,center bottom,left center,right center;
  background-size:100% 1px,100% 1px,1px 100%,1px 100%;
  background-repeat:no-repeat;
  scrollbar-color:#a0a0a0 transparent;
}

/* Layer priority matches the Editor and overrides legacy solid action fills.
   Keep the carefully tuned shared Start Editing panel exactly as it is. */
@layer website-line-controls {
  :is(.landing-page,.account-page) :is(button,.button-link,.primary-cta,
    .bundle-store-card a,.account-open-editor,.bundle-image-detail a):not(:where(#home-start-dialog,#home-start-dialog *,.bundle-thumbnail,
      .recent-work-preview,.recent-project-preview,.recent-gallery-preview,
      .generation-image-button,.artifact-select,.avatar-select,.social-google,
      .generation-feedback-button,
      .developer-preview-controls *,.developer-purchases *,[data-developer-only] *,
      :has(> img,> canvas))) {
    --premium-surface:transparent !important;
    --premium-text:#f5f5f5 !important;
    --premium-border:transparent !important;
    --premium-action-weight:500 !important;
    background:var(--site-divider) center bottom / 100% 1px no-repeat transparent !important;
    color:var(--premium-text) !important;
    border-color:transparent !important;
    box-shadow:none !important;
    font-weight:500 !important;
    & :is(span,strong,b,small) { color:inherit !important; font-weight:500 !important; }
    &:not(:where([aria-label*="Close" i],[aria-label*="Minimize" i],
      [aria-label*="Maximize" i],.bundle-close))::before {
      background:transparent !important; border-color:transparent !important; box-shadow:none !important;
    }
    &:hover:not(:disabled):not([aria-disabled="true"]) { background-color:#ffffff0d !important; }
    &:is([aria-pressed="true"],[aria-selected="true"],[aria-current="page"]) {
      background-color:#ffffff20 !important; box-shadow:inset 0 -2px #fff !important;
    }
    &:is(.danger,.danger-button,.destructive,[data-danger],[data-action="delete"],.delete-project) {
      --premium-text:#ffb6b6 !important;
    }
    &:focus-visible { outline:1px solid #fff !important; outline-offset:-2px; }
    &:disabled { opacity:.45; }
  }
  :is(.landing-page,.account-page) :is(input:not(:where([type="range"],
    [type="checkbox"],[type="radio"],[type="color"],[type="file"],[type="hidden"])),select,textarea):not(:where(#home-start-dialog *,[data-developer-only] *)) {
    border-color:transparent !important;
    border-radius:0 !important;
    background:var(--site-divider) center bottom / 100% 1px no-repeat transparent !important;
    color:#f5f5f5 !important;
    box-shadow:none !important;
    &:focus-visible { outline:1px solid #c8c8c8 !important; outline-offset:-1px; }
    &[aria-invalid="true"] { outline:1px solid #ffb6b6 !important; }
    &:autofill { -webkit-text-fill-color:#f5f5f5; box-shadow:0 0 0 1000px #080808 inset !important; }
  }
}
:is(.landing-page,.account-page) option { background:#080808; color:#f5f5f5; }
.account-page .account-card:has(#account-signed-in[hidden]) { padding:1rem; }
/* These gallery titles need no decorative underline; retain section geometry. */
.landing-page :is(#account-generations,#recent-work) > .recent-work-heading {
  background-image:none;
  border-bottom:0;
}
@media (forced-colors:active) {
  :is(.landing-page,.account-page) :is(dialog,.account-card,.store-card,.bundle-store-card) {
    border-color:CanvasText;
  }
}
