/* Cover letters share the desk's live controls on a blank clipboard asset. */
.letters-object,.compact-letters{grid-area:letters;isolation:isolate;position:relative;min-width:0;color:#203340;--ink:#203340;--blue:#225c79;--muted:#4f6068}
.clipboard-art{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;object-fit:fill}
.clipboard-content{position:absolute;inset:23% 15% 12%;display:flex;flex-direction:column;min-height:0;gap:8px}
.letters-object h2{font-size:24px!important;line-height:1.12!important;margin:0}
.letter-count{font-size:14px;line-height:1.4;margin:0}
.letter-desk-actions{display:flex;flex-direction:column;align-items:start;gap:9px;margin-top:auto;padding-top:10px}
body[data-view=desk] .letter-desk-actions .ui-action{font-size:14px!important;min-height:36px!important;padding:4px 0!important}
.emblem-clipboard img{display:block;width:100%;height:100%;object-fit:contain;object-position:left center}
@media(min-width:1200px){
 body[data-view=desk] .desk-expanded{grid-template-columns:minmax(0,.87fr) minmax(0,1.58fr) minmax(0,1fr);grid-template-areas:'profile calendar jobs' 'lower lower lower'}
 .desk-lower{grid-area:lower;display:flex;container-type:size;gap:29px;min-width:0;min-height:0}
 .desk-lower>.object{width:100%;min-height:0;max-width:none;margin:0;align-self:stretch}
 /* Space the actual objects, including the tray/cabinet overhangs.
    The monitor shares the remaining width with its neighbours and fills its slot. */
 .desk-lower>.cv-object{flex:.96 1 0;width:auto;margin-inline:6px}
 .desk-lower>.files-object{flex:.94 1 0;width:auto;margin-left:4px}
 .desk-lower>.desk-monitor-slot{flex:1.45 1 0;align-self:stretch;place-items:stretch}
 /* The 1086 × 1448 artwork has opaque edges at x=55 and x=1030.
    Keep its 3:4 proportions and align those edges with its layout box. */
 .desk-expanded .letters-object{flex:0 0 min(20cqw,67.334cqh);max-width:none}
 .desk-expanded .letters-object .clipboard-art{left:-5.641%;right:auto;width:111.385%}
 .desk-expanded .desk-monitor-slot>.monitor-object{width:100%;height:calc(100% - 17px);aspect-ratio:auto;align-self:start;justify-self:stretch;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto}
 .desk-expanded .desk-monitor-slot .monitor-screen{width:100%;min-width:0;height:100%;aspect-ratio:auto}
 .desk-expanded .cv-content .object-actions{flex-wrap:wrap}
 .desk-expanded .desk-monitor-slot .monitor-controls{gap:0 8px;justify-content:space-between;flex-wrap:wrap;padding-top:5px}
 .desk-expanded .desk-monitor-slot .monitor-controls:after{display:none}
 body[data-view=desk] .desk-expanded .desk-monitor-slot .monitor-controls .ui-action{padding:5px 0!important;font-size:13px!important;min-height:32px!important;white-space:nowrap}
 .desk-expanded .desk-monitor-slot .monitor-screen{padding:6px 9px;border-width:6px}
 .desk-expanded .desk-monitor-slot .mini-hero{padding-top:2px}
 .desk-expanded .desk-monitor-slot .mini-copy h3{font-size:clamp(22px,2vw,30px);-webkit-line-clamp:3}
 .desk-expanded .desk-monitor-slot .mini-copy .text-action,.desk-expanded .desk-monitor-slot .mini-site-header{display:none}
}
@media(max-width:1199px){
 .compact-object-grid{width:100%;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-areas:'profile jobs cvs' 'letters monitor files';grid-template-rows:minmax(90px,1fr) minmax(140px,1.25fr)}
 .compact-object-grid>.compact-letters{padding:0;gap:0;justify-content:stretch}
 .compact-letters .clipboard-content{gap:5px;justify-content:center}
 .compact-letters h2{font-size:22px;line-height:1.12;margin:0}
 .compact-letters p{font-size:14px;margin:0}
 .compact-object-grid>.desk-monitor-slot,.compact-object-grid>.compact-files{height:100%}
 .compact-object-grid>.desk-monitor-slot{place-items:end stretch}
 .compact-object-grid>.desk-monitor-slot>.compact-pages{width:100%;height:calc(100% - 13px);max-width:none;aspect-ratio:auto;align-self:start;justify-self:stretch}
}
@media(max-width:599px){
 body[data-view=desk] #main{height:auto;min-height:calc(100dvh - var(--topbar-height,64px));padding-block:25px 18px}
 body[data-view=desk] .desk-compact,body[data-view=desk]:has(.day-agenda.has-overflow) .desk-compact{height:auto;min-height:0;grid-template-rows:minmax(316px,auto) auto;gap:24px}
 .compact-objects{container-type:inline-size;min-height:0}
 .compact-object-grid{height:auto;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:minmax(90px,auto) minmax(145px,auto) auto;grid-template-areas:'profile jobs' 'cvs letters' 'monitor files'}
 .compact-letters .clipboard-content{gap:5px}
 .compact-letters h2{font-size:20px}
 .compact-object-grid>.desk-monitor-slot,.compact-object-grid>.compact-files{height:calc((100cqw - var(--object-gap))*.375 + 13px)}
 .compact-object-grid>.compact-cvs{justify-content:center}
}

@media(min-width:1200px) and (max-height:850px){
 .desk-expanded .cv-content .object-actions{flex-wrap:nowrap;gap:8px}
 body[data-view=desk] .desk-lower .cv-content .object-actions .ui-action{font-size:12px!important;padding:4px 0!important;min-height:36px!important}
 .desk-expanded .letters-object h2{font-size:20px!important}
 .desk-expanded .clipboard-content{gap:4px}
 .desk-expanded .letter-desk-actions{gap:4px;padding-top:4px}
 body[data-view=desk] .letter-desk-actions .ui-action{min-height:32px!important}
 body[data-view=desk] .desk-expanded .desk-monitor-slot .monitor-controls .ui-action{font-size:12px!important}
}
