/* Collectanea V4.0.3 · scene rebuild
   Final override layer for overview balance, people cards, library and museum.
   Goal: physically coherent 2.5D rooms without runtime layout hacks. */
:root{
  --ct403-ink:#29251f;
  --ct403-muted:#70695f;
  --ct403-line:rgba(62,53,43,.14);
  --ct403-paper:#f7f4ed;
  --ct403-wall:#e5e0d6;
  --ct403-wood:#4a3020;
  --ct403-wood-dark:#24170f;
  --ct403-wood-black:#120b07;
}

/* ---------- HOME ---------- */
#view.collectanea-home .ct402-hero,
#view .ct402-hero{
  min-height:0!important;
  padding:18px 22px!important;
  border:1px solid var(--ct403-line)!important;
  border-radius:8px!important;
  background:rgba(251,249,244,.82)!important;
  box-shadow:none!important;
}
.ct402-hero h2{font-size:clamp(1.9rem,3.2vw,3rem)!important;line-height:1!important;margin:.12rem 0 .45rem!important;font-weight:520!important;letter-spacing:-.035em!important}
.ct402-hero p{font-size:.94rem!important;margin:0 0 .8rem!important;max-width:560px!important}
.ct402-hero .hero-actions{gap:7px!important}.ct402-hero .hero-actions button{padding:6px 11px!important;min-height:34px!important;border-radius:6px!important}

.ct402-focus-grid{
  display:grid!important;
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr)!important;
  gap:16px!important;
  align-items:stretch!important;
  margin:16px 0 18px!important;
}
#view.collectanea-home .today-object,.today-object{
  margin:0!important;
  min-height:210px!important;
  grid-template-columns:minmax(145px,180px) minmax(0,1fr)!important;
  border:1px solid var(--ct403-line)!important;
  border-radius:9px!important;
  overflow:hidden!important;
  background:#fbfaf7!important;
  box-shadow:0 10px 28px rgba(35,28,21,.05)!important;
}
#view.collectanea-home .today-object-media,.today-object-media{min-height:210px!important}
#view.collectanea-home .today-object-copy,.today-object-copy{padding:17px 17px 17px 0!important;align-self:center!important}
#view.collectanea-home .today-object-copy h3,.today-object-copy h3{font-size:1.32rem!important;line-height:1.12!important;margin:5px 0 7px!important}
#view.collectanea-home .today-object-copy p,.today-object-copy p{font-size:.89rem!important;line-height:1.4!important}

