/* The Desk home (public/shared/desk-home.js and desk-view.js): the estate banner, Your Day at a Glance (a soft grey panel
   with white cards: the stat cards, Arrivals with its timeline and list, the hourly weather), the tiles and arranging them,
   and the Systems sheet. Desk tokens only (the token block at the end of noted-team-polish.css); spacing 12 / 24 / 48.
   Everything that reads the server stays hidden until its switch is on. */
body.noted-staff.nu-home{--dh-panel:#f3f3f3;--dh-past:#ececec;--dh-rule:#e6e6e6}
body.noted-staff .nu-visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;border:0!important}

/* Page order: the banner first under the header, then the greeting, the dashboard, the tiles. The markup keeps the greeting
   first, so a screen reader starts at the page title. */
body.noted-staff.nu-home .ch-estate{order:-1}
body.noted-staff.nu-home .home-heading,body.noted-staff.nu-home .desk-partial{order:0}
body.noted-staff.nu-home .home-today{order:1}
body.noted-staff.nu-home .home-actions{order:3}
body.noted-staff.nu-home .home-visits{order:4}
body.noted-staff.nu-home .home-footer{order:6}
body.noted-staff.nu-home .home-visits[hidden],body.noted-staff.nu-home .home-today[hidden]{display:none!important}
body.noted-staff.nu-home.nu-concierge .home-heading{margin:0 0 var(--gap-section,48px)!important}

/* The estate banner: the photo framed from the config (estateImagePosition, default the bottom: the lake's edge with the
   vineyard and hillside above), the caption and the small place line on it. No box over the photo. */
