Range Cornice & Roofing Company, Respondent,
The holding in the court’s own words
Because we conclude that the district court did not err by declining to offset damages and by determining that respondent is entitled to relief under Minnesota Statutes section 337.10, subdivision 3, we affirm in part. But because we conclude that the district court erred by awarding duplicative damages, we reverse in part and remand for the district court to correct the judgment so that it accurately reflects the $180,235.89 in total damages that it awarded respondent. Doing so, we conclude that, while the subcontract states that material costs would be addressed by a mutual decision, if no mutual decision was reached, the subcontract would not be modified.
Quoted verbatim from the opinion — no paraphrase, nothing generated. Not yet human-reviewed. How we find the holding.
Authorities cited
Identified automatically; this list may not be exhaustive.
- 990 N.W.2d 443 not in our corpus
- In re Petition for Distribution of Attorney's Fees between Stowman Law Firm, P.A., and Lori Peterson … 870 N.W.2d 755
- 963 N.W.2d 214 not in our corpus
- 976 N.W.2d 711 not in our corpus
- Staffing Specifix, Inc. v. Tempworks Mgmt. Servs., Inc. 913 N.W.2d 687
- City of Duluth v. Fond du Lac Band of Lake Superior Chippewa 843 N.W.2d 577
- Hruska v. Chandler Associates, Inc. 372 N.W.2d 709
- Martens v. Minnesota Mining & Manufacturing Co. 616 N.W.2d 732
- Grigsby v. Grigsby 648 N.W.2d 716
- Antonson v. Ekvall 186 N.W.2d 187
- Allen v. Central Motors, Inc. 283 N.W. 490
- Thiele v. Stich 425 N.W.2d 580
- Wear v. Buffalo-Red River Watershed District 621 N.W.2d 811
- Kittler & Hedelson v. Sheehan Properties, Inc. 203 N.W.2d 835
- Mountain Peaks Financial Services, Inc. v. Roth-Steffen 778 N.W.2d 380
- Erickson v. General United Life Insurance Co. 256 N.W.2d 255
- 956 N.W.2d 238 not in our corpus
- Matter of Schmidt 443 N.W.2d 824
- 989 N.W.2d 302 not in our corpus
- Application of Minnegasco 565 N.W.2d 706
- Housing & Redevelopment Authority Ex Rel. City of Richfield v. Walser Auto Sales, Inc. 641 N.W.2d 885
- Plowman v. Copeland, Buhl & Co., Ltd. 261 N.W.2d 581
- Carlson v. Forrette 639 N.W.2d 342
- Evans v. Blesi 345 N.W.2d 775
Opinion text
This opinion is nonprecedential except as provided by
Minn. R. Civ. App. P. 136.01, subd. 1(c).
STATE OF MINNESOTA
IN COURT OF APPEALS
A25-1148
Range Cornice & Roofing Company,
Respondent,
vs.
Spectra Building Group, LLC,
Appellant.
Filed May 11, 2026
Affirmed in part, reversed in part, and remanded
Ede, Judge
St. Louis County District Court
File No. 69DU-CV-23-1564
Aaron A. Dean, Madeline E. Davis, Spencer Fane LLP, Minneapolis, Minnesota (for
respondent)
David M. Johnson, Peter J. Raukar, Trial Group North, Duluth, Minnesota (for appellant)
Considered and decided by Ede, Presiding Judge; Frisch, Chief Judge; and Bentley,
Judge.
NONPRECEDENTIAL OPINION
EDE, Judge
Following a court trial, the district court entered judgment for respondent
subcontractor and against appellant contractor on respondent’s claims of breach of
contract, account stated, and failure to render prompt payment under Minnesota Statutes
2
section 337.10, subdivision 3 (2024).1 In this appeal from that judgment, appellant asserts
that the district court erred by: (1) declining to offset damages based on materials and labor
that appellant provided; (2) applying subdivision 3 of Minnesota Statutes section 337.10 to
award respondent attorney fees and penalty interest; and (3) awarding duplicative damages.
Because we conclude that the district court did not err by declining to offset damages and
by determining that respondent is entitled to relief under Minnesota Statutes section
337.10, subdivision 3, we affirm in part. But because we conclude that the district court
erred by awarding duplicative damages, we reverse in part and remand for the district court
to correct the judgment so that it accurately reflects the $180,235.89 in total damages that
it awarded respondent.
FACTS
Respondent Range Cornice & Roofing Company sued appellant Spectra Building
Group LLC based on a dispute over payment on a subcontract between the parties. Range
Cornice’s complaint asserted the following claims: breach of contract (Count I); unjust
enrichment (Count II); account stated (Count III); promissory estoppel (Count IV); and
violation of Minnesota Statutes section 337.10, subdivision 3 (Count V). The matter
proceeded to a one-day court trial, at which four witnesses testified, including the president
and chief executive officer (CEO) of Range Cornice, as well as Spectra’s owner. The
1 Minnesota Statutes section 337.10, subdivision 3, provides that “[a] building and
construction contract shall be deemed to require the prime contractor . . . to promptly pay
any subcontractor . . . within ten days of receipt by the party responsible for payment of
payment for undisputed services provided by the party requesting payment,” which
“includ[es] [progress] payments [and retainages] under subdivision 4.”
3
district court also received 23 exhibits by stipulation of the parties. After the trial, the
district court filed findings of fact, conclusions of law, and an order for judgment in Range
Cornice’s favor, on which the court entered judgment. The following factual summary is
drawn from the record of the underlying proceedings and the district court’s findings of
fact, viewed in the light most favorable to the verdict.2
In March 2021, Spectra agreed to “self-perform” certain construction and hire
subcontractors to complete work on a building for the East Range Academy of Technology
& Science (ERATS). Throughout August and September 2021, Spectra and Range Cornice
exchanged emails and bids in discussing a potential subcontract regarding Range Cornice’s
installation of a ballast roof system as part of the ERATS project. On September 1, Range
Cornice provided Spectra with a quote of $217,757 for furnishing specified labor,
equipment, and materials. This quote contained a “Note” regarding a potential “deduct” of
$27,768 if Spectra chose to have Range Cornice use “EPS insulation” instead of “ISO
insulation,” although the quote stated that there would be a delay of “60+ days” to obtain
the EPS insulation. Without the potential deduction, the insulation amount on which Range
Cornice based its $217,757 quote was $57,676. In mid-September, Spectra told Range
Cornice that Spectra wanted to enter into a subcontract with Range Cornice but was over
budget on the ERATS project.
2 See Herlache v. Rucks, 990 N.W.2d 443, 453 (Minn. 2023) (addressing a district court’s
decision after a court trial and explaining that appellate courts “review the district court’s
factual findings for clear error” and “examine the record in the light most favorable to the
verdict to determine if [they] are left with the definite and firm conviction that a mistake
has been made” (quotation and citation omitted)).
4
On October 5, the parties met and Spectra informed Range Cornice that Spectra
would send Range Cornice a subcontract for Range Cornice’s full quote. Spectra also told
Range Cornice that the parties could later reach an agreement about materials that Spectra
had purchased and would provide for the roofing work. As of that date, Spectra had
purchased the insulation needed for Range Cornice’s work. Spectra paid $93,756.69 for
the insulation.3 On October 6, the parties entered into a subcontract in which they agreed
that Range Cornice would perform work on the project and that Spectra would pay Range
Cornice $217,757.
The subcontract states in relevant part:
TEAM RELATIONSHIP, the Contractor and the
Subcontractor agree to proceed with the Project on the basis of
trust, good faith and fair dealing and shall take all actions
reasonably necessary to perform this Agreement in an
economical and timely manner, including consideration of
design modifications and alternative materials or equipment
that will permit the Work to be constructed within the
Stipulated Sum Price and/or changes approved by Contractor
all within the date of completion.
SUBCONTRACTOR AGREES TO PROVIDE
ALL LABOR, MATERIAL AND
3 At trial, the parties disputed what they had discussed about the insulation before they
entered into the subcontract for the roofing work. On one hand, Spectra’s owner testified
that he told the president and CEO of Range Cornice that Spectra had bought the insulation
for “around $90,000” and that the president and CEO of Range Cornice “indicated . . . that
[that amount] was a little more than what [Range Cornice] had in [its quote] for the
insulation cost.” On the other hand, the president and CEO of Range Cornice testified that
he and Spectra’s owner “didn’t talk about prices at all” and that, prior to the parties’
subcontract, Spectra did not communicate to him the cost of the insulation it had purchased.
In a handwritten note about the parties’ meeting on October 5, the president and CEO of
Range Cornice wrote that Spectra’s owner “said he was sending a [sub]contract for the full
amount and [the parties] would work out an agreement later for the materials he already
bought.”
5
EQUIPMENT TO COMPLETE WORK AS
PER THE DRAWINGS AND THEIR
PROPOSAL 21-206 DATED 09/01/2021
CONTRACT AMOUNT: $217,757.00
**NOTE – CONTRACT PRICE WILL BE ADJUSTED
FOR CONTRACTOR PURCHASED MATERIALS. THE
DEDUCTION WILL BE MADE BASED ON A MUTUAL
DECISION ON THE MATERIAL COSTS.
. . . .
#3 Payment: Contractor shall pay Building Subcontractor
provided hereunder as follows:
Invoices are due by the 25 th of each month and
payments will be made on the 20 th of the following
month. Before issuances of final payment, if required by
Contractor, Subcontractor shall submit evidence of all
payroll, materials and equipment are satisfied.
#4 Entirety: This is the final and complete agreement of
the parties concerning the subject matter hereof. This
agreement may only be modified in a writing signed by both
parties hereto. No prior or contemporaneous statements or
representations shall have any force an d effect whatsoever. In
the event of any conflict between the terms and conditions of
this Agreement, the terms and conditions of this Agreement
shall take precedence. This Agreement will be interpreted and
construed under the law of the State of Minnesota.
Spectra’s owner drafted the subcontract using a form that Spectra had employed for over
20 years and did not include a deduction for the cost of the insulation it had purchased. The
subcontract was signed by Spectra’s owner and the president and CEO of Range Cornice.
In November, Range Cornice completed the subcontracted roofing work. Between
late November and early December, Range Cornice finished additional work that Spectra
had requested involving a curb. Range Cornice submitted a change order request to Spectra
6
for the curb work in the amount of $4,639. Spectra did not submit a change order deduction
to Range Cornice. And in March 2022, Range Cornice concluded work on a canopy that
Spectra had also requested in addition to the subcontracted roofing work.
On April 7, after Range Cornice had completed all the work Spectra had requested,
Range Cornice sent an invoice to Spectra for the subcontract price of $217,757. The invoice
described four items that were pending and would alter the total amount due: a “pending
labor deduct”; a “pending insulation deduct”; a “pending curb add $4,639.00”; and a
“pending canopy add.” Although ERATS paid Spectra for the roofing work on April 21,
Range Cornice did not receive any communication from Spectra in response to the April 7
invoice. Range Cornice followed up with Spectra on June 29 via email, in which Range
Cornice advised Spectra that the April 7 invoice was past due. ERATS paid Spectra its
“full contract amount” at the end of August.
Throughout November, Range Cornice continued to request payment from Spectra.
On Friday, November 18, Spectra emailed Range Cornice that it had “received 1 of the 3
checks [that Spectra was] waiting on so [Spectra would] be mailing out a check on
Monday.” During cross-examination at trial, Spectra’s owner admitted that three checks
Spectra had said it was “waiting on” were unrelated to the ERATS project and that, in
August, ERATS had paid Spectra in full. On December 5, Spectra paid Range Cornice
$50,000.
In January 2023, Range Cornice again requested payment and informed Spectra that
Range Cornice had confirmed with ERATS that Spectra had already been paid in full. On
February 2, Spectra emailed Range Cornice and suggested for the first time that the
7
subcontract price should total $124,217.80 instead of $217,757. Range Cornice tried to
settle the matter with Spectra and to secure the agreed-upon subcontract price. On February
24, Spectra sent Range Cornice a check for $74,217.80, which was the last payment Spectra
remitted to Range Cornice.
In August, Range Cornice sued Spectra and alleged the four claims referenced
above. Range Cornice sought $101,028.20 in damages, based on the following:
Range Cornice Subcontract $217,757.00
December 5, 2022 Payment ($50,000.00)
February 24, 2023 Payment ($74,217.80)
Additional Work for Curbs $4,639.00
Additional Work for Canopy $2,850.00
TOTAL DUE $101,028.20
Range Cornice also sought $39,207.69 in interest and $40,000 in attorney fees.
After completing the one-day court trial in February 2025, the district court filed its
order on May 24. In its May 24 order, the district court determined: that Spectra and Range
Cornice “have an account stated in the unpaid amount of [$]93,539.20”; that Spectra
“breached its subcontract with Range Cornice,” causing Range Cornice to be “damaged in
the principal amount of $93,539.20”; that Spectra “violated Minn. Stat. § 337.10, subd. 3,
by failing to pay . . . Range Cornice . . . within ten days of receiving payment from
[ERATS],” causing Range Cornice to be “damaged in the principal amount of
$101,028.20”; and that, “[d]ue to Spectra’s statutory violation of Minn. Stat. § 337.10,
subd. 3, . . . Spectra is liable to Range Cornice for its attorney[] fees[,]” the amount of
which the court “found . . . reasonable.” The district court ordered Spectra to pay Range
Cornice $93,539.20 relating to Range Cornice’s breach-of-contract claim (Count I),
8
$101,028.20 relating to Range Cornice’s claim under Minnesota Statutes section 337.10,
subdivision 3 (Count V), and “$79,207.69 in interest and attorney fees.”4 The May 24 order
did not, however, set forth a total of the district court’s damages award. On June 24, the
district court entered judgment on the May 24 order.5
This appeal follows.
DECISION
Spectra contends that the district court erred by: (1) declining to offset damages
based on insulation and labor that Spectra provided; (2) applying Minnesota Statutes
section 337.10, subdivision 3, to award Range Cornice attorney fees and penalty interest;
and (3) awarding duplicative damages. For the reasons expressed below, we affirm in part,
reverse in part, and remand.
On appeal from a judgment following a court trial, appellate courts “review
questions of law de novo and questions of fact under the clearly erroneous standard.” In re
Distrib. of Att’y’s Fees Between Stowman L. Firm, P.A. & Lori Peterson L. Firm , 870
N.W.2d 755, 759 (Minn. 2015). “A finding of fact is clearly erroneous if [an appellate court
4 The district court dismissed Range Cornice’s claims of unjust enrichment (Count II) and
promissory estoppel (Count IV) without prejudice.
5 That same day, the district court filed a “Notice of Entry of Judgment” that described the
total “Monetary Award” as “$273,775.09.” In response, Range Cornice filed
correspondence on July 9 stating that the $273,775.09 amount set forth in the June 24 notice
“is incorrect as . . . [it] doubles Range Cornice’s recovery” and that “[t]he correct amount
of the monetary award owed to Range Cornice is and should be noticed to be $180,235.89.”
Range Cornice therefore requested that the district court amend the June 24 notice “to
reflect the monetary award of $180,235.89, instead of $273,775.09.” On July 16, before
the district ruled on Range Cornice’s letter request, Spectra filed a notice of appeal.
9
is] left with the definite and firm conviction that a mistake has been made.” Id. (quotation
omitted); see also Herlache, 990 N.W.2d at 453 (explaining that appellate courts “examine
the record in the light most favorable to the verdict to determine if [they] are left with the
definite and firm conviction that a mistake has been made” (quotation omitted)). “Findings
of fact, whether based on oral or documentary evidence, shall not be set aside unless clearly
erroneous, and due regard shall be given to the opportunity of the [district] court to judge
the credibility of the witnesses.” Minn. R. Civ. P. 52.01. A district court’s “findings are
clearly erroneous when they are manifestly contrary to the weight of the evidence or not
reasonably supported by the evidence as a whole.” In re Civ. Commitment of Kenney, 963
N.W.2d 214, 221 (Minn. 2021) (quotation omitted). Appellate courts do not “reconcile
conflicting evidence” or “reweigh the evidence as if trying the matter de novo.” Id. at 222,
223 n.4 (quotation omitted). “When the record reasonably supports the findings at issue on
appeal, it is immaterial that the record might also provide a reasonable basis for inferences
and findings to the contrary.” Id. at 223 (quotation omitted).
With these principles in mind, we address the parties’ arguments in turn.
I. The district court did not err by declining to offset damages based on insulation
and labor that Spectra provided.
In maintaining that the district court erred by declining to offset damages based on
insulation and labor that Spectra provided, Spectra contends: (A) that the district court’s
decision was based on a clearly erroneous finding of fact and an erroneous conclusion of
law; (B) that the district court did not address equitable principles, promissory estoppel,
and the breach of the duty of good faith and fair dealing; (C) that Range Cornice’s account-
10
stated claim fails because there was no acknowledgment or acquiescence of liability; and
(D) that the purported offset amounts exceed the value of Range Cornice’s claims. These
contentions are unavailing.
A. The district court’s decision was not based on a clearly erroneous finding
of fact or an erroneous conclusion of law.
Spectra argues that the district court clearly erred in finding that, “[a]s of October
5, 2021, Spectra had already purchased the insulation for Range Cornice’s
work. . . . Spectra could not explain why it did not deduct the cost of insulation from Range
Cornice’s subcontract.” According to Spectra, it “provided the explanation: it was not
known how much of the insultation Range Cornice would use, and the parties had not yet
agreed to the cost of the insulation. Thus, the parties agreed to later offset the ‘cost’ of the
insulation actually used.” Range Cornice responds that “Spectra’s argument that the
[district] court [clearly] erred by stating that Spectra could not explain why it did not deduct
the insulation from the Subcontract is simply incorrect.”
At trial, Range Cornice’s counsel cross-examined Spectra’s owner as follows:
Q: When we look at the [sub]contract, the first page shows that
this was dated October 6th, 2021. At this point you had already
ordered the insulation. Correct?
A: Correct.
Q: But the contract amount still reflects the entire amount of
Range Cornice’s proposal?
A: Correct, with a note below it. Correct.
Q: And you’re not sure why you didn’t include the deduct or
change the price of the contract. Right?
A: I don’t know why we did not do that, but it was -- again, the
price was never discussed between me and [the president and
CEO of Range Cornice].
11
Examining this record in the light most favorable to the district court’s order and
giving due regard to the court’s opportunity to judge the credibility of Spectra’s owner, we
are not left with the definite and firm conviction that the court made a mistake in the
challenged finding of fact. See Minn. R. Civ. P. 52.01; see also Herlache, 990 N.W.2d at
453. The district court’s finding is neither manifestly contrary to the weight of the evidence
nor unsupported by the record as a whole. See Kenney, 963 N.W.2d at 221. To the extent
that Spectra asks that we reconcile or reweigh any conflicting evidence in the record, we
cannot do so. See id. at 222, 223 n.4. And because “the record reasonably supports the
finding[] at issue on appeal, it is immaterial that the record might also provide a reasonable
basis for inferences and findings to the contrary.” Id. at 223 (quotation omitted). Thus, the
district court’s finding of fact is not clearly erroneous.
Spectra also challenges as erroneous the district court’s determination that “[t]he
[sub]contract price was never amended to be anything less than $217,757.00, because the
parties did not agree in writing to make any such changes.” In Spectra’s view, this
“conclusion of law embodies the crux of the [district] court’s errors” because “[t]he parties
agreed to offset the cost of the insulation in writing in the subcontract itself” and “[t]he
parties’ later failure to agree doesn’t result in Spectra forfeiting the right to any offset
whatsoever.” Range Cornice counters that Spectra’s argument is “contrary to the language
of the subcontract.”
The subcontract provides in relevant part:
**NOTE – CONTRACT PRICE WILL BE ADJUSTED
FOR CONTRACTOR PURCHASED MATERIALS. THE
12
DEDUCTION WILL BE BASED ON A MUTUAL
DECISION ON THE MATERIAL COSTS.
. . . .
#4 Entirety: This is the final and complete agreement of
the parties concerning the subject matter hereof. This
agreement may only be modified in a writing signed by both
parties hereto. No prior or contemporaneous statements or
representations shall have any force and effect whatsoever. In
the event of any conflict between the terms and conditions of
this Agreement, the terms and conditions of this Agreement
shall take precedence. This Agreement will be interpreted and
construed under the law of the State of Minnesota.
No evidence in the record shows that the parties modified the subcontract in a writing that
they both signed. Indeed, Spectra’s owner admitted on cross-examination by Range
Cornice’s counsel that “[t]he contract was not revised or negotiated.”
Appellate courts review issues of contract interpretation de novo. Minnesota Dep’t
of Corr. v. Knutson, 976 N.W.2d 711, 715 (Minn. 2022). “The primary goal of contract
interpretation is to determine and enforce the intent of the parties.” Staffing Specifix, Inc.
v. TempWorks Mgmt. Servs. Inc., 913 N.W.2d 687, 692 (Minn. 2018) (quotation omitted).
Appellate courts “look to the contract language to discern the parties’ intent.” Kuhn v.
Dunn, 8 N.W.3d 633, 637 (Minn. 2024). Moreover, appellate courts “construe a contract
as a whole and attempt to harmonize all of its clauses.” Id. (quotation omitted). “When the
contract language is unambiguous, [appellate courts] enforce the parties’ agreement as
expressed in the language of the contract, and . . . do not rewrite, modify, or limit its effect
by a strained construction.” Id. (quotation omitted); see also id. at 639 (declining “to add
words to an unambiguous contractual provision” (quotation omitted)). In other words,
13
appellate courts “assign unambiguous contract language its plain meaning.” City of Duluth
v. Fond du Lac Band of Lake Superior Chippewa, 843 N.W.2d 577, 582 (Minn. 2014) .
“The terms of a contract are ambiguous if they are susceptible to more than one reasonable
interpretation[,]” but “[a] contract’s terms are not ambiguous simply because the parties’
interpretations differ.” Staffing Specifix, Inc., 913 N.W.2d at 692.
Despite the parties’ differing interpretations of the foregoing contractual terms, the
subject provisions are unambiguous because they are not susceptible to more than one
reasonable interpretation. See id. The subcontract—which Spectra drafted on a form it had
used for over 20 years—states that a deduction for materials purchased by Spectra “will be
based on a mutual decision on the material costs.” It also provides that it is “the final and
complete agreement of the parties” and “may only be modified in a writing signed by both
parties.” And the subcontract specifies that “[n]o prior or contemporaneous statements or
representations shall have any force and effect whatsoever” and that “the terms and
conditions of [the subcontract] shall take precedence.” With the primary goal of construing
the subcontract by “determin[ing] and enforc[ing] the intent of the parties,” id ., we are
required to “look to the [sub]contract[’s] language to discern . . . [that] intent” and to
“construe [the] [sub]contract as a whole and attempt to harmonize all of its clauses,” Kuhn,
8 N.W.3d at 637 (quotation omitted). Doing so, we conclude that, while the subcontract
states that material costs would be addressed by a mutual decision, if no mutual decision
was reached, the subcontract would not be modified.
Because the subcontract is unambiguous, we must “enforce the parties’ agreement
as expressed in [its] language” and cannot “rewrite, modify, or limit its effect by [the]
14
strained construction” that Spectra urges us to adopt. Kuhn, 8 N.W.3d at 637 (quotation
omitted). Moreover, we “decline to add words to [the] unambiguous contractual
provision[s]” at issue, which Spectra’s argument would have us do. Id. at 639 (quotation
omitted). On this record and “assign[ing] [the] unambiguous [sub]contract language its
plain meaning,” we conclude that, because no mutual decision was reached, the district
court did not err in determining that the parties did not modify the subcontract price to an
amount less than $217,757. City of Duluth, 843 N.W.2d at 582.
B. The district court did not err by declining to address equitable
principles, promissory estoppel, or the duty of good faith and fair
dealing.
Spectra supports its equitable-principles contention by citing Hruska v. Chandler
Assocs., Inc., 372 N.W.2d 709, 715 (Minn. 1985). In particular, Spectra maintains that
“Range Cornice’s argument that there is no offset because no agreement was reached by
the parties is . . . unconscionable with respect to both the benefit to Range Cornice and the
injury to Spectra.” And Spectra asserts that “Range Cornice consistently and unreasonably
insisted on no offset for the labor and materials provided by Spectra —an unconscionable
result.” As Range Cornice points out, however, Hruska did not hold that equitable
principles rendered unenforceable the contract at issue—a covenant not to compete—
because the Minnesota Supreme Court concluded that the employers’ conduct did not
constitute “unclean hands.” 372 N.W.2d at 715. Under the specific facts of this case, we
cannot say that the district court’s decision to enforce the plain meaning of the
unambiguous subcontract has produced an unconscionable result.
15
Moreover, Spectra maintains that “[a]pplication of the legal principle of promissory
estoppel defeats [Range Cornice’s] liability theory.” “Promissory estoppel is an equitable
doctrine that implies a contract in law where none exists in fact.” Martens v. Minn. Mining
& Mfg. Co., 616 N.W.2d 732, 746 (Minn. 2000) (quotation omitted). Even setting aside
the fact that, here, a contract in law does exist in fact—the subcontract—we are not
otherwise convinced by Spectra’s promissory-estoppel argument. Promissory estoppel
“requires proof that 1) a clear and definite promise was made, 2) the promisor intended to
induce reliance and the promisee in fact relied to [their] detriment, and 3) the promise must
be enforced to prevent injustice.” Id. Given the plain meaning of the unambiguous language
of the subcontract —which provides that any deduction would be based on “a mutual
decision on the material costs”— we agree with Range Cornice that it “never made any
‘clear and definite promise’ to offset ‘the cost of the insulation and labor provided’”
because it is undisputed that no mutual decision was ever reached.
Spectra also argues that “Range Cornice’s assertion that it can eliminate any
obligation to offset the labor and materials provided by Spectra violates” the duty of good
faith and fair dealing , which Spectra claims is both expressed and implied in the
subcontract. But Range Cornice convincingly responds that Spectra neither asserted an
affirmative defense based on such a duty in its answer nor asserted this argument in the
district court until it mentioned the issue in its posttrial proposed findings of fact and
16
conclusions of law.6 “[A]n issue first raised in a post-trial motion is not raised in a timely
fashion.” Grigsby v. Grigsby, 648 N.W.2d 716, 726 (Minn. App. 2002) (citing Antonson v.
Ekvall, 186 N.W.2d 187, 189 (Minn. 1971) (explaining that a claim was made “too late”
when it was first made in a motion for a new trial); Allen v. Cent. Motors, 283 N.W. 490,
492 (Minn. 1939) (stating that an issue was raised “too late” when it was first raised in a
motion for amended findings)), rev. denied (Minn. Oct. 15, 2002); see also Thiele v. Stich,
425 N.W.2d 580, 582 (Minn. 1988) (“A reviewing court must generally consider only those
issues that the record shows were presented and considered by the [district] court in
deciding the matter before it.” (quotation omitted)); Wear v. Buffalo-Red River Watershed
Dist., 621 N.W.2d 811, 816 (Minn. App. 2001) (“Because the district court was faced with
the arguments for the first time in a post-trial brief, we conclude they were not adequately
raised in the district court and are not properly before us.”), rev. denied (Minn. May 15,
2001).
Thus, the district court did not err by declining to address equitable principles,
promissory estoppel, or the duty of good faith and fair dealing.
C. The district court correctly determined that Range Cornice’s account-
stated claim did not fail based on a lack of acknowledgment or
acquiescence of liability by Spectra.
Spectra asserts that the district court’s “application of the [account-stated] doctrine
was error because it ignored the underlying circumstances,” i.e., that “Range Cornice
6 Although it asserted the affirmative defense of estoppel, Spectra did not allege as an
affirmative defense that Range Cornice breached the duty of good faith and fair dealing.
Nor did Spectra maintain any counterclaims against Range Cornice.
17
submitted an invoice that didn’t include any offset whatsoever[,]” despite its “bid amount
[that] included $57,676.00 worth of insulation (more than 25 percent of the total contract
amount and more than 60 percent of its claimed damages) that Spectra supplied to it.” And
Spectra stresses that “the [sub]contract expressly provided that the parties would mutually
agree to an offset of the cost [of] the insulation, in all caps and bold lettering nonetheless.”
According to Spectra, these circumstances “cannot support a conclusion that a party must
object to the amount of the invoice or risk having the passage of time constitute ‘an
acknowledgement or acquiescence of a liability.’” Range Cornice counters that “[t]he
‘underlying circumstances’ make clear, as the district court determined, that an account
was stated: Range Cornice contacted Spectra via telephone and e-mail countless times to
obtain payment but Spectra did not respond for over eight months . . . after Range Cornice
sent Spectra an invoice,” which “are the exact types of facts where an account stated is
appropriate.” We agree with Range Cornice.
The Minnesota Supreme Court has described the account-stated doctrine as follows:
An account stated comes into being through an
acknowledgment or an acquiescence in the existing condition
of liability between the parties. If an account rendered is
acquiesced in by the parties and the correctness of the
statement is admitted, then the law will imply a promise to pay
whatever balance is thus acknowledged to be owing and due,
without further proof; likewise, proof of the retention of a
statement of account without objection for more than a
reasonable length of time may under certain circumstances
operate as proof of an acquiescence in or an admission of the
correctness of the statement of account and permit the legal
inference that an account stated has been established. The
balance must be struck under such circumstances as to import
a promise of payment on the one side and acceptance on the
18
other. The balance must be arrived at as the express or implied
result of computation and agreement.
Kittler & Hedelson v. Sheehan Props., Inc. , 203 N.W.2d 835, 839–40 ( Minn. 1973)
(quotation omitted). “To establish and recover on an account stated, the claimant must
show (1) a prior relationship as debtor and creditor, (2) a showing of mutual assent between
the parties as to the correct balance of the account, and (3) a promise by the debtor to pay
the balance of the account.” Mountain Peaks Fin. Servs., Inc. v. Roth-Steffen, 778 N.W.2d
380, 387 (Minn. App. 2010), rev. denied (Minn. Apr. 28, 2010). “It is the general rule that
an account stated is prima facie evidence of the accuracy and correctness of the items noted
thereon and of the liability of the party against whom the balance refers.” Erickson v. Gen.
United Life Ins. Co., 256 N.W.2d 255, 259 (Minn. 1977). “In order to successfully
challenge an account stated, one must be able to affirmatively demonstrate either fraud or
mistake by clear and convincing evidence.” Id.
The district court determined that “Range Cornice submitted its invoice to Spectra
on April 7, 2022,” that “Spectra did not object or dispute Range Cornice’s invoice for ten
months,” that “[t]en months is an unreasonably long amount of time to retain an invoice
without disputing it,” that “Spectra acquiesced to the accuracy and correctness of the April
7, 2022[] invoice,” and that “Range Cornice proved by a preponderance of the evidence
that it had an account stated with Spectra in the amount of $217,757.00.”
The record reflects in relevant part as follows. On April 7, 2022, after Range Cornice
had completed all the work that Spectra had requested, Range Cornice sent an invoice to
Spectra for the subcontract price of $217,757. Range Cornice did not receive any
19
communication from Spectra in response to the April 7 invoice. Range Cornice followed
up with Spectra on June 29 via email, in which Range Cornice advised Spectra that the
April 7 invoice was past due. Throughout November, Range Cornice continued to request
payment from Spectra. On Friday, November 18, Spectra emailed Range Cornice that it
had “received 1 of the 3 checks [that Spectra was] waiting on so [Spectra would] be mailing
out a check on Monday.” On December 5, Spectra paid Range Cornice $50,000. In January
2023, Range Cornice again requested full payment. It was not until February 2, 2023, that
Spectra emailed Range Cornice and suggested for the first time that the subcontract price
should total $124,217.80 instead of $217,757.
We conclude that the district court did not err in determining that Range Cornice
proved by a preponderance of the evidence that it had an account stated with Spectra in the
amount of $217,757. This is because the facts above establish (1) that Spectra had a prior
relationship with Range Cornice as debtor and creditor, (2) that there was a showing of
mutual assent between the parties as to the correct balance of the account, and (3) that there
was a promise by Spectra to pay the balance of the account. See Mountain Peaks Fin.
Servs., Inc., 778 N.W.2d at 387. The district court’s findings in support of its determination
are not clearly erroneous because they are not manifestly contrary to the weight of the
evidence and are reasonably supported by the record as a whole. See Kenney, 963 N.W.2d
at 221. Spectra commenced payment to Range Cornice by remitting $50,000 on December
5, 2022, without objection to the April 7 invoice. And Spectra waited ten months after the
April 7 invoice before raising its first objection thereto on February 2, 2023. We therefore
discern no error in the district court’s rulings that “Spectra acquiesced to the accuracy and
20
correctness of the April 7, 2022[] invoice” and that “[t]en months is an unreasonably long
amount of time to retain an invoice without disputing it.” See Kittler & Hedelson, 203
N.W.2d at 839–40. In proving its account-stated claim, Range Cornice established prima
facie evidence of the accuracy and correctness of the items in the April 7 invoice and
Spectra’s liability therefor, and Spectra did not successfully challenge the account stated
by affirmatively demonstrating either fraud or mistake by clear and convincing evidence.
Erickson, 256 N.W.2d at 259.
Consequently, the district court correctly determined that Range Cornice’s account-
stated claim did not fail based on a lack of acknowledgment or acquiescence of liability by
Spectra.
D. The district court correctly determined that the purported offset
amounts do not exceed the value of Range Cornice’s claims.
Spectra argues that “the [sub]contract language is clear and the amounts of the
proper offsets exceed Range Cornice’s damages claims, making it appropriate for this court
to reverse and remand for dismissal of the claims and the entry of judgment in favor of
Spectra.” As discussed earlier, we reject Spectra’s reading of the unambiguous subcontract
as contrary to its plain meaning. See Kuhn, 8 N.W.3d at 637; see also City of Duluth, 843
N.W.2d at 582. Because the parties did not modify the subcontract price to an amount less
than $217,757, the district court correctly determined that the purported offset amounts —
which the court properly declined to credit in enforcing the plain meaning of the
unambiguous subcontract—did not exceed the value of Range Cornice’s claims.
21
II. The district court did not err in applying Minnesota Statutes section 337.10,
subdivision 3, to award Range Cornice attorney fees and penalty interest.
Spectra contends that, because “[t]he parties disputed the value of the labor and
materials provided by Spectra throughout the project and this litigation,” the district court
erred in awarding Range Cornice relief under Minnesota Statutes section 337.10,
subdivision 3. In response, Range Cornice maintains that “the [district] court correctly
found that Spectra was . . . paid in full by . . . [ERATS] (a fact that Spectra has never
disputed) and that Spectra did not pay Range Cornice within 10 days of receiving such
payment (a fact that Spectra has never disputed),” such that subdivision 3 of Minnesota
Statutes section 337.10 “applies to these facts.” Range Cornice’s argument is persuasive.
Spectra’s contention presents an issue of statutory interpretation. Appellate courts
“review statutory interpretation de novo.” Reetz v. City of Saint Paul, 956 N.W.2d 238, 245
(Minn. 2021). “The goal of statutory interpretation is to ascertain and effectuate the intent
of the Legislature.” Id. (citing Minn. Stat. § 645.16 (2020)). To do so, appellate courts first
“determine whether the statute’s language, on its face, is unambiguous.” Id. “When the
language of a statute is susceptible to only one reasonable interpretation, it is unambiguous
and [appellate courts] must apply its plain meaning.” Id. (quotation omitted). “If a statute
does not define a word or phrase, [appellate courts] construe words or phrases according
to their plain and ordinary meaning. In determining the plain and ordinary meaning of a
word or phrase, [appellate courts] may consider dictionary definitions.” Id. (citations
omitted).
Minnesota Statutes section 337.10, subdivision 3, requires a general contractor to
22
promptly pay any subcontractor . . . within ten days of receipt
by the party responsible for payment of payment for
undisputed services provided by the party requesting
payment . . . . The contract shall be deemed to require the party
responsible for payment to pay interest of 1 -1/2 percent per
month to the party requesting payment on any undisputed
amount not paid on time . . . . A party requesting payment who
prevails in a civil action to collect interest penalties . . . must
be awarded its costs and disbursements, including attorney
fees . . . .
While undefined by the statute, the Black’s Law Dictionary definition of “undisputed” is
“[n]ot questioned or challenged; uncontested.” Black’s Law Dictionary 1844 (12th ed.
2024); see also Reetz, 956 N.W.2d at 245.
The district court determined that “Range Cornice submitted its invoice to Spectra
on April 7, 2022,” that “Spectra was paid by . . . [ERATS] for roofing work on April 21,
2022,” that “Spectra was paid in full by . . . [ERATS] on August 18, 2022,” and that
“Spectra did not pay Range Cornice within ten days per Minn. Stat. § 337.10.”
We are not convinced that the district court’s decision is based on any clearly
erroneous findings of fact or error of law. The district court’s findings are neither
manifestly contrary to the weight of the evidence nor unsupported by the record as a whole.
See Kenney, 963 N.W.2d at 221. It is undisputed that Spectra did not pay Range Cornice
within ten days of receiving full payment from ERATS. And we have concluded above
that the district court did not err in determining that “Range Cornice proved by a
preponderance of the evidence that it had an account stated with Spectra in the amount of
$217,757.00” because “Spectra did not object or dispute Range Cornice’s invoice for ten
months,” “[t]en months is an unreasonably long amount of time to retain an invoice without
23
disputing it,” and “Spectra acquiesced to the accuracy and correctness of the April 7, 2022[]
invoice.” Consistent with that conclusion, we discern no factual or legal error in the district
court’s determination that Range Cornice’s services were “undisput ed” for purposes of
Minnesota Statutes section 337.10, subdivision 3—at the very least by the time Range
Cornice’s account-stated claim accrued — because Spectra neither questioned nor
challenged those services.
Accordingly, we conclude that the district court did not err in applying Minnesota
Statutes section 337.10, subdivision 3, to award Range Cornice attorney fees and penalty
interest.
III. The district court erred by awarding duplicative damages.
Spectra avers that reversal is warranted because the district court improperly
awarded duplicative damages to Range Cornice. Although it does not dispute that the
damages award was duplicative, Range Cornice argues that this issue is moot. In particular,
Range Cornice claims that, after Spectra filed this appeal, the district court corrected the
damages award under Minnesota Rule of Civil Procedure 60.01. We agree with Spectra.
Appellate courts “decide only actual controversies,” and, “[i]f the court is unable to
grant effectual relief, the issue raised is deemed to be moot resulting in dismissal of the
appeal.” In re Schmidt, 443 N.W.2d 824, 826 (Minn. 1989); see also Winkowski v.
Winkowski, 989 N.W.2d 302, 308 (Minn. 2023) (explaining that appellate courts “will
dismiss an appeal as moot when a decision on the merits is no longer necessary or an award
of effective relief is no longer possible” (quotation omitted)). “Moreover, [appellate courts]
do[] not issue advisory opinions, nor decide cases merely to establish precedent.” Schmidt,
24
443 N.W.2d at 826. In other words, “[a] moot case is nonjusticiable.” Winkowski, 989
N.W.2d at 307–08 . “Justiciability is an issue of law, which [appellate courts] review de
novo.” Id. at 307 (quotation omitted).
In support of its mootness argument, Range Cornice has included in its appellate
addendum an October 10, 2025 “Amended Order” by the district court, upon which the
court entered judgment on October 15. But that document is not included in the record on
appeal,
7 and “[a]n appellate court is generally limited to the record that was before the
district court when it made the decision being appealed.” In re Welfare of Child of K. O.,
4 N.W.3d 359, 364 n.1 (Minn. App. 2024) (citing Minn. R. Civ. App. P. 110.01 (defining
the record on appeal); Stich, 425 N.W.2d at 582); see also Vasko v. County of McLeod,
10 N.W.3d 482, 490 n.12 (Minn. 2024) (explaining that “[a]n appellate court may not base
its decision on matters outside the record on appeal” (quotation omitted)). “If, however, an
event occurs while an appeal is pending that (allegedly) renders a decision on the merits
by this court unnecessary or effective relief impossible, that event is—by definition —
outside the record on appeal as defined by rule 110.01.” K. O., 4 N.W.3d at 364 n.1 (citing
In re Application of Minnegasco, 565 N.W.2d 706, 710 (Minn. 1997) (noting “the general
rule is that when, pending appeal, an event occurs that makes a decision on the merits
unnecessary or an award of effective relief impossible, the appeal should be dismissed as
moot”)).
7 Range Cornice has not requested that we take judicial notice of the document under
Minnesota Rule of Evidence 201(d).
25
“Appellate courts have considered supplemental materials . . . when events have
occurred between the district court’s order and the appeal that raise issues relating to
mootness.” Wilmington Tr., Nat’l Ass’n v. 700 Hennepin Holdings, LLC, ___ N.W.3d ___,
___, 2026 WL 647917, at *4 (Minn. App. Mar. 9, 2026) (citing Hous. & Redev. Auth. v.
Walser Auto Sales, Inc., 641 N.W.2d 885, 888 (Minn. 2002); Plowman v. Copeland, Buhl
& Co., 261 N.W.2d 581, 584 n.3 (Minn. 1977) (recognizing that “[s]ome courts have used
the power to look beyond the record for the purposes of determining mootness or other
post-trial procedural matters”) (other citations omitted)), petition for rev. filed (Minn. Apr.
8, 2026). Because “limiting our review to the record before the district court would
preclude us from considering the event prompting the assertion of mootness” in this case,
“we must look beyond the record presented to the district court” to the October 15 judgment
that Range Cornice included in its addendum. K. O., 4 N.W.3d at 365 n.1 (citing Plowman,
261 N.W.2d at 584 n.3).
Based on our careful review of the October 15 judgment, we conclude that the issue
of duplicative damages is not moot because a decision on the merits remains necessary and
an award of effective relief is still possible. See Winkowski, 989 N.W.2d at 308. This is
because the express terms of the October 15 judgment relate only to the June 24, 2025
“Notice of Entry of Judgment,” not the June 24 judgment itself, which underlies this
appeal:
On June 24, 2025, a Notice of Entry of Judgment was
filed. (Index No. 61.) This Notice states that the monetary
award owed to Range Cornice is $273,775.09. On July 9, 2025,
counsel for . . . Range Cornice . . . notified the court that the
26
correct monetary amount owed to . . . Range Cornice . . .
should be $180,235.89.
Based upon all the files, records and proceedings herein,
the court HEREBY ORDERS:
1. The Notice of Entry of Judgment is amended to
reflect a monetary award owed to . . . Range
Cornice . . . by . . . Spectra . . . in the amount of
$180,235.89.
Thus, the district court’s October 15 judgment did not correct or otherwise affect the June
24 judgment, which still orders that Spectra pay Range Cornice $93,539.20 relating to
Range Cornice’s breach-of-contract claim (Count I), $101,028.20 relating to Range
Cornice’s claim under Minnesota Statutes section 337.10, subdivision 3 (Count V), and
$79,207.69 in interest and attorney fees.8 We therefore reject Range Cornice’s mootness
argument and turn to the merits of this issue.
“[A] plaintiff may not recover duplicative money damages.” Abraham v. County of
Hennepin, 639 N.W.2d 342, 347 (Minn. 2002). It is undisputed by the parties, and we
agree, that the district court erred when it ordered in the June 24 judgment that Spectra pay
8 Because no leave was sought to correct the June 24 judgment during the pendency of this
appeal, even if the October 15 judgment did purport to amend or otherwise affect the June
24 judgment, it would be null and void. See Minn. R. Civ. App. P. 108.01, subd. 2
(providing that “the filing of a timely and proper appeal suspends the [district] court’s
authority to make any order that affects the order or judgment appealed from”); Minn. R.
Civ. P. 60.01 (stating that district courts may correct clerical mistakes and errors in
judgments and orders “arising from oversight or omission . . . at any time upon its own
initiative or on the motion of any party and after such notice, if any, as the court orders[,]”
but “[d]uring the pendency of an appeal, such mistakes may be so corrected with leave of
the appellate court” (emphasis added)); see also Evans v. Blesi, 345 N.W.2d 775, 780, 781
(Minn. App. 1984) (explaining that “ an order that is . . . entered after an appeal is taken[]
is of no effect” and vacating such an order as “null and void”), rev. denied (Minn. June 12,
1984).
27
Range Cornice $93,539.20 for Count I in addition to the $101,028.20 the court ordered on
Count V, as well as $79,207.69 for interest and attorney fees. More specifically, the
$101,028.20 in damages ordered by the district court on Count V is inclusive of the same
damages that the court ordered as to Count I— “the entire outstanding subcontract balance
of $93,539.20.”9 We therefore conclude, as is uncontroverted by the parties, that the total
damages award is limited to $180,235.89 (i.e., $101,028.20 for Count V, plus $79,207.69
for interest and attorney fees). Because the district court erred by awarding duplicative
damages, we reverse in part and remand for the district court to correct the June 24
judgment so that it accurately reflects a total damages award to Range Cornice of
$180,235.89.
In sum, we affirm in part because the district court did not err by declining to offset
damages and by determining that respondent is entitled to relief under Minnesota Statutes
section 337.10, subdivision 3. But because the district court erred by awarding duplicative
damages to Range Cornice, we reverse in part and remand for the court to correct the June
24 judgment so that it accurately reflects $180,235.89 in total damages.
Affirmed in part, reversed in part, and remanded
9 As explained above, the outstanding subcontract balance of $93,539.20 is the difference
between the $217,757 agreed upon by the parties in the October 6, 2021 subcontract and
the amounts Spectra paid Range Cornice on December 5, 2022 ($50,000) and February 24,
2023 ($74,217.80). And the $101,028.20 in damages ordered by the district court on Count
V is the sum of the outstanding subcontract balance of $93,539.20 and the uncontested
amounts that Spectra owed Range Cornice for the curb and canopy work ($4,639 and
$2,850, respectively).