.ct402-weekly-person{
  min-height:242px!important;
  display:grid!important;
  grid-template-columns:150px minmax(0,1fr)!important;
  gap:20px!important;
  align-items:center!important;
  padding:22px!important;
  border:1px solid var(--ct403-line)!important;
  border-radius:9px!important;
  background:linear-gradient(180deg,#fdfbf7,#f4f0e8)!important;
  box-shadow:0 13px 34px rgba(35,28,21,.075)!important;
}
.ct402-weekly-person .ct402-person-photo{width:150px!important;height:188px!important;border-radius:5px!important;box-shadow:0 12px 26px rgba(31,24,18,.16)!important}
.ct402-weekly-person h3{font-size:1.78rem!important;line-height:1.06!important;margin:5px 0 8px!important}
.ct402-weekly-person p{font-size:.96rem!important;line-height:1.48!important;margin:.25rem 0!important;color:#585249!important}
.ct402-weekly-person [data-person-open]{margin-top:8px!important;min-height:34px!important;padding:6px 11px!important}

.ct402-room-links{grid-template-columns:1fr 1fr!important;gap:8px!important;margin:8px 0 22px!important}
.ct402-room-links .room-launch{
  min-height:54px!important;padding:10px 13px!important;border-radius:6px!important;
  background:transparent!important;border:1px solid rgba(62,53,43,.16)!important;box-shadow:none!important;
  grid-template-columns:92px 1fr auto!important;gap:8px!important;
}
.ct402-room-links .room-launch:hover{background:rgba(247,244,237,.72)!important}

/* ---------- PEOPLE ---------- */
.people-grid .ct403-person-card{
  display:grid!important;
  grid-template-columns:88px minmax(0,1fr)!important;
  gap:16px!important;
  align-items:start!important;
  padding:14px!important;
  background:#fcfbf8!important;
  border:1px solid var(--ct403-line)!important;
  border-radius:8px!important;
  box-shadow:0 8px 24px rgba(34,27,20,.045)!important;
  cursor:pointer!important;
}
.people-grid .ct403-person-card:hover{transform:translateY(-1px)!important;box-shadow:0 12px 28px rgba(34,27,20,.075)!important}
.ct403-person-card .ct402-person-card-photo{width:88px!important;height:116px!important;border-radius:4px!important;box-shadow:0 5px 13px rgba(30,24,18,.13)!important}
.ct403-person-card-body{display:flex!important;flex-direction:column!important;gap:7px!important;min-width:0!important}
.ct403-person-card h3{font-size:1.17rem!important;line-height:1.12!important;margin:.12rem 0 .3rem!important}
.ct403-person-card .meta{font-size:.77rem!important;color:#777066!important}
.ct403-person-card .compact-summary{font-size:.9rem!important;line-height:1.43!important;margin:0!important;color:#554f47!important;display:-webkit-box!important;-webkit-line-clamp:4!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
.ct403-person-tags{margin-top:2px!important}.ct403-person-tags .badge{font-size:.7rem!important;padding:2px 6px!important;opacity:.82!important}
.ct403-person-card .person-card-actions,.ct403-person-hint{display:none!important}

/* ---------- LIBRARY: reset legacy geometry ---------- */
#libraryRoom.ct402-library-room{
  position:relative!important;
  min-height:760px!important;
  overflow:hidden!important;
  padding:78px 28px 116px!important;
  border-radius:8px!important;
  background:
    radial-gradient(ellipse at 50% 2%,rgba(255,246,221,.42),transparent 38%),
    linear-gradient(90deg,rgba(52,39,28,.07),transparent 12%,transparent 88%,rgba(52,39,28,.07)),
    url('assets/v403/plaster-soft.jpg') center/560px auto repeat!important;
  box-shadow:inset 0 0 95px rgba(59,45,33,.11),0 18px 45px rgba(37,29,21,.07)!important;
  perspective:1800px!important;
}
#libraryRoom .ct402-library-ceiling{height:64px!important;background:linear-gradient(#d8d1c5,#ebe6dc 72%,rgba(255,255,255,.32))!important;box-shadow:0 5px 14px rgba(62,46,33,.11)!important}
#libraryRoom .ct402-library-light{width:310px!important;height:30px!important;top:15px!important;background:radial-gradient(ellipse,rgba(255,239,201,.75),rgba(255,230,176,.18) 48%,transparent 74%)!important}
#libraryRoom .ct402-library-wall{inset:0 0 104px!important}
#libraryRoom .ct402-library-skirting{bottom:88px!important;height:20px!important;background:url('assets/v403/walnut-mid.jpg') center/520px auto!important;box-shadow:0 -5px 12px rgba(44,29,18,.12),0 5px 9px rgba(30,20,12,.22)!important}
#libraryRoom .ct402-library-floor{
  left:-5%!important;right:-5%!important;bottom:-20px!important;height:128px!important;
  background-image:linear-gradient(180deg,rgba(28,20,14,.18),transparent 28%),url('assets/v403/parquet.jpg')!important;
  background-size:auto,700px 210px!important;background-repeat:no-repeat,repeat!important;
  transform-origin:top center!important;transform:perspective(650px) rotateX(58deg) scale(1.18)!important;
  filter:saturate(.72) brightness(.92)!important;
}
#libraryRoom .library-cases{min-width:0!important;width:100%!important;display:block!important;transform:none!important;overflow:visible!important}
#libraryRoom .bookcase-section{min-width:0!important;width:100%!important;margin:0 0 34px!important;filter:none!important;transform:none!important}
#libraryRoom .bookcase-label{
  width:auto!important;height:auto!important;margin:0 8px 8px!important;padding:0!important;
  background:none!important;border:0!important;box-shadow:none!important;
  color:#49433b!important;display:flex!important;justify-content:space-between!important;
}
#libraryRoom .bookcase-label span{font:500 14px/1.25 Georgia,serif!important;letter-spacing:.015em!important}
#libraryRoom .bookcase-label small{font-size:9px!important;color:#827a6f!important}
#libraryRoom .bookcase-label:before,#libraryRoom .bookcase-label:after{display:none!important}

#libraryRoom .ct403-bookcase-run{
  display:flex!important;gap:24px!important;align-items:flex-end!important;
  overflow-x:auto!important;overflow-y:visible!important;
  padding:12px 12px 38px!important;scroll-snap-type:x proximity!important;
  scrollbar-width:thin!important;
}
#libraryRoom .ct403-bookcase-bay{
  position:relative!important;
  flex:0 0 clamp(610px,68vw,820px)!important;min-width:610px!important;
  padding:58px 42px 50px!important;
  border:1px solid #1d120c!important;border-radius:2px!important;
  background:
    linear-gradient(90deg,rgba(0,0,0,.34),transparent 5%,transparent 95%,rgba(0,0,0,.36)),
    linear-gradient(180deg,rgba(255,255,255,.055),rgba(0,0,0,.14)),
    url('assets/v403/walnut-mid.jpg') center/680px auto repeat!important;
  box-shadow:
    0 30px 40px rgba(27,18,11,.23),0 7px 12px rgba(29,19,12,.28),
    inset 0 0 0 2px rgba(151,108,71,.14),inset 0 0 32px rgba(16,9,5,.18)!important;
  scroll-snap-align:start!important;transform:none!important;overflow:visible!important;
}
#libraryRoom .ct403-bookcase-bay:before,#libraryRoom .ct403-bookcase-bay:after{
  content:""!important;display:block!important;position:absolute!important;z-index:4!important;
  top:42px!important;bottom:44px!important;width:33px!important;
  background:
    linear-gradient(90deg,rgba(255,255,255,.08),transparent 27%,rgba(0,0,0,.25)),
    url('assets/v403/walnut-mid.jpg') center/370px auto repeat!important;
  border:1px solid rgba(26,16,10,.72)!important;
  box-shadow:inset -4px 0 7px rgba(0,0,0,.25),4px 0 9px rgba(0,0,0,.12)!important;
}
#libraryRoom .ct403-bookcase-bay:before{left:7px!important}
#libraryRoom .ct403-bookcase-bay:after{right:7px!important;transform:scaleX(-1)!important}
#libraryRoom .ct403-cornice{
  position:absolute!important;left:-10px!important;right:-10px!important;top:-1px!important;height:52px!important;z-index:6!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.09),transparent 24%,rgba(0,0,0,.24)),
    url('assets/v403/walnut-mid.jpg') center/660px auto repeat!important;
  border:1px solid #20140d!important;box-shadow:0 8px 14px rgba(24,15,9,.28),inset 0 -5px 7px rgba(0,0,0,.18)!important;
}
#libraryRoom .ct403-cornice:before,#libraryRoom .ct403-cornice:after{content:"";position:absolute;bottom:7px;width:30%;height:9px;border-top:1px solid rgba(187,142,94,.22);border-radius:50%}
#libraryRoom .ct403-cornice:before{left:8%}#libraryRoom .ct403-cornice:after{right:8%}
#libraryRoom .ct403-crown-ornament{position:absolute;left:50%;bottom:5px;width:52px;height:18px;transform:translateX(-50%);border:1px solid rgba(180,133,87,.22);border-bottom:0;border-radius:50% 50% 0 0;opacity:.65}
#libraryRoom .ct403-plinth{
  position:absolute!important;left:-9px!important;right:-9px!important;bottom:-2px!important;height:45px!important;z-index:6!important;
  background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(0,0,0,.28)),url('assets/v403/walnut-dark.jpg') center/620px auto repeat!important;
  border:1px solid #1b110b!important;box-shadow:0 13px 18px rgba(28,18,10,.24),inset 0 4px 6px rgba(255,255,255,.035)!important;
}
#libraryRoom .ct403-bay-body{display:grid!important;gap:24px!important}

