:root {
    color-scheme: dark;
    --pit-cream: #fff2ce;
    --pit-ink: #17233d;
    --pit-teal: #1bb6ad;
    --pit-coral: #f06d62;
    --pit-sun: #ffd15a;
}
* { box-sizing: border-box; }
html, body, #pitport { width: 100%; height: 100%; margin: 0; overflow: hidden; }
body { font-family: "Nunito", "Avenir Next", system-ui, sans-serif; background: #152038; color: var(--pit-cream); }
#pitport { position: relative; isolation: isolate; }
#pitport::after { content: "DROP TO PLACE"; position: absolute; z-index: 5; inset: 12px; display: grid; place-items: end center; padding-bottom: 88px; border: 2px dashed rgba(99,216,228,.8); border-radius: 24px; color: var(--pit-cream); background: radial-gradient(circle at 50% 55%, rgba(27,182,173,.14), transparent 42%); box-shadow: inset 0 0 50px rgba(27,182,173,.16); font-size: 11px; font-weight: 950; letter-spacing: .14em; pointer-events: none; opacity: 0; transform: scale(.99); transition: opacity .16s ease, transform .16s ease; }
#pitport.is-inventory-dragging::after { opacity: 1; transform: scale(1); }
#pitport.is-drop-ready::after { border-color: var(--pit-sun); color: var(--pit-sun); background: radial-gradient(circle at 50% 55%, rgba(255,209,90,.2), transparent 45%); }
#pitport-canvas { display: block; width: 100%; height: 100%; touch-action: none; }
.pitport-vignette { position: absolute; inset: 0; pointer-events: none; background: linear-gradient(180deg, rgba(7,13,30,.25), transparent 32%, transparent 68%, rgba(7,13,30,.5)), radial-gradient(circle at 50% 48%, transparent 46%, rgba(5,10,24,.28) 100%); }
.pitport-header { position: absolute; z-index: 4; inset: max(18px, env(safe-area-inset-top)) max(18px, env(safe-area-inset-right)) auto max(18px, env(safe-area-inset-left)); display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; pointer-events: none; text-shadow: 0 2px 18px rgba(7,13,30,.58); }
.pitport-header > * { pointer-events: auto; }
.pitport-kicker { display: block; margin-bottom: 5px; color: var(--pit-sun); font-size: 11px; font-weight: 950; letter-spacing: .18em; }
.pitport-header h1 { margin: 0; font-size: clamp(28px, 4vw, 56px); line-height: .92; letter-spacing: -.04em; }
.pitport-header p { margin: 8px 0 0; color: rgba(255,242,206,.78); font-size: clamp(12px, 1.3vw, 15px); font-weight: 750; }
#pitport-back { min-height: 44px; display: inline-flex; align-items: center; padding: 0 16px; border: 1px solid rgba(255,255,255,.2); border-radius: 999px; color: #fff; background: rgba(14,24,48,.62); backdrop-filter: blur(14px); text-decoration: none; font-size: 13px; font-weight: 900; }
.embed-mode #pitport-back { display: none; }
.pitport-stalls { position: absolute; z-index: 6; top: max(18px, env(safe-area-inset-top)); left: 50%; width: min(470px, calc(100vw - 390px)); transform: translateX(-50%); color: #fff; }
.pitport-stall-summary { display: grid; grid-template-columns: 40px minmax(0, 1fr) 40px auto; gap: 6px; padding: 6px; border: 1px solid rgba(255,255,255,.17); border-radius: 18px; background: rgba(10,20,40,.82); box-shadow: 0 16px 44px rgba(2,8,23,.34); backdrop-filter: blur(18px); }
.pitport-stall-summary button, .pitport-stall-summary a { color: inherit; font: inherit; }
.pitport-stall-step { min-width: 40px; border: 0; border-radius: 12px; color: var(--pit-cream) !important; background: rgba(255,255,255,.07); cursor: pointer; font-size: 25px !important; }
.pitport-stall-step:disabled { opacity: .35; cursor: default; }
.pitport-stall-current { display: grid; grid-template-columns: 42px minmax(0,1fr) 16px; align-items: center; gap: 9px; min-width: 0; padding: 3px 6px 3px 3px; border: 0; border-radius: 12px; color: #fff; background: transparent; text-align: left; cursor: pointer; }
.pitport-stall-current > span:nth-child(2) { min-width: 0; }
.pitport-stall-current small, .pitport-stall-current strong, .pitport-stall-current em { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pitport-stall-current small { color: var(--pit-sun); font-size: 8px; font-weight: 950; letter-spacing: .14em; }
.pitport-stall-current strong { margin-top: 2px; font-size: 13px; }
.pitport-stall-current em { margin-top: 2px; color: rgba(255,255,255,.58); font-size: 9px; font-style: normal; font-weight: 800; }
.pitport-stall-current i { color: rgba(255,255,255,.6); font-style: normal; transition: transform .16s ease; }
.pitport-stall-current[aria-expanded="true"] i { transform: rotate(180deg); }
.pitport-stall-portrait { display: grid; width: 42px; height: 42px; place-items: center; overflow: hidden; border: 2px solid rgba(255,209,90,.62); border-radius: 11px; background: radial-gradient(circle at 50% 65%, rgba(99,216,228,.28), rgba(7,13,30,.72)); }
.pitport-stall-portrait img { width: 100%; height: 100%; object-fit: contain; }
.pitport-stall-portrait b { color: var(--pit-sun); font-size: 10px; letter-spacing: .08em; }
.pitport-stall-drive { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 13px; border-radius: 12px; color: var(--pit-ink) !important; background: var(--pit-sun); text-decoration: none; font-size: 11px !important; font-weight: 950 !important; }
.pitport-stall-drawer { margin-top: 7px; padding: 12px; border: 1px solid rgba(255,255,255,.16); border-radius: 18px; background: rgba(12,23,44,.96); box-shadow: 0 22px 60px rgba(0,0,0,.45); backdrop-filter: blur(20px); }
.pitport-stall-drawer label span { display: block; margin: 0 0 6px 2px; color: rgba(255,255,255,.64); font-size: 9px; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.pitport-stall-drawer input { width: 100%; min-height: 42px; padding: 0 13px; border: 1px solid rgba(255,255,255,.14); border-radius: 12px; outline: 0; color: #fff; background: rgba(255,255,255,.07); font: 800 12px/1 system-ui; }
.pitport-stall-drawer input:focus { border-color: #63d8e4; box-shadow: 0 0 0 3px rgba(99,216,228,.14); }
.pitport-stall-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 7px; max-height: min(310px, 42vh); margin-top: 9px; overflow: auto; }
.pitport-stall-card { position: relative; min-width: 0; padding: 6px; border: 1px solid rgba(255,255,255,.1); border-radius: 12px; color: #fff; background: rgba(255,255,255,.04); cursor: pointer; text-align: left; }
.pitport-stall-card img, .pitport-stall-card .pitport-stall-fallback { display: grid; width: 100%; aspect-ratio: 1.25; place-items: center; object-fit: contain; border-radius: 8px; background: radial-gradient(circle at 50% 65%, rgba(99,216,228,.2), rgba(7,13,30,.5)); }
.pitport-stall-card strong, .pitport-stall-card small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pitport-stall-card strong { margin-top: 6px; font-size: 10px; }
.pitport-stall-card small { margin-top: 2px; color: rgba(255,255,255,.52); font-size: 8px; font-weight: 800; }
.pitport-stall-card[aria-selected="true"] { border-color: var(--pit-sun); background: rgba(255,209,90,.12); box-shadow: 0 0 0 2px rgba(255,209,90,.14); }
.pitport-stall-card[aria-selected="true"]::after { content: "HOME"; position: absolute; top: 9px; right: 9px; padding: 3px 5px; border-radius: 999px; color: var(--pit-ink); background: var(--pit-sun); font-size: 7px; font-weight: 950; letter-spacing: .08em; }
.pitport-stall-drawer > small { display: block; margin-top: 8px; color: rgba(255,255,255,.5); font-size: 9px; font-weight: 800; text-align: center; }
.pitport-stalls.is-switching .pitport-stall-portrait { animation: pit-stall-pulse .8s ease-in-out infinite alternate; }
@keyframes pit-stall-pulse { to { border-color: #63d8e4; box-shadow: 0 0 18px rgba(99,216,228,.36); } }
.pitport-views { position: absolute; z-index: 4; left: max(18px, env(safe-area-inset-left)); bottom: max(18px, env(safe-area-inset-bottom)); display: flex; gap: 8px; padding: 6px; border: 1px solid rgba(255,255,255,.16); border-radius: 18px; background: rgba(13,23,43,.7); box-shadow: 0 14px 40px rgba(2,8,23,.26); backdrop-filter: blur(16px); }
.pitport-views button, .pitport-customize button { color: inherit; font: inherit; cursor: pointer; }
.pitport-views button, .pitport-customize button, .pitport-object-picker button { transition: transform .14s ease, border-color .14s ease, background-color .14s ease, box-shadow .14s ease; }
.pitport-views button:focus-visible, .pitport-customize button:focus-visible, .pitport-object-picker button:focus-visible, .pitport-stalls button:focus-visible, .pitport-stalls a:focus-visible, #pitport-back:focus-visible { outline: 3px solid #63d8e4; outline-offset: 3px; }
.pitport-views button { min-height: 44px; padding: 9px 13px; border: 0; border-radius: 12px; background: transparent; font-size: 12px; font-weight: 850; }
.pitport-views button span { color: var(--pit-sun); margin-right: 5px; font-size: 9px; }
.pitport-views button[aria-pressed="true"] { color: var(--pit-ink); background: var(--pit-cream); box-shadow: 0 4px 0 rgba(5,11,25,.2); }
.pitport-memory-notes { position: absolute; z-index: 4; right: max(18px, env(safe-area-inset-right)); top: 50%; width: min(300px, calc(100vw - 36px)); padding: 16px; transform: translateY(-50%); border: 1px solid rgba(255,255,255,.18); border-radius: 18px; color: #fff; background: rgba(13,23,43,.88); box-shadow: 0 18px 48px rgba(2,8,23,.34); backdrop-filter: blur(16px); }
.pitport-memory-notes[hidden] { display: none; }
.pitport-memory-notes > small { color: var(--pit-sun); font-size: 9px; font-weight: 950; letter-spacing: .14em; }
.pitport-memory-notes > strong { display: block; margin-top: 4px; font-size: 19px; }
.pitport-memory-notes ol { display: grid; gap: 7px; margin: 11px 0; padding: 0; list-style: none; }
.pitport-memory-notes li { padding: 9px 10px; border-left: 3px solid var(--pit-teal); border-radius: 0 10px 10px 0; background: rgba(255,255,255,.06); }
.pitport-memory-notes li strong, .pitport-memory-notes li span { display: block; }
.pitport-memory-notes li strong { font-size: 12px; }
.pitport-memory-notes li span { margin-top: 2px; color: rgba(255,255,255,.65); font-size: 10px; line-height: 1.3; }
.pitport-memory-notes > a { color: var(--pit-sun); font-size: 11px; font-weight: 900; }
.pitport-customize { position: absolute; z-index: 6; right: max(18px, env(safe-area-inset-right)); bottom: max(18px, env(safe-area-inset-bottom)); }
.pitport-customize-toggle { min-height: 48px; padding: 0 18px; border: 2px solid rgba(255,209,90,.65); border-radius: 999px; color: var(--pit-ink) !important; background: var(--pit-sun); box-shadow: 0 7px 0 #a85a32, 0 18px 34px rgba(2,8,23,.28); font-weight: 950 !important; }
.pitport-drawer { position: absolute; right: 0; bottom: 62px; width: min(470px, calc(100vw - 36px)); max-height: min(720px, calc(100vh - 112px)); padding: 18px; overflow: hidden; border: 2px solid rgba(255,255,255,.16); border-radius: 22px; background: rgba(19,31,55,.96); box-shadow: 0 24px 70px rgba(0,0,0,.48); backdrop-filter: blur(20px); }
.pitport-drawer-heading { display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px; }
.pitport-drawer-heading small, .pitport-drawer-heading strong { display: block; }
.pitport-drawer-heading small { color: var(--pit-sun); font-size: 9px; font-weight: 950; letter-spacing: .16em; }
.pitport-drawer-heading strong { margin-top: 3px; font-size: 22px; }
.pitport-drawer-heading [data-inventory-summary] { display: block; margin-top: 4px; color: rgba(255,255,255,.62); font-size: 11px; font-weight: 800; }
.pitport-drawer-heading button { width: 40px; height: 40px; border: 0; border-radius: 50%; color: #fff; background: rgba(255,255,255,.08); font-size: 24px; }
.pitport-inventory-tabs { display: grid; grid-template-columns: repeat(4, 1fr); gap: 5px; padding: 4px; border-radius: 12px; background: rgba(5,11,25,.38); }
.pitport-inventory-tabs button { min-height: 36px; border: 0; border-radius: 9px; color: rgba(255,255,255,.62); background: transparent; font-size: 11px; font-weight: 900; }
.pitport-inventory-tabs button[aria-pressed="true"] { color: var(--pit-ink); background: var(--pit-cream); }
.pitport-inventory-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; max-height: min(366px, 43vh); margin: 10px -4px 14px 0; padding-right: 4px; overflow: auto; scrollbar-color: rgba(255,209,90,.45) transparent; }
.pitport-inventory-card { position: relative; display: grid; grid-template-columns: 42px 1fr; gap: 9px; min-width: 0; padding: 10px; border: 1px solid rgba(255,255,255,.11); border-radius: 14px; background: rgba(255,255,255,.045); }
.pitport-inventory-card[data-state="placed"] { border-color: rgba(255,209,90,.5); background: linear-gradient(145deg, rgba(255,209,90,.12), rgba(255,255,255,.035)); }
.pitport-inventory-card[data-selected="true"] { border-color: var(--pit-sun); background: linear-gradient(145deg, rgba(255,209,90,.2), rgba(27,182,173,.09)); box-shadow: 0 0 0 2px rgba(255,209,90,.2), 0 10px 24px rgba(0,0,0,.2); }
.pitport-inventory-card[data-hovered="true"] { border-color: #63d8e4; box-shadow: 0 0 0 2px rgba(99,216,228,.14); }
.pitport-inventory-card[data-state="locked"] { opacity: .58; }
.pitport-inventory-mark { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 12px; color: var(--pit-ink); background: linear-gradient(145deg, var(--pit-sun), var(--pit-coral)); box-shadow: inset 0 0 0 2px rgba(255,255,255,.25); font-size: 11px; font-weight: 950; letter-spacing: .04em; }
.pitport-inventory-thumbnail { width: 56px; height: 46px; margin-left: -3px; object-fit: contain; border-radius: 10px; background: radial-gradient(circle at 50% 65%, rgba(255,255,255,.16), rgba(7,13,30,.3) 70%); }
.pitport-inventory-card:has(.pitport-inventory-thumbnail) { grid-template-columns: 56px 1fr; }
.pitport-inventory-card[data-source="road"] .pitport-inventory-mark { background: linear-gradient(145deg, #65d5c9, #2f8e9b); }
.pitport-inventory-card[data-source="shop"] .pitport-inventory-mark { background: linear-gradient(145deg, #ffd15a, #d58b39); }
.pitport-inventory-card[data-source="giveaway"] .pitport-inventory-mark { background: linear-gradient(145deg, #ff8fb8, #8868e8); }
.pitport-inventory-copy { min-width: 0; }
.pitport-inventory-copy strong, .pitport-inventory-copy small { display: block; }
.pitport-inventory-copy strong { overflow: hidden; color: #fff; font-size: 12px; line-height: 1.15; text-overflow: ellipsis; white-space: nowrap; }
.pitport-inventory-copy small { margin-top: 3px; color: rgba(255,255,255,.56); font-size: 9px; font-weight: 800; line-height: 1.2; }
.pitport-inventory-action { grid-column: 1 / -1; min-height: 32px; border: 1px solid rgba(255,255,255,.13); border-radius: 9px; color: #fff; background: rgba(255,255,255,.07); font-size: 10px !important; font-weight: 950 !important; }
.pitport-inventory-action[data-action="store"] { border-color: rgba(255,209,90,.46); color: var(--pit-sun); }
.pitport-inventory-action[data-action="claim"] { color: var(--pit-ink); background: var(--pit-sun); }
.pitport-inventory-action:disabled { cursor: default; opacity: .68; }
.pitport-inventory-action:not(:disabled):hover { border-color: #63d8e4; background: rgba(99,216,228,.12); transform: translateY(-1px); }
.pitport-inventory-action:not(:disabled):active { transform: translateY(1px) scale(.99); }
.pitport-room-style { padding-top: 12px; border-top: 1px solid rgba(255,255,255,.1); }
.pitport-room-style > small { display: block; margin-bottom: 8px; color: rgba(255,255,255,.55); font-size: 9px; font-weight: 950; letter-spacing: .14em; }
.pitport-object-picker { position: absolute; z-index: 7; left: 50%; bottom: 88px; width: min(330px, calc(100vw - 28px)); padding: 14px; transform: translateX(-50%); border: 1px solid rgba(255,255,255,.18); border-radius: 20px; color: #fff; background: rgba(15,26,48,.96); box-shadow: 0 22px 70px rgba(0,0,0,.5); backdrop-filter: blur(18px); text-align: center; }
.pitport-object-picker-heading { display: flex; align-items: center; justify-content: space-between; }
.pitport-object-picker-heading small { color: var(--pit-sun); font-size: 9px; font-weight: 950; letter-spacing: .14em; }
.pitport-object-picker-heading button { width: 34px; height: 34px; border: 0; border-radius: 50%; color: #fff; background: rgba(255,255,255,.08); font-size: 20px; }
.pitport-picker-stage { display: grid; grid-template-columns: 40px 1fr 40px; align-items: center; gap: 8px; min-height: 116px; margin-top: 4px; border-radius: 14px; background: radial-gradient(circle at 50% 70%, rgba(73,183,178,.25), rgba(5,11,25,.35) 68%); }
.pitport-picker-stage button { height: 42px; border: 1px solid rgba(255,255,255,.14); border-radius: 12px; color: #fff; background: rgba(255,255,255,.06); font-size: 28px; }
.pitport-picker-stage img { width: 100%; height: 104px; object-fit: contain; }
.pitport-object-picker > strong, .pitport-object-picker > span { display: block; }
.pitport-object-picker > strong { margin-top: 10px; font-size: 17px; }
.pitport-object-picker > span { margin-top: 3px; color: rgba(255,255,255,.6); font-size: 10px; font-weight: 800; }
.pitport-picker-options { display: flex; justify-content: center; gap: 6px; margin: 11px 0; }
.pitport-picker-options button { width: 42px; height: 34px; border: 1px solid rgba(255,255,255,.15); border-radius: 9px; color: rgba(255,255,255,.7); background: rgba(255,255,255,.05); font-size: 9px; font-weight: 950; }
.pitport-picker-options button[aria-pressed="true"] { border-color: var(--pit-sun); color: var(--pit-ink); background: var(--pit-sun); }
.pitport-picker-action { width: 100%; min-height: 42px; border: 1px solid rgba(255,209,90,.65); border-radius: 11px; color: var(--pit-ink); background: var(--pit-sun); font-weight: 950; }
.pitport-picker-action[data-action="store"] { color: var(--pit-sun); background: rgba(255,209,90,.08); }
.pitport-picker-action:disabled { border-color: rgba(255,255,255,.12); color: rgba(255,255,255,.5); background: rgba(255,255,255,.05); }
.pitport-picker-hint { display: block; margin-top: 8px; color: rgba(255,255,255,.48); font-size: 9px; }
.pitport-touch-drag-ghost { position: fixed; z-index: 30; width: 76px; height: 58px; transform: translate(-50%, -50%) scale(1.08); pointer-events: none; opacity: .9; filter: drop-shadow(0 14px 18px rgba(0,0,0,.45)); }
.pitport-object-tip { position: fixed; z-index: 8; min-width: 150px; max-width: 230px; padding: 9px 11px; transform: translate(14px, 14px); border: 1px solid rgba(99,216,228,.55); border-radius: 12px; color: #fff; background: rgba(11,21,42,.92); box-shadow: 0 12px 30px rgba(0,0,0,.35); backdrop-filter: blur(12px); pointer-events: none; }
.pitport-object-tip strong, .pitport-object-tip span { display: block; }
.pitport-object-tip strong { font-size: 12px; }
.pitport-object-tip span { margin-top: 2px; color: rgba(255,255,255,.62); font-size: 9px; font-weight: 800; }
.pitport-toast { position: absolute; z-index: 9; top: max(20px, env(safe-area-inset-top)); left: 50%; padding: 10px 16px; transform: translateX(-50%); border: 1px solid rgba(255,209,90,.5); border-radius: 999px; color: var(--pit-cream); background: rgba(14,24,48,.94); box-shadow: 0 14px 34px rgba(0,0,0,.32); font-size: 12px; font-weight: 900; animation: pit-toast-in .22s ease both; }
@keyframes pit-toast-in { from { opacity: 0; transform: translate(-50%, -8px); } }
@media (hover: hover) {
    .pitport-inventory-card:not([data-state="locked"]):hover { border-color: rgba(99,216,228,.72); background: linear-gradient(145deg, rgba(99,216,228,.12), rgba(255,255,255,.04)); transform: translateY(-1px); }
    .pitport-picker-stage button:hover, .pitport-picker-options button:hover { border-color: #63d8e4; background: rgba(99,216,228,.12); }
    .pitport-stall-current:hover, .pitport-stall-step:not(:disabled):hover, .pitport-stall-card:hover { background: rgba(99,216,228,.12); }
    .pitport-stall-drive:hover { filter: brightness(1.07); transform: translateY(-1px); }
}
.pitport-themes { display: grid; grid-template-columns: repeat(3, 1fr); gap: 7px; }
.pitport-themes button { min-height: 58px; border: 1px solid rgba(255,255,255,.13); border-radius: 12px; color: rgba(255,255,255,.75); background: rgba(255,255,255,.05); font-size: 11px; font-weight: 850; }
.pitport-themes button[aria-pressed="true"] { border-color: var(--pit-sun); color: #fff; background: rgba(255,209,90,.12); }
.pitport-themes i { display: block; width: 24px; height: 10px; margin: 0 auto 7px; border-radius: 999px; background: linear-gradient(90deg, #17b6ad 50%, #f06d62 50%); }
.pitport-themes [data-theme="cosmic"] i { background: linear-gradient(90deg, #7255dc 50%, #43d9e6 50%); }
.pitport-themes [data-theme="garden"] i { background: linear-gradient(90deg, #4d9c63 50%, #f2b75d 50%); }
.pitport-reset { width: 100%; min-height: 38px; margin-top: 9px; border: 1px solid rgba(255,255,255,.12); border-radius: 11px; color: rgba(255,255,255,.72) !important; background: rgba(255,255,255,.04); font-size: 11px !important; font-weight: 850 !important; }
.pitport-help { position: absolute; left: 50%; bottom: max(26px, env(safe-area-inset-bottom)); z-index: 3; transform: translateX(-50%); color: rgba(255,255,255,.58); font-size: 11px; font-weight: 750; pointer-events: none; }
.pitport-loading { position: absolute; z-index: 10; inset: 0; display: grid; place-content: center; justify-items: center; gap: 7px; background: #152038; transition: opacity .55s ease, visibility .55s; }
.pitport-loading.is-ready { opacity: 0; visibility: hidden; pointer-events: none; }
.pitport-loading span { width: 54px; height: 54px; border: 6px solid rgba(255,255,255,.14); border-top-color: var(--pit-sun); border-radius: 50%; animation: pit-spin .9s linear infinite; }
.pitport-loading strong { margin-top: 10px; font-size: 20px; }
.pitport-loading small { color: rgba(255,255,255,.6); }
@keyframes pit-spin { to { transform: rotate(360deg); } }
@media (max-width: 700px) {
    .pitport-header { top: max(12px, env(safe-area-inset-top)); }
    .pitport-header h1 { font-size: 31px; }
    .pitport-header p { max-width: 210px; }
    #pitport-back { min-height: 40px; padding: 0 12px; font-size: 11px; }
    .pitport-stalls { top: max(94px, calc(env(safe-area-inset-top) + 82px)); width: calc(100vw - 24px); }
    .pitport-stall-summary { grid-template-columns: 36px minmax(0, 1fr) 36px 54px; gap: 4px; padding: 4px; border-radius: 15px; }
    .pitport-stall-step { min-width: 36px; }
    .pitport-stall-current { grid-template-columns: 36px minmax(0,1fr) 12px; gap: 6px; }
    .pitport-stall-portrait { width: 36px; height: 36px; }
    .pitport-stall-drive { min-height: 40px; padding: 0 8px; font-size: 9px !important; }
    .pitport-stall-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); max-height: min(260px, 35vh); }
    .pitport-views { right: max(12px, env(safe-area-inset-right)); left: max(12px, env(safe-area-inset-left)); bottom: max(78px, calc(env(safe-area-inset-bottom) + 68px)); display: grid; grid-template-columns: repeat(4, 1fr); gap: 4px; }
    .pitport-views button { min-width: 0; padding: 7px 4px; font-size: 10px; }
    .pitport-views button span { display: none; }
    .pitport-memory-notes { top: auto; right: 12px; bottom: max(136px, calc(env(safe-area-inset-bottom) + 126px)); left: 12px; width: auto; padding: 12px; transform: none; }
    .pitport-memory-notes ol { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 5px; margin: 8px 0; }
    .pitport-memory-notes li { min-width: 0; padding: 7px; }
    .pitport-memory-notes li span { display: none; }
    .pitport-customize { right: max(12px, env(safe-area-inset-right)); bottom: max(14px, env(safe-area-inset-bottom)); }
    .pitport-drawer { position: fixed; right: max(8px, env(safe-area-inset-right)); bottom: max(74px, calc(env(safe-area-inset-bottom) + 64px)); left: max(8px, env(safe-area-inset-left)); width: auto; max-height: min(650px, calc(100dvh - 116px)); padding: 14px; border-radius: 20px; }
    .pitport-inventory-grid { grid-template-columns: 1fr; max-height: min(320px, 37dvh); }
    .pitport-drawer-heading { margin-bottom: 12px; }
    .pitport-drawer-heading strong { font-size: 19px; }
    .pitport-room-style { display: grid; grid-template-columns: auto 1fr; gap: 10px; align-items: center; }
    .pitport-room-style > small { margin: 0; }
    .pitport-themes button { min-height: 48px; }
    .pitport-object-picker { bottom: max(150px, calc(env(safe-area-inset-bottom) + 142px)); width: min(350px, calc(100vw - 24px)); }
    .pitport-object-tip { right: 12px; bottom: 148px; left: 12px !important; top: auto !important; max-width: none; transform: none; text-align: center; }
    .pitport-toast { top: auto; bottom: max(148px, calc(env(safe-area-inset-bottom) + 140px)); width: max-content; max-width: calc(100vw - 30px); text-align: center; }
    .pitport-help { display: none; }
}
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; }
}
