/* Product excerpts: the app's review rows, category plan and Calendar hierarchy,
   typeset at web size. Mocha category colors and original app category SVGs.
   Glass is presentation chrome; these are illustrative data, not native widgets. */
.hg-glass { border-radius:24px; border:1px solid rgba(255,255,255,.87); background:linear-gradient(135deg,rgba(255,255,255,.82),rgba(250,249,245,.67)); -webkit-backdrop-filter:blur(28px) saturate(1.25); backdrop-filter:blur(28px) saturate(1.25); box-shadow:0 14px 40px rgba(25,22,16,.17),inset 0 1px 0 #fff,inset 0 -1px 0 rgba(255,255,255,.4); }
.hg-input { padding:19px 22px 20px; margin:0 0 13px; }
.hg-mode { display:flex; align-items:center; gap:8px; font-size:11px; font-weight:550; color:#65615b; }
.hg-mode-alternative { margin-left:auto; color:#4a453e; }
.hg-input p { margin:13px 0 0; font-size:22px; font-weight:500; line-height:1.4; letter-spacing:-.045em; }
.hg-wave { display:flex; height:16px; align-items:center; gap:2px; color:#73614d; }
.hg-wave i { width:2px; border-radius:2px; background:currentColor; height:6px; }
.hg-wave i:nth-child(2),.hg-wave i:nth-child(4) { height:11px; }.hg-wave i:nth-child(3) { height:16px; }
.hg-review { padding:18px 20px 0; }
.hg-card-label { display:flex; justify-content:space-between; gap:12px; font-size:12px; font-weight:600; letter-spacing:-.025em; align-items:center; }
.hg-card-label>span+span { font-size:10px; font-weight:400; color:#696660; }
.hg-card-label .hg-count { padding:4px 7px; border:1px solid #8b827328; border-radius:999px; }
.hg-entry { display:flex; gap:11px; align-items:center; min-height:60px; border-bottom:1px solid #8b827323; }
.hg-entry:nth-last-child(2) { border:0; }
.hg-entry>span:nth-child(2) { flex:1; }
.hg-entry strong,.hg-entry b { display:block; font-weight:600; font-size:14px; }
.hg-entry small { display:block; color:#77716a; font-size:10px; margin-top:3px; }
.hg-icon { width:34px; height:34px; flex:none; display:flex; align-items:center; justify-content:center; background:rgba(255,255,255,.72); border:1px solid #ffffff; border-radius:10px; box-shadow:0 2px 5px #332a1910; }
.hg-icon svg { width:23px; height:23px; }
.hg-review-link { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:46px; margin:12px 0 16px; padding:10px 13px; border:1px solid #ffffff70; border-radius:12px; background:#3e2415; box-shadow:0 3px 8px #33241920,inset 0 1px 0 #ffffff18; font-size:12px; font-weight:600; color:#fffaf0; text-decoration:none; cursor:pointer; transition:background .18s ease,box-shadow .18s ease; }
.hg-review-link:hover { background:#563822; box-shadow:0 5px 12px #33241930; }
.hg-review-link:active { background:#2d190f; box-shadow:inset 0 2px 4px #0003; }
.hg-review-link>span { display:grid; place-items:center; flex:none; width:26px; height:26px; border-radius:50%; background:#ffffff18; font-size:18px; }
.hg-budget { padding:24px 26px 0; }
.hg-big-num { font-family:Fraunces,Georgia,serif; font-size:63px; letter-spacing:-.055em; line-height:1.15; font-weight:450; margin:23px 0 7px; }
.hg-big-num>span { font-size:.54em; opacity:.6; }
.hg-estimate-label { color:#43755a; font-size:12px; display:flex; align-items:center; gap:6px; }
.hg-status-dot { width:6px; height:6px; border-radius:50%; background:#638f74; }
.hg-budget-rule { margin:25px 0 21px; height:1px; background:#8b827323; }
.hg-budget-row { display:flex; align-items:center; justify-content:space-between; font-size:12px; margin:0 0 9px; }
.hg-budget-row strong { font-size:11px; font-weight:550; color:#625a50; }
.hg-track { height:7px; border-radius:99px; background:#7f715314; margin-bottom:19px; overflow:hidden; }
.hg-track i { display:block; width:var(--fill); height:100%; border-radius:inherit; background:var(--tint); transform-origin:left; }
.hg-budget .hg-review-link { margin-top:7px; }
.hg-calendar { padding:21px 23px 6px; }
.hg-cal-grid { margin-top:20px; display:grid; grid-template-columns:repeat(7,1fr); gap:5px; text-align:center; }
.hg-weekday { color:#8c8780; font-size:9px; padding-bottom:4px; }
.hg-day { height:29px; display:flex; align-items:center; justify-content:center; border-radius:8px; font-size:10px; }
.hg-spend { background:#d7898030; }.hg-payday { background:#749980; color:white; font-weight:600; }.hg-today { box-shadow:inset 0 0 0 1px #7b7368; }
.hg-calendar-legend { display:flex; justify-content:center; gap:12px; margin:13px 0 17px; font-size:8px; color:#746e65; }
.hg-calendar-legend span { display:flex; align-items:center; gap:4px; }.hg-calendar-legend i { display:block; height:5px; width:5px; background:#cc9387; border-radius:2px; }.hg-calendar-legend span+span i { background:#749980; }
.hg-agenda { display:flex; align-items:center; gap:12px; border-top:1px solid #8b827323; padding:13px 0; font-size:12px; }
.hg-agenda>span:nth-child(2) { flex:1; }.hg-agenda small { display:block; font-size:9px; color:#807a71; margin-top:4px; }.hg-agenda strong { font-weight:550; font-size:12px; }.hg-agenda:last-child strong { color:#447357; }
.hg-date { display:flex; flex-direction:column; align-items:center; color:#8c8377; font-size:8px; }.hg-date b { font-size:16px; color:#59534b; line-height:1.2; font-weight:500; }
@media (max-width:768px) {
 .hg-glass { border-radius:21px; }
 .hg-input { padding:14px 18px; margin-bottom:10px; }.hg-input p { font-size:20px; margin-top:9px; }
 .hg-review { padding:14px 16px 0; }.hg-entry { min-height:51px; }.hg-entry strong,.hg-entry b { font-size:12px; }.hg-entry small { font-size:9px; }.hg-icon { width:30px; height:30px; }.hg-icon svg { width:21px; height:21px; }.hg-card-label { font-size:11px; }.hg-card-label>span+span { font-size:9px; }.hg-review-link { font-size:11px; }
 .hg-budget { padding:20px 22px 0; }.hg-big-num { font-size:54px; margin-top:17px; }.hg-estimate-label { font-size:11px; }.hg-budget-rule { margin:20px 0 17px; }.hg-track { margin-bottom:16px; }
 .hg-calendar { padding:18px 20px 3px; }.hg-cal-grid { margin-top:15px; gap:3px; }.hg-day { height:24px; font-size:9px; }.hg-calendar-legend { margin:10px 0 12px; }.hg-agenda { padding:11px 0; font-size:11px; }.hg-agenda strong { font-size:11px; }
}

.hero-showcase .num { font-family:inherit; font-variant-numeric:tabular-nums lining-nums; }

.hero-showcase .hg-big-num { font-family:Fraunces,Georgia,serif; }