/* shelves: geometry is now final at render time, no observer-driven height changes */
#libraryRoom .ct403-real-shelf,
#libraryRoom .ct403-real-shelf.p08-adaptive{
  position:relative!important;
  height:calc(var(--row-book-h) + 56px)!important;min-height:0!important;max-height:none!important;
  margin:0!important;padding:0!important;border:0!important;overflow:visible!important;transform:none!important;
  background:
    radial-gradient(ellipse 74% 40% at 50% 0%,rgba(141,95,58,.12),transparent 72%),
    linear-gradient(90deg,#160e09 0%,#24160f 7%,#2b1c13 50%,#23160f 93%,#150d08 100%)!important;
  box-shadow:inset 16px 0 21px rgba(0,0,0,.31),inset -16px 0 21px rgba(0,0,0,.32),inset 0 15px 22px rgba(0,0,0,.27)!important;
}
#libraryRoom .ct403-shelf-back,
#libraryRoom .ct403-real-shelf.p08-adaptive .ct403-shelf-back{
  position:absolute!important;left:16px!important;right:16px!important;bottom:29px!important;
  width:auto!important;min-width:0!important;max-width:none!important;
  height:var(--row-book-h)!important;min-height:0!important;max-height:none!important;
  padding:0 8px!important;margin:0!important;
  display:flex!important;align-items:flex-end!important;justify-content:flex-start!important;gap:1px!important;
  overflow:visible!important;transform:none!important;
}
#libraryRoom .ct403-shelf-plank,
#libraryRoom .ct403-real-shelf.p08-adaptive .ct403-shelf-plank{
  display:block!important;position:absolute!important;left:-7px!important;right:-7px!important;bottom:0!important;height:30px!important;z-index:5!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.11),transparent 18%,rgba(0,0,0,.28)),
    url('assets/v403/walnut-mid.jpg') center/520px auto repeat!important;
  border:1px solid #20130c!important;border-top-color:rgba(172,124,80,.42)!important;
  box-shadow:0 -8px 13px rgba(0,0,0,.43),0 9px 12px rgba(0,0,0,.42),inset 0 2px rgba(255,255,255,.05)!important;
}
#libraryRoom .p08-shelf-lamp{display:none!important}
#libraryRoom .ct403-shelf-air{display:block!important;flex:1 1 80px!important;min-width:42px!important;max-width:140px!important;height:1px!important;align-self:flex-end!important}
#libraryRoom .ct403-bookend{display:block!important;flex:0 0 11px!important;height:min(72%,128px)!important;align-self:flex-end!important;border-radius:2px 2px 0 0!important;background:linear-gradient(90deg,#1b110b,#5c3b27 42%,#22150d)!important;box-shadow:2px 3px 5px rgba(0,0,0,.32),inset 1px 0 rgba(255,255,255,.06)!important}
#libraryRoom .ct403-bookend.left{margin-right:4px!important}#libraryRoom .ct403-bookend.right{margin-left:4px!important}