body.noted-staff.nu-home.nu-concierge .ch-estate{position:relative;isolation:isolate;display:block;height:clamp(240px,30vw,400px);min-height:0!important;padding:0!important;margin:0 0 var(--gap-section,48px)!important;border-radius:24px!important;overflow:hidden;background:#d9d9d9!important}
body.noted-staff.nu-home.nu-concierge .ch-estate-image{position:absolute;inset:0;width:100%;height:100%!important;object-fit:cover;object-position:var(--estate-image-position,center bottom)!important;z-index:-3}
body.noted-staff.nu-home.nu-concierge .ch-estate-shade{position:absolute;inset:0;height:auto!important;background:linear-gradient(0deg,#00000075,#00000029 38%,#0000 64%)!important;z-index:-2}
body.noted-staff.nu-home.nu-concierge .ch-estate-caption{position:absolute;left:var(--gap-group,24px);right:var(--gap-group,24px);bottom:var(--gap-group,24px);top:auto!important;display:grid;gap:4px;max-width:none!important;margin:0;color:#fff;text-shadow:0 1px 10px #00000059}
body.noted-staff.nu-home.nu-concierge .ch-estate-caption>span{display:block;width:auto!important;height:auto!important;border:0!important;border-radius:0!important;box-shadow:none!important;min-width:0;overflow-wrap:anywhere}
body.noted-staff.nu-home.nu-concierge .ch-estate-title{font:700 26px/1.2 var(--team-font)!important;letter-spacing:-.02em;color:#fff}
body.noted-staff.nu-home.nu-concierge .ch-estate-place{font:500 13px/1.4 var(--team-font)!important;letter-spacing:.01em;color:#ffffffeb}

/* Your Day at a Glance: a soft grey panel holding white cards, 48px above the tiles. No words between them. */
body.noted-staff.nu-home .home-today{margin:0 0 var(--gap-section,48px)!important;padding:var(--gap-group,24px);border-radius:32px;background:var(--dh-panel);min-width:0}
body.noted-staff.nu-home .home-today-title{margin:0 0 var(--gap-group,24px)!important;font:700 23px/1.2 var(--team-font)!important;letter-spacing:-.02em!important;color:var(--desk-ink)!important}
body.noted-staff.nu-home .today-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,168px),1fr));gap:var(--gap-group,24px);margin:0}
body.noted-staff.nu-home .today-stats[hidden]{display:none}
body.noted-staff.nu-home.nu-concierge .today-stat{position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:var(--gap-in,12px);min-width:0;min-height:116px;height:auto;margin:0;padding:20px;border:0!important;border-radius:20px!important;background:#fff!important;box-shadow:var(--desk-card-shadow)!important;color:var(--desk-ink)!important;text-align:left;text-decoration:none!important;font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform 160ms ease,box-shadow 160ms ease}
body.noted-staff.nu-home.nu-concierge div.today-stat{cursor:default}
body.noted-staff.nu-home .today-label{display:block;margin:0;padding-right:24px;font:700 14px/1.35 var(--team-font)!important;letter-spacing:0!important;color:var(--desk-muted)!important;text-transform:none!important}
body.noted-staff.nu-home .today-value{display:grid;grid-template-areas:"number" "sub";gap:4px;margin:0;min-width:0}
body.noted-staff.nu-home .today-number{grid-area:number;font:600 30px/1.1 var(--team-font)!important;letter-spacing:-.04em;color:var(--desk-ink);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
body.noted-staff.nu-home .today-sub{grid-area:sub;font:400 13px/1.4 var(--team-font)!important;color:var(--desk-muted);overflow-wrap:anywhere}
body.noted-staff.nu-home .today-weather-now .today-value{grid-template-areas:"icon number" "sub sub";grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:10px}
body.noted-staff.nu-home .today-icon{display:block;color:var(--desk-ink);line-height:0}
body.noted-staff.nu-home .today-weather-now .today-icon{grid-area:icon}
body.noted-staff.nu-home .today-icon svg{display:block;width:24px;height:24px}
body.noted-staff.nu-home .today-go{position:absolute;top:20px;right:16px;width:18px;height:18px;fill:none;stroke:#9b9b9b;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
@media(hover:hover) and (pointer:fine){
  body.noted-staff.nu-home.nu-concierge :is(a,button).today-stat:hover{transform:translateY(-2px)!important;box-shadow:var(--desk-hover)!important}
  body.noted-staff.nu-home .arr-marker:hover .arr-dot{transform:scale(1.08)}
  body.noted-staff.nu-home .arr-row-btn:hover{background:var(--desk-well)!important}
}
body.noted-staff.nu-home.nu-concierge :is(a,button).today-stat:active{transform:translateY(1px) scale(.99)!important}
body.noted-staff.nu-home .today-card{margin:var(--gap-group,24px) 0 0;padding:var(--gap-group,24px);border-radius:24px;background:#fff;box-shadow:var(--desk-card-shadow);min-width:0}
body.noted-staff.nu-home .today-card[hidden]{display:none}
body.noted-staff.nu-home .today-card-title{margin:0 0 var(--gap-in,12px)!important;font:700 18px/1.3 var(--team-font)!important;letter-spacing:-.01em!important;color:var(--desk-ink)!important}
body.noted-staff.nu-home .today-card-title:focus{outline:none}

/* Arrivals: hours along the top, one marker per party (its party size inside; a stacked square for several parties close
   together), the Now line with the time already past shaded, and nothing written on the rail itself. A tap shows the
   party in the strip under the timeline (inside the card) and marks its row in the list. */
body.noted-staff.nu-home .arr-timeline{position:relative;margin:0;padding:0;min-width:0}
body.noted-staff.nu-home .arr-timeline[hidden],body.noted-staff.nu-home .arr-list[hidden],body.noted-staff.nu-home .arr-detail[hidden]{display:none}
body.noted-staff.nu-home .arr-hours{position:relative;height:20px;margin:0 0 8px}
body.noted-staff.nu-home .arr-hour{position:absolute;top:0;transform:translateX(-50%);font:600 12px/20px var(--team-font)!important;color:var(--desk-muted);white-space:nowrap;font-variant-numeric:tabular-nums}
body.noted-staff.nu-home .arr-track{position:relative;min-height:44px}
body.noted-staff.nu-home .arr-rule{position:absolute;top:-4px;bottom:0;width:1px;margin-left:-.5px;background:var(--dh-rule)}
body.noted-staff.nu-home .arr-past{position:absolute;left:0;top:0;bottom:0;border-radius:12px;background:#f5f5f5}
body.noted-staff.nu-home .arr-now{position:absolute;top:-8px;bottom:-4px;width:2px;margin-left:-1px;border-radius:2px;background:var(--desk-ink);z-index:1}
body.noted-staff.nu-home .arr-now::before{content:'';position:absolute;top:-3px;left:50%;width:8px;height:8px;margin-left:-4px;border-radius:50%;background:var(--desk-ink)}
body.noted-staff.nu-home .arr-nowrow{position:relative;height:22px;margin:6px 0 0}
body.noted-staff.nu-home .arr-nowrow:empty{display:none}
body.noted-staff.nu-home .arr-now-tag{position:absolute;top:0;transform:translateX(-50%);padding:3px 9px;border-radius:999px;background:var(--desk-ink);color:#fff;font:700 11px/16px var(--team-font)!important;letter-spacing:.02em;white-space:nowrap}
body.noted-staff.nu-home.nu-concierge .arr-marker{position:absolute;top:0;display:grid;place-items:center;width:44px!important;height:44px!important;min-width:0!important;min-height:0!important;margin:0;padding:0!important;border:0!important;border-radius:50%!important;background:transparent!important;box-shadow:none!important;margin-left:-22px!important;transform:none!important;cursor:pointer;z-index:2;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
/* A press shrinks the dot, never the marker: the staff-wide press rule (scale .96 on every button) would move a marker
   that is placed by position, and would shrink a whole list row. The id outranks it. */
body.noted-staff #deskArrivals :is(.arr-marker,.arr-row-btn):not(:disabled):active{transform:none!important}
body.noted-staff #deskArrivals .arr-marker:active .arr-dot{transform:scale(.92)}
body.noted-staff #deskArrivals .arr-row-btn:not(:disabled):active{background:var(--desk-well)!important}
body.noted-staff.nu-home .arr-dot{display:grid;place-items:center;box-sizing:border-box;width:32px;height:32px;border:1.5px solid var(--desk-ink);border-radius:50%;background:#fff;color:var(--desk-ink);font:600 13px/1 var(--team-font)!important;font-variant-numeric:tabular-nums;box-shadow:0 0 0 3px #fff,0 2px 4px #0000001f;transition:transform 140ms ease,box-shadow 140ms ease}
body.noted-staff.nu-home .arr-marker.is-next .arr-dot{background:var(--desk-ink);color:#fff}
body.noted-staff.nu-home .arr-marker.is-group .arr-dot{border-radius:10px;background:#efefef;box-shadow:0 0 0 3px #fff,4px 4px 0 -1px #fff,4px 4px 0 0 #bdbdbd}
body.noted-staff.nu-home .arr-marker.is-past .arr-dot{border-color:#c4c4c4;background:#fafafa;color:#767676;box-shadow:0 0 0 3px #f5f5f5}
body.noted-staff.nu-home .arr-marker.is-past.is-group .arr-dot{box-shadow:0 0 0 3px #f5f5f5,4px 4px 0 -1px #f5f5f5,4px 4px 0 0 #d4d4d4}
body.noted-staff.nu-home .arr-marker.is-picked .arr-dot{transform:scale(1.12);border-color:var(--desk-ink);box-shadow:0 0 0 3px #fff,0 0 0 5px var(--desk-ink)}
body.noted-staff.nu-home.nu-concierge .arr-marker:focus-visible{outline:none!important}
body.noted-staff.nu-home .arr-marker:focus-visible .arr-dot{box-shadow:0 0 0 3px #fff,0 0 0 6px var(--desk-ink)}
body.noted-staff.nu-home .arr-detail{position:relative;margin:var(--gap-in,12px) 0 0;padding:12px 16px;border-radius:16px;background:var(--desk-well);min-width:0}
body.noted-staff.nu-home .arr-caret{position:absolute;top:-6px;width:13px;height:13px;margin-left:-6.5px;border-radius:3px 0 0 0;background:var(--desk-well);transform:rotate(45deg)}
body.noted-staff.nu-home .arr-detail-row{position:relative;min-width:0}
body.noted-staff.nu-home .arr-detail-row+.arr-detail-row{margin-top:8px;padding-top:8px;border-top:1px solid var(--desk-line)}
body.noted-staff.nu-home .arr-detail-head{display:flex;flex-wrap:wrap;column-gap:10px;margin:0;font:700 16px/1.35 var(--team-font)!important;color:var(--desk-ink)}
body.noted-staff.nu-home .arr-detail-time{font-variant-numeric:tabular-nums;white-space:nowrap}
body.noted-staff.nu-home .arr-detail-name{min-width:0;overflow-wrap:anywhere}
body.noted-staff.nu-home :is(.arr-detail-meta,.arr-row-meta){display:block;margin:2px 0 0;font:400 14px/1.45 var(--team-font)!important;color:var(--desk-muted);overflow-wrap:break-word}
body.noted-staff.nu-home .arr-list{list-style:none;margin:var(--gap-in,12px) 0 0;padding:0;border-top:1px solid var(--desk-line)}
body.noted-staff.nu-home .arr-row{margin:0;padding:0}
body.noted-staff.nu-home .arr-row+.arr-row{border-top:1px solid var(--desk-line)}
body.noted-staff.nu-home.nu-concierge .arr-row-btn{display:grid;grid-template-columns:88px minmax(0,1fr);align-items:baseline;gap:16px;width:100%;min-height:56px!important;height:auto!important;margin:0!important;padding:12px 8px!important;border:0!important;border-radius:12px!important;background:transparent!important;box-shadow:none!important;color:var(--desk-ink)!important;text-align:left;font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}
body.noted-staff.nu-home .arr-row-time{font:600 16px/1.4 var(--team-font)!important;color:var(--desk-ink);letter-spacing:-.01em;font-variant-numeric:tabular-nums;white-space:nowrap}
body.noted-staff.nu-home .arr-row-body{display:grid;gap:2px;min-width:0}
body.noted-staff.nu-home .arr-row-name{font:600 16px/1.4 var(--team-font)!important;color:var(--desk-ink);letter-spacing:-.01em;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
body.noted-staff.nu-home .arr-row.is-past .arr-row-btn>*{opacity:.5}
body.noted-staff.nu-home.nu-concierge .arr-row.is-picked .arr-row-btn{background:var(--desk-well)!important;box-shadow:inset 3px 0 0 var(--desk-ink)!important}
body.noted-staff.nu-home .arr-row.is-picked .arr-row-btn>*{opacity:1}
body.noted-staff.nu-home .arr-empty{margin:0!important}
body.noted-staff.nu-home .arr-empty[hidden],body.noted-staff.nu-home .arr-note[hidden]{display:none!important}
body.noted-staff.nu-home .arr-note{margin:var(--gap-in,12px) 0 0;font:400 13px/1.5 var(--team-font)!important;color:var(--desk-muted)}

/* Hourly weather: Now, then the next hours, one column each; scrolls inside its card, never the page. */
body.noted-staff.nu-home .today-hours{list-style:none;margin:0;padding:0;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(52px,1fr);gap:var(--gap-in,12px);overflow-x:auto;scrollbar-width:none}
body.noted-staff.nu-home .today-hours::-webkit-scrollbar{display:none}
body.noted-staff.nu-home .today-hour{display:grid;justify-items:center;gap:8px;padding:12px 4px;border-radius:14px}
body.noted-staff.nu-home .today-hour.now{background:var(--desk-well)}
body.noted-staff.nu-home .today-hour-time{font:500 12px/1.2 var(--team-font)!important;color:var(--desk-muted);white-space:nowrap}
body.noted-staff.nu-home .today-hour-temp{font:600 15px/1.2 var(--team-font)!important;color:var(--desk-ink);font-variant-numeric:tabular-nums}
body.noted-staff.nu-home .today-hour .today-icon svg{width:22px;height:22px}

/* Part of the Desk did not load (a busy server, no connection): one plain line and Try again, never a silent gap. */
body.noted-staff.nu-home .desk-partial{display:flex;flex-wrap:wrap;align-items:center;gap:var(--gap-in,12px);margin:0 0 var(--gap-section,48px);padding:16px 20px;border:1px solid var(--desk-line);border-radius:16px;background:var(--desk-well)}
body.noted-staff.nu-home .desk-partial[hidden]{display:none}
body.noted-staff.nu-home .desk-partial p{flex:1 1 260px;margin:0;font:400 14px/1.5 var(--team-font)!important;color:var(--desk-ink)}
body.noted-staff.nu-home .desk-partial .nu-secondary{flex:none}

/* Saved reservation drafts: the section is hidden on the Desk (Resume Reservation lives in New Reservation); its rows keep
   their rules for wherever the list is shown. A draft's row names the guest, the day and the time, and a long name wraps
   inside the row. :not(#nu-none) outranks the staff button rule (its :not(#notedSignIn *) counts as an id). */
body.noted-staff.nu-home .home-visits .ch-day-summary{display:block;max-width:none;margin:var(--gap-in,12px) 0 0;text-align:left;font:400 14px/1.5 var(--team-font)!important;color:var(--desk-muted)}
body.noted-staff.nu-home .home-visits .ch-day-summary:empty{display:none}
body.noted-staff.nu-home #partyList>.sm-btn:not(#nu-none){height:auto;padding-top:var(--gap-in,12px)!important;padding-bottom:var(--gap-in,12px)!important}
body.noted-staff.nu-home .list:has(>.nu-empty:only-child){background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important}
body.noted-staff.nu-home .list>.nu-empty{margin:0}

/* Owner and admin setup notes (a placeholder still to fill). */
body.noted-staff.nu-home .desk-setup-note{margin:var(--gap-group,24px) 0 0;padding:14px 18px;border:1px solid var(--desk-line);border-radius:16px;background:var(--desk-well);font:400 13px/1.55 var(--team-font)!important;color:var(--desk-ink)}

/* Tiles: a title and an icon, a black glyph on a light square. Four across on iPad landscape, three on iPad portrait, two
   on phones. */
body.noted-staff.nu-home.nu-concierge .home-actions{margin:0!important;padding:0!important;border:0!important}
body.noted-staff.nu-home.nu-concierge .tiles{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:var(--gap-in,12px)!important;margin:0!important}
body.noted-staff.nu-home.nu-concierge .tiles .tile{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:space-between!important;gap:var(--gap-in,12px)!important;min-width:0;min-height:164px!important;padding:var(--gap-group,24px)!important;border-radius:24px!important;text-align:left}
body.noted-staff.nu-home.nu-concierge .tiles .tile-ico{display:grid!important;place-items:center;flex:none;width:64px!important;height:64px!important;margin:0!important;border:1px solid #d9d9d9!important;border-radius:18px!important;background:#fff!important;color:var(--desk-ink)!important;box-shadow:inset 0 1px 0 #fff,0 1px 2px #00000014,0 4px 10px #0000000a!important}
body.noted-staff.nu-home.nu-concierge .tiles .tile-ico .ico{display:block!important;width:33px!important;height:33px!important;margin:0!important;stroke:var(--desk-ink)!important;stroke-width:1.6!important}
body.noted-staff.nu-home.nu-concierge .tiles .tile-copy{display:block;min-width:0;max-width:100%}
body.noted-staff.nu-home.nu-concierge .tiles .tile .ttl{display:block;margin:0!important;font:700 clamp(16px,4.6vw,18px)/1.25 var(--team-font)!important;letter-spacing:-.02em!important;color:var(--desk-ink)!important;overflow-wrap:break-word}
body.noted-staff.nu-home.nu-concierge .tiles .tile .ttl-note{font:500 13px/1.3 var(--team-font)!important;letter-spacing:0!important;color:var(--desk-muted);white-space:nowrap}
body.noted-staff.nu-home.nu-concierge .tiles .tile .ds{display:none!important}
@media(min-width:744px){
  body.noted-staff.nu-home.nu-concierge .tiles{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:var(--gap-group,24px)!important}
  body.noted-staff.nu-home.nu-concierge .tiles .tile{min-height:152px!important}
  body.noted-staff.nu-home.nu-concierge .tiles .tile-ico{width:52px!important;height:52px!important;border-radius:15px!important}
  body.noted-staff.nu-home.nu-concierge .tiles .tile-ico .ico{width:27px!important;height:27px!important}
  body.noted-staff.nu-home.nu-concierge .tiles .tile .ttl{font-size:20px!important}
}
@media(min-width:1133px){
  body.noted-staff.nu-home.nu-concierge .tiles{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}

/* Arranging (owners and admins): hold a tile, as on a phone's home screen. The tiles wiggle gently (not with reduced
   motion), the held tile lifts and follows the finger, a soft gap shows where it lands. Done and Reset sit above. */
body.noted-staff.nu-home .tile-arrange-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--gap-in,12px);margin:0 0 var(--gap-group,24px)}
body.noted-staff.nu-home .tile-arrange-bar[hidden]{display:none}
body.noted-staff.nu-home .tile-arrange-bar .tile-order-status{flex:1 1 220px;min-width:0;margin:0;font:400 14px/1.45 var(--team-font)!important;color:var(--desk-muted)}
body.noted-staff.nu-home.nu-concierge .tile-pill{min-height:44px!important;height:44px;margin:0!important;padding:0 22px!important;border:1px solid #d4d4d4!important;border-radius:999px!important;background:#fff!important;box-shadow:var(--desk-control)!important;color:var(--desk-ink)!important;font:700 15px/1 var(--team-font)!important;cursor:pointer}
body.noted-staff.nu-home.nu-concierge .tile-pill-done{border-color:var(--desk-ink)!important;background:var(--desk-ink)!important;color:#fff!important}
body.noted-staff.nu-home .tile-pill[hidden]{display:none!important}
body.noted-staff.nu-home .tile-order-retry{margin-top:var(--gap-in,12px)}
body.noted-staff.nu-home.nu-concierge .tiles.tiles-editing .tile.active{touch-action:none!important;cursor:grab;animation:dh-wiggle .32s ease-in-out infinite alternate!important}
body.noted-staff.nu-home.nu-concierge .tiles.tiles-editing .tile.active:nth-child(even){animation-delay:-.16s!important;animation-direction:alternate-reverse!important}
@keyframes dh-wiggle{from{transform:rotate(-.6deg)}to{transform:rotate(.6deg)}}
/* The id outranks the staff-wide press rule (scale .96 while a finger is down), which would shrink the tile being held. */
body.noted-staff.nu-home #tiles .tile:is(.hd-held,.hd-lifted){animation:none!important;border-color:#fff!important;background:linear-gradient(154deg,#fff,#f6f6f6 72%,#eaeaea)!important;box-shadow:var(--desk-hover)!important}
body.noted-staff.nu-home #tiles .tile.hd-held{transform:scale(1.03)!important}
body.noted-staff.nu-home #tiles .tile.hd-lifted{transform:scale(1.05)!important;cursor:grabbing;opacity:.97;transition:none!important}
body.noted-staff.nu-home .tiles .hd-placeholder{border-radius:24px;background:#f0f0f0;box-shadow:inset 0 0 0 1.5px #dedede}
@media(prefers-reduced-motion:reduce){
  body.noted-staff.nu-home.nu-concierge .tiles.tiles-editing .tile.active{animation:none!important}
}

/* Systems sheet: every link the same fixed cell. The vendor's icon in the same 48px white chip at the top, the name
   centered on one line under it. No address, no subtext. Each opens in a new tab. More specific than
   noted-concierge.css's older .sys-app rule (padding, gap, border and the name's type there are !important). */
body.noted-staff #systemsOverlay .sys-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,152px),1fr));grid-auto-rows:128px;gap:var(--gap-in,12px)}
body.noted-staff #systemsOverlay .sys-list>li{display:block;min-width:0;margin:0;padding:0}
body.noted-staff #systemsOverlay .sys-app{display:grid!important;grid-template-columns:minmax(0,1fr);grid-template-rows:48px 20px;justify-items:center;align-content:center;gap:var(--gap-in,12px) 0!important;box-sizing:border-box;width:100%;height:100%;min-width:0;padding:0 12px!important;border:1px solid var(--desk-line)!important;border-radius:18px!important;background:#fff!important;color:var(--desk-ink);text-decoration:none}
body.noted-staff #systemsOverlay .sys-ico{display:grid;place-items:center;box-sizing:border-box;width:48px;height:48px;border:1px solid var(--desk-line);border-radius:14px;background:#fff;color:var(--desk-ink);line-height:0;overflow:hidden}
body.noted-staff #systemsOverlay .sys-ico img{display:block;width:36px;height:36px;max-width:none;object-fit:contain;pointer-events:none}
body.noted-staff #systemsOverlay .sys-ico svg{display:block;width:22px;height:22px}
body.noted-staff #systemsOverlay .sys-app .nm{display:block;max-width:100%;min-width:0;font:600 15px/20px var(--team-font)!important;text-transform:none!important;color:var(--desk-ink);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

@media(max-width:1100px){
  body.noted-staff.nu-home .today-number{font-size:clamp(24px,2.6vw,30px)!important}
}
@media(max-width:743px){
  body.noted-staff.nu-home .today-stat{min-height:104px!important;padding:16px!important}
  /* The arrow sits beside the label, never beside the number: "$18,420" and "1:30 PM" fill a phone card's width. */
  body.noted-staff.nu-home .today-label{padding-right:22px;font-size:13px!important}
  body.noted-staff.nu-home .today-go{top:16px;right:12px;width:16px;height:16px}
  body.noted-staff.nu-home .today-number{font-size:26px!important}
}
@media(max-width:600px){
  body.noted-staff.nu-home.nu-concierge .ch-estate{height:224px;border-radius:20px!important;margin-bottom:var(--gap-group,24px)!important}
  body.noted-staff.nu-home.nu-concierge .ch-estate-caption{left:16px;right:16px;bottom:16px}
  body.noted-staff.nu-home.nu-concierge .ch-estate-title{font-size:20px!important}
  body.noted-staff.nu-home.nu-concierge .ch-estate-place{font-size:12px!important}
  body.noted-staff.nu-home.nu-concierge .home-heading{margin-bottom:var(--gap-group,24px)!important}
  body.noted-staff.nu-home .home-today{padding:var(--gap-in,12px);border-radius:24px}
  body.noted-staff.nu-home .home-today-title{margin:4px 4px var(--gap-in,12px)!important;font-size:20px!important}
  body.noted-staff.nu-home .today-stats{gap:var(--gap-in,12px)}
  body.noted-staff.nu-home .today-weather-now{grid-column:1 / -1}
  body.noted-staff.nu-home .today-card{margin-top:var(--gap-in,12px);padding:16px;border-radius:20px}
  body.noted-staff.nu-home.nu-concierge .arr-row-btn{grid-template-columns:72px minmax(0,1fr);gap:12px;padding:12px 4px!important}
  body.noted-staff.nu-home .arr-detail{padding:12px}
  body.noted-staff.nu-home .today-hours{grid-auto-flow:row;grid-template-columns:repeat(var(--hour-cols,4),minmax(0,1fr));overflow:visible}
}
