.claw-inline-host { margin: 10px auto 0; width: min(650px, 100%); }
.claw-launcher { position: fixed; z-index: 23; bottom: max(72px, calc(env(safe-area-inset-bottom) + 52px)); left: 50%; translate: -50% 0; width: 42px; height: 44px; padding: 7px; background: transparent; color: #a45762; transition: transform .4s var(--ease), color .3s; }
.claw-launcher:hover { transform: translateY(-3px) rotate(-7deg); color: #842e40; }
.claw-launcher-label { position: absolute; bottom: calc(100% + 4px); left: 50%; translate: -50% 0; white-space: nowrap; font-size: 9px; letter-spacing: .2px; }
.claw-dialog, .claw-dialog *, .claw-launcher, .claw-launcher * { user-select: none; -webkit-user-select: none; -webkit-touch-callout: none; }
.claw-launcher svg { width: 100%; height: 100%; fill: none; stroke: currentColor; stroke-width: 1.4; stroke-linecap: round; stroke-linejoin: round; }
.claw-dialog { position: fixed; inset: 0; margin: auto; width: min(740px, calc(100vw - 32px)); max-width: none; max-height: calc(100svh - 48px); padding: 46px 8px 12px; border: 0; border-radius: 0; background: transparent; color: #794b51; overflow: visible; }
.claw-dialog::backdrop { background: rgba(242,218,218,.92); backdrop-filter: blur(12px); animation: claw-backdrop-in .4s ease both; }
.claw-dialog.is-closing::backdrop { animation: claw-backdrop-out .28s ease both; }
.claw-popup-close { position: absolute; top: 0; right: 0; width: 40px; height: 40px; padding: 0; background: transparent; color: #a45762; font-size: 24px; }
.claw-popup-close span { display: inline-block; transition: transform .45s var(--ease); }
.claw-popup-close:hover span { transform: rotate(90deg); }
.claw-dialog .claw-stage { margin-inline: auto; }
.contacts-title { grid-column: 1 / -1; font-size: 9px; font-weight: 400; letter-spacing: .4px; margin: 0 0 5px; color: #a64f59; text-align: left; }
@keyframes claw-backdrop-in { from { opacity: 0; } to { opacity: 1; } }
@keyframes claw-backdrop-out { from { opacity: 1; } to { opacity: 0; } }
.claw-inline { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); align-items: center; gap: 30px; font: inherit; color: #71867c; }
.claw-inline .claw-machine { min-width: 0; text-align: center; }
.claw-inline .claw-stage { width: min(100%, 340px); margin-inline: auto; }
.claw-board { display: block; width: 100%; height: auto; touch-action: none; user-select: none; -webkit-user-select: none; cursor: grab; }
.claw-inline[data-busy=true] .claw-board { cursor: default; }
.claw-controls { display: flex; justify-content: center; align-items: center; gap: 16px; height: 40px; }
.claw-controls button { min-width: 40px; height: 40px; padding: 4px; color: #829c91; background: transparent; border: 0; border-radius: 0; font: inherit; font-size: 17px; touch-action: none; user-select: none; }
.claw-controls [data-claw-drop] { font-size: 11px; text-decoration: underline; text-underline-offset: 4px; }
.claw-controls button:disabled { opacity: .35; cursor: default; }
.claw-hint { margin: 0; font: inherit; font-size: 9px; color: #96a89f; line-height: 1.5; }
.claw-touch-hint { display: none; }
.claw-status { height: 16px; margin: 3px 0 0; font: inherit; font-size: 10px; line-height: 1.5; color: #71867c; white-space: nowrap; }
.claw-collection { min-width: 0; text-align: center; }
.claw-count { margin: 0 0 7px; font: inherit; font-size: 10px; color: #82968d; }
.claw-count span { margin-left: 4px; }
.claw-collection ul { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 5px; padding: 0; margin: 0; list-style: none; }
.claw-collection li { min-width: 0; }
.claw-collection li button { display: block; width: 100%; position: relative; min-height: 40px; border: 0; border-radius: 0; padding: 2px; background: transparent; }
.claw-collection li img { display: block; width: min(40px,100%); height: 40px; margin: auto; object-fit: contain; opacity: .25; filter: grayscale(1); transition: opacity .3s, filter .3s; }
.claw-collection li .is-collected img { opacity: 1; filter: none; }
.claw-collection li i { position: absolute; right: 0; top: -2px; font-style: normal; font-size: 9px; color: #a1b38c; }
.claw-detail { height: 34px; margin: 5px 0 0; display: grid; align-content: start; gap: 2px; font: inherit; font-size: 10px; line-height: 1.4; }
.claw-detail strong { font-weight: 400; }
.claw-detail small { font: inherit; font-size: 9px; color: #96a89f; }
.claw-complete { font: inherit; font-size: 12px; line-height: 1.4; margin: 3px 0; }
.claw-reset { font: inherit; font-size: 10px; margin: 0; padding: 4px 0; }
.claw-inline.is-compact .claw-collection ul { gap: 2px; }
.claw-inline.is-compact .claw-collection li img { height: 28px; }
.claw-inline.is-compact .claw-collection li button { min-height: 30px; }
.claw-inline.is-compact .claw-detail small { display: none; }
@media (pointer:coarse) { .claw-key-hint { display: none; } .claw-touch-hint { display: inline; } }
@media (max-width:520px) {
 .claw-inline-host { margin-left: 0; margin-right: auto; }
 .claw-inline .claw-stage { margin-left: 0; margin-right: auto; }
 .claw-board [data-claw-jaws], .claw-board [data-claw-head] { transform-box: fill-box; transform-origin: center; }
 .claw-board [data-claw-jaws] { scale: .92; }
 .claw-board [data-claw-head] { scale: .92; }
 .claw-inline { grid-template-columns: minmax(0,1.8fr) minmax(74px,.8fr); gap: 10px; }
 .claw-collection ul { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 3px; }
 .claw-collection li button { min-height: 32px; padding: 0; }
 .claw-collection li img { height: 31px; }
 .claw-detail small { display: none; }
 .claw-detail { height: 29px; }
 .claw-controls { gap: 6px; }
 .claw-controls button { height: 38px; }
 .claw-inline.is-compact .claw-collection ul { grid-template-columns: repeat(4,minmax(0,1fr)); }
}
@media (max-height:600px) {
 .world.about-open { padding-block: 24px; }
 .sheet.is-about .sheet-bar { height: 28px; padding-block: 4px; }
 .sheet.is-about .sheet-scroll { max-height: calc(100svh - 80px); }
 .sheet.is-about .sheet-content { padding: 2px 12px 4px; }
 .is-about .about-layout { width: 100%; row-gap: 3px; column-gap: 10px; grid-template-columns: minmax(0,1fr) minmax(0,1.1fr); grid-template-areas: 'profile hobbies' 'links links'; }
 .is-about .about-profile { width: 100%; margin: 0; grid-template-columns: 40px minmax(0,1fr); gap: 6px; }
 .is-about .portrait-slot { min-height: 54px; }
 .is-about .portrait-slot img { width: 36px; height: 48px; }
 .is-about .about-facts { gap: 5px; }
 .is-about .cornell-mark { grid-template-columns: minmax(0,1fr); gap: 2px; padding: 0; }
 .is-about .cornell-wordmark { max-width: 78px; }
 .is-about .cornell-mark strong { font-size: 9px; }
 .is-about .seattle-location { font-size: 9px; gap: 3px; line-height: 1.25; }
 .is-about .seattle-location svg { width: 10px; height: 12px; flex: none; }
 .is-about .profile-flags { padding-left: 0; gap: 5px; margin: 0; }
 .is-about .profile-flags svg { height: 9px; }
 .is-about .activities { margin: 0; }
 .is-about .activities h2 { font-size: 9px; margin: 0 0 2px; transform: none; }
 .is-about .activity-scene { grid-template-columns: minmax(0,1fr); }
 .is-about .xr-bear { display: none; }
 .is-about .activity-links a { font-size: 9px; line-height: 1.25; padding: 3px 0; grid-template-columns: 10px minmax(0,1fr); gap: 4px; overflow-wrap: anywhere; }
 .is-about .activity-links .link-logo { width: 10px; height: 10px; }
 .is-about .personal-links { margin: 0; width: 100%; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 10px; }
 .is-about .personal-links a { font-size: 9px; padding: 4px 0; grid-template-columns: 12px minmax(0,1fr); gap: 4px; }
 .is-about .personal-links .link-logo { width: 12px; height: 12px; }
 .is-about .personal-links a[href^='mailto:'] { grid-column: 1 / -1; }
 .claw-inline-host { margin-top: 7px; }
}
@media (max-height:600px) and (min-width:601px) {
 .is-about .about-profile { grid-template-columns: 50px minmax(0,1fr); }
 .is-about .about-facts { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
 .is-about .activity-scene { grid-template-columns: max-content minmax(0,1fr); }
 .is-about .xr-bear { display: block; width: 75px; height: 64px; }
 .is-about .activity-links a { padding-block: 2px; }
 .is-about .personal-links { grid-template-columns: repeat(3,minmax(0,1fr)); }
 .is-about .personal-links a[href^='mailto:'] { grid-column: auto; }
 .claw-inline { grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 24px; }
 .claw-collection ul { grid-template-columns: repeat(7,minmax(0,1fr)); }
}
@media (min-width:521px) and (min-height:601px) {
 .is-about .personal-links { margin-top: 12px; }
 .claw-inline-host { margin-top: 2px; }
 .claw-inline .claw-stage { width: min(100%, 390px); }
}
@media (max-width:520px) {
 .is-about .about-layout { justify-items: center; }
 .is-about .about-profile { width: max-content; max-width: 100%; margin-inline: auto; text-align: center; }
 .is-about .about-facts { justify-items: center; text-align: center; }
 .is-about .seattle-location { justify-content: center; }
 .is-about .profile-flags { padding-left: 0; justify-content: center; }
 .is-about .activities { width: 100%; text-align: center; }
 .is-about .activities h2 { margin-left: 0; text-align: center; }
 .is-about .activity-scene { width: max-content; max-width: 100%; margin-inline: auto; }
 .is-about .activity-links a { display: flex; justify-content: center; }
 .is-about .personal-links { justify-items: center; }
 .is-about .personal-links a { display: flex; justify-content: center; width: min(280px, 100%); }
 .contacts-title { text-align: center; }
}