#libraryRoom .ct403-book-spine{
  appearance:none!important;position:relative!important;flex:0 0 auto!important;align-self:flex-end!important;
  margin:0!important;padding:0!important;bottom:0!important;
  border:1px solid rgba(18,11,7,.72)!important;border-bottom-color:#100906!important;
  border-radius:2px 3px 0 0!important;transform:none!important;transform-origin:50% 100%!important;
  overflow:visible!important;cursor:pointer!important;
  box-shadow:inset 1px 0 rgba(255,255,255,.11),inset -2px 0 rgba(0,0,0,.24),0 2px 2px rgba(0,0,0,.28),3px 4px 5px rgba(0,0,0,.24)!important;
  filter:saturate(.92) contrast(1.025)!important;
}
#libraryRoom .ct403-book-spine:after{content:""!important;position:absolute!important;left:0!important;right:0!important;bottom:-1px!important;height:2px!important;background:#0e0805!important;opacity:.9!important;border-radius:0!important;filter:none!important}
#libraryRoom .ct403-book-spine:not(.has-image):before{background:linear-gradient(90deg,rgba(255,255,255,.12),transparent 12%,transparent 82%,rgba(0,0,0,.23)),linear-gradient(180deg,rgba(255,255,255,.035),transparent 16%,rgba(0,0,0,.11))!important;mix-blend-mode:soft-light!important}
#libraryRoom .ct403-book-spine.has-image{background-size:100% 100%!important;background-position:center!important;background-repeat:no-repeat!important}
#libraryRoom .ct403-book-spine:hover,#libraryRoom .ct403-book-spine:focus-visible{transform:translateY(-2px)!important;filter:saturate(1) brightness(1.05)!important;z-index:20!important;outline:1px solid rgba(235,219,187,.42)!important;outline-offset:2px!important}
#libraryRoom .spine-hover-title{bottom:calc(100% + 10px)!important;z-index:30!important;max-width:250px!important}

