/* Shared classic-blue theme tokens: the single source of truth for the homeowner seller
   experience (the full homeowner portal + the mini "Cash Value Report"). Values are the
   design guide's exact tokens. If a live page ever disagrees with a value here, the live
   page wins, fix this file. Load this before each page's own styles. */
:root{
  /* brand blues */
  --c1:#1D4FD7; --c1d:#1640A8; --acc:#3BA4F4; --navy:#0E1B33; --navy-dd:#0A1426;
  --tint:#E7EEFC; --tintink:#1D4FD7;
  /* action orange: THE primary action, one per view */
  --cta:#FF6B4A; --cta-d:#F0572F;
  /* neutrals + feedback */
  --ink:#14233D; --muted:#5C6B82; --line:#E4EAF3; --line-2:#DBE3F0;
  --soft:#F4F8FD; --bg:#F4F8FD; --surface:#FFFFFF; --err:#D8442B; --notice-bg:#FFF4F0;
  /* shape, depth, type */
  --radius:18px; --radius-sm:12px;
  --shadow:0 14px 34px -22px rgba(14,27,51,.18);
  --shadow-card:0 14px 34px -22px rgba(14,27,51,.18);
  --sans:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
  --serif:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
}

/* "Access anytime" report banner (design guide notice: #FFF4F0 fill, 2px --cta border, coin
   badge icon, dismissible x). Shared by the full homeowner portal (Overview top tile) and the
   mini Cash Value Report. */
.notice{position:relative;display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:var(--notice-bg);border:2px solid var(--cta);border-radius:14px;padding:13px 44px 13px 16px;font-size:14px;line-height:1.45;color:var(--ink);box-shadow:0 8px 22px -12px rgba(240,87,47,.45);}
.notice[hidden]{display:none;}
.notice .nico{flex:none;width:30px;height:30px;border-radius:50%;background:var(--cta);color:#fff;display:flex;align-items:center;justify-content:center;}
.notice .ntext{flex:1 1 0;min-width:0;}
.notice b{font-weight:800;}
.notice .nphone{font-weight:800;color:var(--ink);}
.notice .nupd-group{flex:0 0 auto;margin-left:auto;display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;}
.notice .nupd{border:none;background:none;font-family:inherit;font-size:13.5px;font-weight:700;color:var(--c1);text-decoration:underline;cursor:pointer;padding:0;text-align:left;white-space:nowrap;}
.notice .nupd:hover{color:var(--c1d);}
.notice .nclose{position:absolute;top:4px;right:8px;border:none;background:none;font-size:22px;line-height:1;color:#c9856d;cursor:pointer;padding:4px;}
.notice .nclose:hover{color:var(--cta-d);}
/* Narrow screens: keep the icon beside the message and drop the update links to their own line,
   aligned under the text (icon 30px + 12px gap). */
@media(max-width:560px){
  .notice .nupd-group{flex-basis:100%;margin-left:42px;}
}

/* "Update my mobile number" modal, shared by the report + full portal. Two steps in one card
   (enter number, then enter the texted code) with no size/position change between steps. */
.pmodal{position:fixed;inset:0;z-index:1100;display:flex;align-items:center;justify-content:center;padding:20px;}
.pmodal[hidden]{display:none;}
.pm-backdrop{position:fixed;inset:0;background:rgba(8,14,26,.55);backdrop-filter:blur(3px);}
.pm-card{position:relative;width:100%;max-width:360px;background:#fff;border-radius:18px;padding:24px;box-shadow:0 40px 90px -20px rgba(0,0,0,.5);}
.pm-card h3{font-size:19px;font-weight:800;letter-spacing:-.02em;color:var(--ink);}
.pm-sub{font-size:13.5px;color:var(--muted);line-height:1.45;margin-top:8px;}
.pm-sub b{color:var(--ink);font-weight:700;}
.pm-card input{width:100%;font-family:inherit;font-size:16px;color:var(--ink);padding:13px 15px;border:1.5px solid var(--line);border-radius:12px;outline:none;margin-top:14px;text-align:center;}
.pm-card input:focus{border-color:var(--c1);}
.pm-card .btn{width:100%;margin-top:12px;}
.pm-x{position:absolute;top:10px;right:14px;border:none;background:none;font-size:24px;line-height:1;color:#9aa7bd;cursor:pointer;}
.pm-err{font-size:13px;color:var(--err);margin-top:10px;}
.pm-err:empty{display:none;}
.pm-step[hidden]{display:none;}