/* ---------- MUSEUM ---------- */
#museumRoom.ct403-museum-room{
  position:relative!important;min-height:780px!important;overflow:hidden!important;padding:86px 28px 122px!important;
  border-radius:8px!important;
  background:linear-gradient(180deg,#d7d1c7 0,#d9d3c9 66%,#cbc4b9 100%)!important;
  box-shadow:inset 0 0 85px rgba(45,39,33,.105),0 18px 46px rgba(35,30,25,.075)!important;
  perspective:1700px!important;
}
.ct403-gallery-ceiling{position:absolute;left:0;right:0;top:0;height:72px;background:linear-gradient(#cbc5ba,#e5e0d7 78%,rgba(255,255,255,.2));box-shadow:0 5px 13px rgba(55,49,42,.12);z-index:1}
#museumRoom .ct403-track{position:absolute!important;z-index:9!important;top:27px!important;left:7%!important;right:7%!important;height:6px!important;background:#3d3a35!important;border-radius:4px!important;box-shadow:0 3px 5px rgba(0,0,0,.23)!important}
#museumRoom .ct403-track i{position:absolute!important;left:var(--spot-x)!important;top:-4px!important;width:16px!important;height:22px!important;transform:translateX(-50%)!important;background:linear-gradient(90deg,#57534d,#282622)!important;border-radius:3px!important;box-shadow:0 3px 5px rgba(0,0,0,.23)!important}
#museumRoom .ct403-track i:after{content:"";position:absolute;left:2px;right:2px;bottom:-11px;height:14px;background:#2b2925;clip-path:polygon(12% 0,88% 0,100% 100%,0 100%)}
.ct403-room-wash{position:absolute;z-index:2;top:51px;width:38%;height:560px;pointer-events:none;opacity:.24;filter:blur(16px);background:linear-gradient(180deg,rgba(255,246,214,.52),rgba(255,244,207,.18) 45%,transparent 92%);clip-path:polygon(48% 0,52% 0,100% 100%,0 100%)}
.ct403-room-wash.wash-a{left:0}.ct403-room-wash.wash-b{left:31%}.ct403-room-wash.wash-c{right:0}
#museumRoom .ct403-museum-wall{
  position:relative!important;z-index:3!important;min-height:620px!important;padding:32px 34px 64px!important;
  border:1px solid rgba(79,70,59,.14)!important;
  background:
    radial-gradient(circle at 18% 18%,rgba(255,251,238,.44),transparent 28%),
    radial-gradient(circle at 52% 20%,rgba(255,251,238,.38),transparent 30%),
    radial-gradient(circle at 84% 18%,rgba(255,251,238,.42),transparent 27%),
    url('assets/v403/plaster-soft.jpg') center/560px auto repeat!important;
  box-shadow:inset 0 0 42px rgba(71,62,51,.07),0 16px 26px rgba(45,39,32,.105)!important;
}
.ct403-gallery-baseboard{position:absolute;left:3%;right:3%;bottom:103px;height:14px;z-index:4;background:linear-gradient(#c3bdb2,#9f988d);border-top:1px solid rgba(93,84,73,.18);box-shadow:0 4px 7px rgba(57,49,41,.12)}
#museumRoom .ct403-museum-floor{position:absolute!important;left:-5%!important;right:-5%!important;bottom:-22px!important;height:145px!important;background-image:linear-gradient(180deg,rgba(51,45,39,.16),transparent 25%),url('assets/v403/stone.jpg')!important;background-size:auto,660px auto!important;transform:perspective(600px) rotateX(59deg) scale(1.18)!important;filter:saturate(.45) brightness(1.02)!important;box-shadow:inset 0 20px 26px rgba(35,30,25,.1)!important}

#museumRoom .ct403-gallery-section{position:relative!important;margin:0 0 52px!important;padding:0 0 32px!important;border-bottom:1px solid rgba(77,68,57,.09)!important}
#museumRoom .ct403-gallery-heading{display:flex!important;align-items:baseline!important;gap:9px!important;margin:0 0 18px!important;padding:0!important;background:none!important;border:0!important}
#museumRoom .ct403-gallery-heading span{font:500 1.08rem/1.2 Georgia,serif!important;color:#514b43!important}
#museumRoom .ct403-gallery-heading small{font-size:.7rem!important;color:#91897e!important}
#museumRoom .ct403-wall-grid{
  display:grid!important;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))!important;
  grid-auto-rows:auto!important;grid-auto-flow:row!important;gap:38px 28px!important;
  align-items:end!important;justify-items:center!important;
  padding:16px 10px 24px!important;background:none!important;overflow:visible!important;
}
#museumRoom .ct403-museum-unit{
  position:relative!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-end!important;
  width:100%!important;min-width:0!important;max-width:340px!important;min-height:calc(var(--obj-h) + 88px)!important;
  padding:48px 10px 0!important;grid-column:auto!important;grid-row:auto!important;
}
#museumRoom .ct403-object-light{position:absolute;z-index:0;left:50%;top:2px;width:min(310px,110%);height:calc(var(--obj-h) + 85px);transform:translateX(-50%);background:radial-gradient(ellipse at 50% 18%,rgba(255,246,214,.52),rgba(255,244,208,.14) 50%,transparent 76%);filter:blur(9px);opacity:.54;pointer-events:none}
#museumRoom .museum-object-v2{position:relative!important;z-index:3!important;appearance:none!important;padding:0!important;border:0!important;width:var(--obj-w)!important;height:var(--obj-h)!important;max-width:100%!important;background:transparent!important;overflow:visible!important;cursor:pointer!important;transition:transform .16s ease,filter .16s ease!important}
#museumRoom .museum-object-v2:hover,#museumRoom .museum-object-v2:focus-visible{transform:translateY(-2px)!important;filter:brightness(1.025)!important;outline:none!important}
#museumRoom .object-shadow{position:absolute!important;z-index:-1!important;inset:8px -10px -11px 9px!important;background:rgba(31,27,23,.28)!important;filter:blur(8px)!important;border-radius:2px!important}
#museumRoom .object-mat{position:absolute!important;inset:0!important;padding:9px!important;background:#ece7de!important;border:1px solid rgba(79,70,59,.34)!important;box-shadow:inset 0 0 0 2px rgba(255,255,255,.58),0 4px 8px rgba(32,28,23,.18)!important;overflow:hidden!important}
#museumRoom .object-face{width:100%!important;height:100%!important;background-color:#e8e1d6!important;background-position:center!important;background-size:contain!important;background-repeat:no-repeat!important;box-shadow:inset 0 0 8px rgba(62,54,45,.11)!important}
#museumRoom .kind-sheet .object-mat{padding:12px!important;background:#f0ece4!important;border-color:#b8b0a4!important}
#museumRoom .kind-painting .object-mat{padding:9px!important;background:linear-gradient(90deg,#2a1a10,#6d4b2d 17%,#2b1b11 30%,#735035 52%,#25170f 72%,#604029)!important;border:2px solid #1b110b!important;box-shadow:inset 0 0 0 2px rgba(177,128,76,.34),inset 0 0 0 5px rgba(25,16,10,.76),9px 11px 16px rgba(31,26,21,.27)!important}
#museumRoom .kind-codex .object-mat{padding:10px!important;background:linear-gradient(180deg,#ded5c8,#c8bdae)!important;border:1px solid rgba(82,70,56,.42)!important;box-shadow:0 8px 12px rgba(37,30,24,.2),inset 0 0 0 1px rgba(255,255,255,.45)!important}
#museumRoom .kind-codex .object-face:not([style*="background-image"]){background:linear-gradient(145deg,#7a573d,#433025 46%,#8a6347)!important}
#museumRoom .ct403-hanging-wire{display:none!important;position:absolute!important;z-index:-2!important;left:50%!important;top:-31px!important;width:1px!important;height:32px!important;background:rgba(72,66,58,.42)!important;box-shadow:-18px 19px 0 -0.2px rgba(72,66,58,.35),18px 19px 0 -0.2px rgba(72,66,58,.35)!important}
#museumRoom .kind-painting .ct403-hanging-wire,#museumRoom .kind-sheet .ct403-hanging-wire{display:block!important}
#museumRoom .ct403-placeholder-tag{position:absolute!important;left:7px!important;bottom:7px!important;padding:3px 5px!important;border-radius:2px!important;background:rgba(35,30,26,.62)!important;color:#f7f1e7!important;font:600 8px/1.1 system-ui,sans-serif!important;letter-spacing:.04em!important;text-transform:uppercase!important}

/* museum label: title is always useful; inventory ID is secondary; extra metadata appears on hover/focus */
#museumRoom .ct403-museum-plaque{
  appearance:none!important;position:relative!important;z-index:4!important;
  width:min(96%,210px)!important;min-height:0!important;margin:12px 0 0!important;padding:5px 7px 6px!important;
  background:rgba(248,245,239,.94)!important;border:1px solid rgba(83,74,62,.25)!important;border-radius:2px!important;
  box-shadow:0 3px 7px rgba(31,26,21,.08)!important;text-align:left!important;cursor:pointer!important;
}
#museumRoom .ct403-museum-plaque strong{display:block!important;max-height:none!important;opacity:1!important;overflow:hidden!important;margin:0!important;font:600 10px/1.25 system-ui,sans-serif!important;color:#342f2a!important;white-space:nowrap!important;text-overflow:ellipsis!important}
#museumRoom .ct403-museum-plaque span{display:block!important;margin-top:2px!important;font:500 8px/1.15 system-ui,sans-serif!important;color:#8a8277!important;letter-spacing:.035em!important}
#museumRoom .ct403-museum-plaque small{display:block!important;max-height:0!important;opacity:0!important;overflow:hidden!important;margin:0!important;font:400 9px/1.25 system-ui,sans-serif!important;color:#6f685f!important;transition:max-height .15s ease,opacity .15s ease,margin .15s ease!important}
#museumRoom .ct403-museum-unit:hover .ct403-museum-plaque small,#museumRoom .ct403-museum-plaque:focus-visible small{max-height:50px!important;opacity:1!important;margin-top:4px!important}

/* manuscript bench: centered, no objects pushed to the outer edges */
#museumRoom .ct403-manuscript-stage{position:relative!important;width:min(92%,980px)!important;margin:24px auto 6px!important;padding:36px 48px 64px!important;background:linear-gradient(180deg,rgba(235,230,221,.2),transparent)!important}
#museumRoom .ct403-manuscript-bank{position:relative!important;z-index:3!important;display:flex!important;flex-wrap:wrap!important;gap:26px!important;justify-content:center!important;align-items:flex-end!important;overflow:visible!important;padding:10px 20px 26px!important}
#museumRoom .ct403-manuscript-stage:after{content:""!important;position:absolute!important;z-index:1!important;left:2%!important;right:2%!important;bottom:25px!important;height:38px!important;background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(0,0,0,.19)),url('assets/v403/walnut-mid.jpg') center/620px auto repeat!important;border:1px solid #332117!important;box-shadow:0 12px 16px rgba(27,18,12,.24)!important}
#museumRoom .ct403-bench-rail{position:absolute;z-index:0;left:8%;right:8%;bottom:4px;height:25px;background:url('assets/v403/walnut-dark.jpg') center/600px auto repeat;border-radius:0 0 3px 3px;box-shadow:0 10px 15px rgba(31,21,14,.18)}
#museumRoom .ct403-manuscript-bank .ct403-museum-unit{flex:0 0 auto!important;width:auto!important;max-width:250px!important;min-height:calc(var(--obj-h) + 70px)!important;padding-top:32px!important}
#museumRoom .ct403-manuscript-bank .museum-object-v2{transform:perspective(620px) rotateX(7deg)!important;transform-origin:bottom center!important}
#museumRoom .ct403-manuscript-bank .museum-object-v2:after{content:"";position:absolute;left:14%;right:14%;bottom:-12px;height:14px;background:linear-gradient(180deg,#5c4433,#2e2118);clip-path:polygon(8% 0,92% 0,100% 100%,0 100%);box-shadow:0 5px 7px rgba(20,14,10,.28);z-index:-1}
#museumRoom .ct403-manuscript-bank .museum-object-v2:hover{transform:perspective(620px) rotateX(5deg) translateY(-3px)!important}

/* ---------- MOBILE ---------- */
@media(max-width:760px){
  .ct402-focus-grid{grid-template-columns:1fr!important}
  .ct402-weekly-person{grid-template-columns:108px minmax(0,1fr)!important;min-height:0!important;padding:17px!important}
  .ct402-weekly-person .ct402-person-photo{width:108px!important;height:136px!important}
  .ct402-weekly-person h3{font-size:1.42rem!important}
  #view.collectanea-home .today-object,.today-object{grid-template-columns:128px minmax(0,1fr)!important;min-height:180px!important}
  #view.collectanea-home .today-object-media,.today-object-media{min-height:180px!important}
  #view.collectanea-home .today-object-copy,.today-object-copy{padding:13px 13px 13px 0!important}
  .ct402-room-links{grid-template-columns:1fr!important}.ct402-room-links .room-launch{grid-template-columns:78px 1fr auto!important}
  .people-grid .ct403-person-card{grid-template-columns:74px minmax(0,1fr)!important;padding:12px!important;gap:12px!important}
  .ct403-person-card .ct402-person-card-photo{width:74px!important;height:98px!important}
  .ct403-person-card .compact-summary{-webkit-line-clamp:3!important}

  #libraryRoom.ct402-library-room{min-height:640px!important;margin-left:-12px!important;margin-right:-12px!important;border-radius:0!important;padding:66px 8px 92px!important}
  #libraryRoom .ct403-bookcase-run{gap:14px!important;padding-left:12px!important;padding-right:12px!important;scroll-snap-type:x mandatory!important}
  #libraryRoom .ct403-bookcase-bay{flex-basis:91vw!important;min-width:91vw!important;padding:52px 28px 44px!important;scroll-snap-align:center!important}
  #libraryRoom .ct403-bookcase-bay:before,#libraryRoom .ct403-bookcase-bay:after{width:24px!important}
  #libraryRoom .ct403-bay-body{gap:18px!important}
  #libraryRoom .ct403-real-shelf,#libraryRoom .ct403-real-shelf.p08-adaptive{height:calc(var(--row-book-h) + 45px)!important}
  #libraryRoom .ct403-shelf-back,#libraryRoom .ct403-real-shelf.p08-adaptive .ct403-shelf-back{left:10px!important;right:10px!important;bottom:22px!important;height:var(--row-book-h)!important;padding:0 4px!important}
  #libraryRoom .ct403-shelf-plank,#libraryRoom .ct403-real-shelf.p08-adaptive .ct403-shelf-plank{height:23px!important}
  #libraryRoom .ct403-book-spine{max-width:48px!important}
  #libraryRoom .spine-hover-title{display:none!important}

  #museumRoom.ct403-museum-room{margin-left:-12px!important;margin-right:-12px!important;border-radius:0!important;padding:72px 8px 96px!important}
  #museumRoom .ct403-museum-wall{padding:22px 10px 46px!important}
  #museumRoom .ct403-wall-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:28px 10px!important;padding-left:2px!important;padding-right:2px!important}
  #museumRoom .ct403-museum-unit{max-width:none!important;min-height:calc(var(--obj-h) + 74px)!important;padding-left:2px!important;padding-right:2px!important}
  #museumRoom .museum-object-v2{max-width:92%!important}
  #museumRoom .ct403-museum-plaque{width:100%!important}
  #museumRoom .ct403-museum-plaque small{display:none!important}
  #museumRoom .ct403-manuscript-stage{width:100%!important;padding:26px 4px 56px!important}
  #museumRoom .ct403-manuscript-bank{flex-wrap:nowrap!important;justify-content:flex-start!important;overflow-x:auto!important;padding:8px 16px 24px!important;scroll-snap-type:x mandatory!important}
  #museumRoom .ct403-manuscript-bank .ct403-museum-unit{flex:0 0 62vw!important;max-width:62vw!important;scroll-snap-align:center!important}
  .ct403-room-wash{opacity:.18!important}
}

@media(prefers-reduced-motion:reduce){
  #libraryRoom .ct403-book-spine,#museumRoom .museum-object-v2,#museumRoom .ct403-museum-plaque small{transition:none!important}
}
