.characterHeader{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;display:grid}.characterHeader .backTile{border:3px solid var(--teal-soft);width:44px;height:44px;color:var(--text-strong);font-family:var(--font-display);cursor:pointer;letter-spacing:0;text-transform:none;box-shadow:0 4px 0 var(--teal-deep);background:#fff;border-radius:50%;place-items:center;padding:0;font-size:18px;font-weight:700;line-height:1;display:grid}.characterHeader .backTile:hover:not(:disabled){background:#fffaf0}.characterHeader .titleStack{gap:2px;min-width:0;display:grid}.characterHeader .titleStack .eyebrow{letter-spacing:.18em;margin:0;font-size:10px}.characterHeader h1{font-family:var(--font-display);color:var(--text-strong);margin:0;font-size:22px;font-weight:600;line-height:1.18}.publishedToggle{border:2px solid var(--teal-soft);border-radius:var(--radius-pill);background:var(--bg-cream);cursor:pointer;color:var(--text-strong);font-family:var(--font-body);letter-spacing:.06em;text-transform:uppercase;box-shadow:none;align-items:center;gap:10px;padding:8px 14px;font-size:11px;font-weight:700;display:inline-flex}.publishedToggle:hover:not(:disabled){background:#fff8ec}.publishedToggle .switchTrack{background:#d9cab9;border-radius:999px;flex-shrink:0;width:36px;height:22px;transition:background .12s;position:relative}.publishedToggle[aria-pressed=true] .switchTrack{background:var(--teal)}.publishedToggle .switchThumb{background:var(--bg-cream);border-radius:50%;width:16px;height:16px;transition:left .12s;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #00000024}.publishedToggle[aria-pressed=true] .switchThumb{left:17px}.detailHero .heroTile{width:168px;height:168px;box-shadow:0 6px 0 var(--orange-shadow);background:linear-gradient(#ffb892 0%,#f08660 100%);border-radius:28px;place-items:center;display:grid;position:relative;overflow:hidden}.detailHero .heroTile .previewImage,.detailHero .heroTile .previewPlaceholder{object-fit:contain;color:#fffdf7;background:0 0;border-radius:0;width:100%;height:100%;min-height:0}.detailHero .heroBadge{font-family:var(--font-body);letter-spacing:.04em;color:var(--text-strong);background:#fffdf7;border-radius:999px;align-items:center;gap:4px;padding:4px 10px;font-size:10px;font-weight:700;display:inline-flex;position:absolute;top:10px;right:10px}.detailHero .heroBadge .star{color:var(--yellow);font-size:11px;line-height:1}.detailHero .heroFallback{font-family:var(--font-body);color:var(--text-muted);margin:0;font-size:12px;font-weight:500}.detailHero .heroFallback strong{color:var(--text-strong);font-family:var(--font-display);font-weight:700}.detailHero form{box-shadow:none;background:0 0;border:0;gap:14px;padding:0;display:grid}.detailHero form label{font-family:var(--font-body);letter-spacing:.18em;color:var(--text-eyebrow);text-transform:uppercase;gap:6px;font-size:10px;font-weight:700;display:grid}.detailHero form .nameField{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;align-items:center;padding:0 14px;display:flex}.detailHero form .nameField input{font-family:var(--font-display);color:var(--text-strong);letter-spacing:0;text-transform:none;background:0 0;border:0;flex-grow:1;padding:12px 0;font-size:20px;font-weight:600}.detailHero form .nameField input:focus{box-shadow:none;outline:none}.detailHero form .nameField .editIcon{color:var(--text-eyebrow);flex-shrink:0;margin-left:8px}.detailHero form .slugField{background:var(--bg-page);border:1px solid var(--border);border-radius:14px;align-items:center;gap:8px;padding:0 14px;display:flex}.detailHero form .slugField input{color:var(--text-muted);letter-spacing:0;text-transform:none;background:0 0;border:0;flex-grow:1;padding:12px 0;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;font-weight:500}.detailHero form .slugField input:focus{box-shadow:none;color:var(--text-strong);outline:none}.detailHero form .slugField .slugHint{font-family:var(--font-body);color:var(--text-eyebrow);text-transform:lowercase;letter-spacing:0;flex-shrink:0;font-size:11px;font-weight:600}.detailHero form .nameField input,.detailHero form .slugField input{text-transform:none;letter-spacing:0}.detailHero form .saveRow{justify-content:flex-end;display:flex}.stickersSection,.puzzleSection,.gamesSection{gap:14px;display:grid}.stickersSection>header,.puzzleSection>header,.gamesSection>header{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;display:grid}.stickersSection>header .titleStack,.puzzleSection>header .titleStack,.gamesSection>header .titleStack{gap:4px;display:grid}.stickersSection>header h2,.puzzleSection>header h2,.gamesSection>header h2{font-family:var(--font-display);color:var(--text-strong);font-size:20px;font-weight:600;line-height:1.2}.stickersSection>header .caption{font-family:var(--font-body);color:var(--text-muted);text-align:right;margin:0;font-size:12px;font-weight:500}.stickerGrid{flex-wrap:wrap;gap:14px;display:flex}.stickerCard{background:var(--bg-card);border:1px solid var(--border);width:142px;box-shadow:none;border-radius:18px;flex-direction:column;flex-shrink:0;gap:10px;padding:12px;display:flex}.stickerCard.primary{border:2px solid var(--orange);box-shadow:var(--shadow-puff-orange)}.stickerCard.clickable{cursor:pointer;transition:transform 80ms,border-color .12s}.stickerCard.clickable:hover{border-color:var(--orange-soft)}.stickerCard.clickable:focus-visible{border-color:var(--orange);outline:none;box-shadow:0 0 0 3px #ff8b5c33}.stickerCard .stickerThumb{background:var(--bg-page);border-radius:12px;place-items:center;height:124px;display:grid;overflow:hidden}.stickerCard .stickerThumb .previewImage,.stickerCard .stickerThumb .previewPlaceholder{object-fit:contain;background:0 0;border-radius:0;width:100%;height:100%;min-height:0}.stickerCard .stickerFoot{font-family:var(--font-body);letter-spacing:.04em;color:var(--text-strong);align-items:center;gap:6px;font-size:11px;font-weight:700;display:flex}.stickerCard.primary .stickerFoot .star{color:var(--yellow);line-height:1}.stickerCard .stickerHint{font-family:var(--font-body);color:var(--text-muted);margin:0;font-size:11px;font-weight:600}.stickerCard .stickerMeta{font-family:var(--font-body);color:var(--text-muted);word-break:break-word;margin:0;font-size:11px;font-weight:500}.stickerCard button.makePrimary{letter-spacing:.04em;border-radius:var(--radius-md);margin-top:auto;padding:8px 12px;font-size:11px}.stickerCard button.retry{letter-spacing:.04em;border-radius:var(--radius-md);padding:8px 12px;font-size:11px}.uploadTile{background:var(--bg-cream);border:2px dashed var(--orange-shadow);text-align:center;cursor:pointer;width:142px;min-height:168px;font-family:var(--font-body);letter-spacing:0;text-transform:none;color:var(--text-strong);border-radius:18px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:10px;padding:12px;font-size:13px;font-weight:500;display:flex}.uploadTile:hover{background:#fff8ec}.uploadTile .plus{background:var(--orange-soft);width:48px;height:48px;color:var(--orange-shadow);font-family:var(--font-display);border-radius:50%;place-items:center;font-size:24px;font-weight:700;line-height:1;display:grid}.uploadTile .label{font-family:var(--font-display);color:var(--text-strong);font-size:13px;font-weight:600}.uploadTile .hint{font-family:var(--font-body);color:var(--text-muted);font-size:10px;font-weight:500}.uploadTile input[type=file]{display:none}.puzzleCard{background:var(--bg-card);border:1px solid var(--border);border-radius:18px;grid-template-columns:132px minmax(0,1fr);align-items:center;gap:20px;padding:18px;display:grid}.puzzleCard .puzzleThumb{background:var(--yellow);border-radius:14px;place-items:center;width:132px;height:132px;display:grid;overflow:hidden}.puzzleCard .puzzleThumb .previewImage,.puzzleCard .puzzleThumb .previewPlaceholder{object-fit:cover;background:0 0;border-radius:0;width:100%;height:100%;min-height:0}.puzzleCard .puzzleMeta{gap:8px;min-width:0;display:grid}.puzzleCard .puzzleMeta h3{font-family:var(--font-display);color:var(--text-strong);word-break:break-word;margin:0;font-size:16px;font-weight:600}.puzzleCard .puzzleMeta p{font-family:var(--font-body);color:var(--text-muted);margin:0;font-size:12px;font-weight:500}.puzzleCard .puzzleActions{gap:8px;padding-top:6px;display:flex}.puzzleCard .puzzleActions button{background:var(--bg-cream);color:var(--text-strong);border:2px solid var(--border);font-family:var(--font-body);letter-spacing:.04em;text-transform:uppercase;box-shadow:none;border-radius:12px;align-items:center;gap:8px;padding:8px 14px;font-size:11px;font-weight:700;display:inline-flex}.puzzleCard .puzzleActions button:hover:not(:disabled){background:#fff8ec}.puzzleCard .puzzleActions button.remove{color:#9b3d32}.gameChips{flex-wrap:wrap;gap:10px;display:flex}.gameChip{border-radius:var(--radius-pill);font-family:var(--font-display);color:var(--text-strong);align-items:center;gap:10px;padding:10px 14px 10px 10px;font-size:13px;font-weight:600;display:inline-flex}.gameChip .dot{width:26px;height:26px;font-family:var(--font-display);color:var(--bg-cream);border-radius:50%;flex-shrink:0;place-items:center;font-size:12px;font-weight:700;display:grid}.gameChip.match{background:var(--teal-soft)}.gameChip.match .dot{background:var(--teal)}.gameChip.puzzle{background:#fff3d0}.gameChip.puzzle .dot{background:var(--yellow);color:var(--text-strong)}.gameChip.toss{background:var(--orange-soft)}.gameChip.toss .dot{background:var(--orange)}.gameChip.spot{background:#d6ebd9}.gameChip.spot .dot{background:var(--mint)}.dangerZone{background:var(--bg-cream);border:1px solid var(--border);border-radius:18px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:20px;display:grid}.dangerZone .copy{gap:4px;min-width:0;display:grid}.dangerZone .copy .eyebrow{color:#9b3d32;letter-spacing:.18em;margin:0;font-size:10px}.dangerZone .copy h3{font-family:var(--font-display);color:var(--text-strong);margin:0;font-size:15px;font-weight:600}.dangerZone .copy p{font-family:var(--font-body);color:var(--text-muted);margin:0;font-size:12px;font-weight:500}.dangerZone button{background:var(--bg-cream);color:#9b3d32;font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;border:2px solid #e8b2a8;border-radius:14px;padding:10px 16px;font-size:12px;font-weight:700;box-shadow:0 3px #9b3d32}.dangerZone button:hover:not(:disabled){background:#fff6f3}.dangerZone button:active:not(:disabled){transform:translateY(1px);box-shadow:0 1px #9b3d32}@media (width<=900px){.detailLayout{gap:22px}.characterHeader{align-items:center;gap:10px}.characterHeader .backTile{width:40px;height:40px;box-shadow:0 3px 0 var(--teal-deep);border-width:3px}.characterHeader .titleStack .eyebrow{letter-spacing:.18em;font-size:9px}.characterHeader h1{text-overflow:ellipsis;white-space:nowrap;font-size:16px;line-height:1.2;overflow:hidden}.characterHeader .publishedToggle{letter-spacing:.06em;gap:8px;padding:6px 10px;font-size:10px}.characterHeader .publishedToggle span:first-child{font-size:10px}.characterHeader .publishedToggle .switchTrack{width:32px;height:20px}.characterHeader .publishedToggle .switchThumb{width:14px;height:14px}.characterHeader .publishedToggle[aria-pressed=true] .switchThumb{left:15px}.detailHero{grid-template-columns:1fr;justify-items:center;gap:16px}.detailHero .heroTile{width:188px;height:188px;box-shadow:0 6px 0 var(--orange-shadow);border-radius:24px;justify-self:center}.detailHero .heroBadge{padding:3px 8px;font-size:9px;top:8px;right:8px}.detailHero form{gap:12px;width:100%}.detailHero form .nameField input{padding:10px 0;font-size:18px}.detailHero form .slugField input{padding:10px 0;font-size:13px}.detailHero form .saveRow{justify-content:stretch}.detailHero form .saveRow button[type=submit]{width:100%}.stickersSection>header,.puzzleSection>header,.gamesSection>header{grid-template-columns:minmax(0,1fr);align-items:start}.stickersSection>header h2,.puzzleSection>header h2,.gamesSection>header h2{font-size:16px}.stickersSection>header .caption{text-align:left}.stickerGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.stickerCard,.uploadTile{width:auto;min-width:0}.stickerCard{border-radius:16px;gap:8px;padding:10px}.stickerCard .stickerThumb{border-radius:10px;height:88px}.stickerCard .stickerFoot,.stickerCard .stickerHint{font-size:10px}.uploadTile{border-radius:16px;gap:8px;min-height:0;padding:12px 8px}.uploadTile .plus{width:40px;height:40px;font-size:22px}.uploadTile .label{font-size:11px}.uploadTile .hint{font-size:9px}.puzzleCard{grid-row-gap:4px;border-radius:16px;grid-template-columns:90px minmax(0,1fr);align-items:start;column-gap:14px;padding:14px}.puzzleCard .puzzleThumb{border-radius:12px;grid-row:span 3;align-self:start;width:90px;height:90px}.puzzleCard .puzzleMeta{display:contents}.puzzleCard .puzzleMeta h3{grid-column:2;font-size:14px}.puzzleCard .puzzleMeta p{grid-column:2;font-size:11px}.puzzleCard .puzzleActions{grid-column:1/-1;gap:8px;padding-top:10px}.puzzleCard .puzzleActions button{flex:1 1 0;justify-content:center;padding:11px 8px;font-size:10px}.gameChips{gap:8px}.gameChip{gap:8px;padding:8px 14px 8px 8px;font-size:12px}.gameChip .dot{width:22px;height:22px}.dangerZone{border-radius:16px;grid-template-columns:1fr;gap:10px;padding:16px 18px}.dangerZone button{width:100%;padding:12px}}@media (width<=380px){.characterHeader{grid-template-columns:auto minmax(0,1fr)}.characterHeader .publishedToggle{grid-column:1/-1;justify-self:start}}.photosIntro{gap:4px;margin:-6px 0 22px;display:grid}.photosIntro .eyebrow{margin:0}.photosIntro .subtitle{font-family:var(--font-body);color:var(--text-muted);margin:0;font-size:15px;font-weight:500;line-height:22px}.photosToolbar{justify-content:space-between;align-items:center}.photosSegmented{background:var(--bg-cream);gap:6px;padding:6px}.photosSegmented button{font-family:var(--font-body);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);align-items:center;gap:6px;padding:8px 14px;font-size:11px;font-weight:700;display:inline-flex}.photosSegmented button .segmentedLabel{font-weight:700}.photosSegmented button .segmentedCount{opacity:.65;font-weight:700}.photosSegmented button.active{background:var(--orange-soft);color:var(--text-strong)}.photosSegmented button.active .segmentedCount{opacity:.85}.hiddenFileInput{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.uploadCta{border-radius:var(--radius-xl);background:var(--bg-cream);color:var(--text-strong);border:3px solid var(--orange-soft);box-shadow:0 4px 0 var(--orange-shadow);font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:10px;padding:14px 22px;font-size:13px;font-weight:700;display:inline-flex}.uploadCta:hover:not(:disabled){background:#fff8ec}.uploadCta:active:not(:disabled){box-shadow:0 2px 0 var(--orange-shadow);transform:translateY(1px)}.uploadCtaIcon{width:18px;height:18px;color:var(--orange-deep);border-radius:50%;place-items:center;font-size:13px;font-weight:800;line-height:1;display:inline-grid}.photoCard{border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--bg-card);box-shadow:var(--shadow-soft);grid-template-rows:260px auto;gap:0;padding:0;display:grid;overflow:hidden}.photoPreview{width:100%;height:100%;display:grid;position:relative;overflow:hidden}.photoPreview .previewImage,.photoPreview .previewPlaceholder{object-fit:cover;border-radius:0;grid-area:1/1;width:100%;height:100%;min-height:0}.photoCardBody{gap:8px;padding:16px 18px 18px;display:grid}.photoCardTitle{font-family:var(--font-display);color:var(--text-strong);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:15px;font-weight:600;line-height:18px;overflow:hidden}.photoCardMeta{font-family:var(--font-body);color:var(--text-muted);letter-spacing:.02em;margin:-2px 0 4px;font-size:11px;font-weight:600}.whoEyebrow{font-family:var(--font-body);color:var(--text-eyebrow);letter-spacing:.18em;text-transform:uppercase;margin-top:2px;font-size:9px;font-weight:700;line-height:1.2}.statusPill{border-radius:var(--radius-pill);font-family:var(--font-body);letter-spacing:.06em;text-transform:uppercase;pointer-events:none;background:#fffdf7f0;align-items:center;gap:5px;padding:5px 10px;font-size:10px;font-weight:700;display:inline-flex;position:absolute;top:10px;left:10px;box-shadow:0 1px 2px #2d262014}.statusPill:before{content:"";opacity:.95;background:currentColor;border-radius:50%;width:6px;height:6px}.statusPill.live{color:var(--teal-deep)}.statusPill.draft{color:var(--status-draft-fg)}.statusPill.hidden{color:var(--text-muted)}.photoCard .chips{margin-top:4px}.tagChip{border-radius:var(--radius-pill);font-family:var(--font-body);color:#fffdf7;background:var(--teal);align-items:center;gap:6px;padding:4px 10px 4px 4px;font-size:11px;font-weight:600;line-height:14px;display:inline-flex}.tagChip .tagChipInitial{width:18px;height:18px;color:var(--text-strong);font-family:var(--font-display);background:#fffdf7;border-radius:50%;place-items:center;font-size:10px;font-weight:700;line-height:1;display:inline-grid}.tagChip.palette-1{background:var(--teal)}.tagChip.palette-1 .tagChipInitial{color:var(--teal-deep)}.tagChip.palette-2{background:var(--orange)}.tagChip.palette-2 .tagChipInitial{color:var(--orange-deep)}.tagChip.palette-3{background:#b58a4d}.tagChip.palette-3 .tagChipInitial{color:#7a5a1e}.tagChip.palette-4{background:#8e7ed3}.tagChip.palette-4 .tagChipInitial{color:#4f3d8a}.tagChip.palette-5{background:var(--mint)}.tagChip.palette-5 .tagChipInitial{color:#3a6b30}.tagChip.palette-6{background:#d56ea1}.tagChip.palette-6 .tagChipInitial{color:#92335a}.addTagChip{border-radius:var(--radius-pill);background:var(--bg-cream);color:var(--text-eyebrow);border:1.5px dashed var(--text-eyebrow);font-family:var(--font-body);letter-spacing:0;text-transform:none;box-shadow:none;cursor:pointer;align-items:center;padding:4px 10px;font-size:11px;font-weight:600;line-height:14px;display:inline-flex}.addTagChip:hover:not(:disabled){color:var(--text-strong);background:#fff8ec}.tagPicker{gap:8px;margin-top:8px;display:flex}.tagPicker select{flex:1;padding:8px 10px;font-size:13px}.tagPicker .tagPickerAdd{flex-shrink:0;padding:8px 14px;font-size:12px}.retryBtn{justify-self:start;margin-top:6px}.uploadFab{display:none}@media (width<=900px){.photosIntro{margin:0 0 14px}.photosIntro .subtitle{font-size:13px;line-height:18px}.photosToolbar{box-shadow:none;background:0 0;border:0;margin:0 0 14px;padding:0;display:block}.photosToolbar .uploadCta{display:none}.photosSegmented{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;gap:4px;max-width:100%;padding:4px;display:inline-flex;overflow-x:auto}.photosSegmented::-webkit-scrollbar{display:none}.photosSegmented button{flex-shrink:0;padding:7px 14px;font-size:11px}.uploadFab{z-index:5;background:var(--orange);color:#fffdf7;width:44px;height:44px;box-shadow:0 3px 0 var(--orange-shadow);cursor:pointer;border:0;border-radius:14px;place-items:center;display:grid;position:fixed;top:90px;right:20px}.uploadFab:hover:not(:disabled){background:var(--orange);filter:brightness(1.04)}.uploadFab:active:not(:disabled){box-shadow:0 1px 0 var(--orange-shadow);transform:translateY(1px)}.photoCard{border-radius:18px;grid-template-rows:none;grid-template-columns:100px minmax(0,1fr);align-items:stretch;gap:14px;padding:12px}.photoPreview{border-radius:14px;width:100px;height:100px;overflow:hidden}.photoPreview .previewImage,.photoPreview .previewPlaceholder{border-radius:14px}.photoPreview .statusPill{letter-spacing:.04em;padding:3px 7px;font-size:9px;top:6px;left:6px}.photoPreview .statusPill:before{width:5px;height:5px}.photoCardBody{gap:6px;min-width:0;padding:0}.photoCardTitle{font-size:13px;line-height:16px}.photoCardMeta{margin:0;font-size:10px}.whoEyebrow{margin:0;font-size:9px}.photoCard .chips{gap:4px;margin-top:2px}.tagChip{padding:3px 8px 3px 3px;font-size:10px;line-height:12px}.tagChip .tagChipInitial{width:14px;height:14px;font-size:9px}.addTagChip{padding:3px 8px;font-size:10px;line-height:12px}.tagPicker{flex-wrap:wrap}.tagPicker select{flex:100%;min-width:0}}.rosterView{gap:22px}.rosterSubtitle{color:var(--text-muted);font-family:var(--font-body);margin:-10px 0 4px;font-size:15px;font-weight:500;line-height:1.45}.rosterView .cardsGrid{grid-template-columns:repeat(auto-fill,minmax(244px,1fr));align-items:start;gap:22px}.personCard{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-soft);flex-direction:column;gap:0;padding:20px;transition:transform .14s,box-shadow .14s;display:flex}.personCard:hover{transform:translateY(-2px);box-shadow:0 1px 2px #2d26200f,0 14px 26px #3d2b1f1a}.personCardHeader{justify-content:space-between;align-items:center;gap:8px;padding-bottom:14px;display:flex}.personCardHeader .eyebrow{letter-spacing:.18em;margin:0;font-size:10px}.personCard .previewWrap{aspect-ratio:1;background:var(--bg-sand);border-radius:16px;width:100%;position:relative;overflow:hidden}.personCard .previewWrap>.previewImage,.personCard .previewWrap>.previewPlaceholder{border-radius:0;width:100%;height:100%;min-height:0}.personCard .previewImage{object-fit:cover}.personCard .previewPlaceholder{background:var(--bg-sand);color:var(--text-muted);font-family:var(--font-display);place-items:center;font-size:13px;font-weight:600;display:grid}.stickerChip{color:var(--text-strong);border-radius:var(--radius-pill);font-family:var(--font-body);box-shadow:0 2px 0 var(--border);background:#fffdf7;align-items:center;gap:6px;padding:5px 10px;font-size:11px;font-weight:700;line-height:14px;display:inline-flex;position:absolute;bottom:10px;right:10px}.stickerChip svg{color:var(--text-strong);opacity:.7;flex-shrink:0}.personCardBody{flex-direction:column;gap:4px;padding:16px 0 14px;display:flex}.personCardBody h3{font-family:var(--font-display);color:var(--text-strong);margin:0;font-size:22px;font-weight:600;line-height:26px}.personCardBody p{font-family:var(--font-body);color:var(--text-muted);margin:0;font-size:12px;font-weight:500;line-height:16px}.openButton{background:var(--bg-cream);width:100%;color:var(--text-strong);border:2px solid var(--orange-soft);font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;box-shadow:0 3px 0 var(--orange-shadow);cursor:pointer;border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-size:12px;font-weight:700;transition:transform 80ms,box-shadow .12s,background .12s;display:inline-flex}.openButton:hover:not(:disabled){background:#fff8ec}.openButton:active:not(:disabled){box-shadow:0 1px 0 var(--orange-shadow);transform:translateY(1px)}.openButton svg{color:var(--orange-deep)}.personCardHeader .statusPill{letter-spacing:.08em;padding:4px 10px;font-size:10px;font-weight:700;position:static}.personCardHeader .statusPill:before{width:6px;height:6px}.personCardHeader .statusPill.live{background:var(--teal-soft);color:var(--teal-deep)}.personCardHeader .statusPill.draft{background:var(--status-draft-bg);color:var(--status-draft-fg)}.personCardHeader .statusPill.hidden{background:var(--status-hidden-bg);color:var(--status-hidden-fg)}.addCard.placeholder{border:2px dashed var(--orange-shadow);border-radius:var(--radius-xl);background:var(--bg-cream);min-height:244px;color:var(--text-strong);text-align:center;cursor:pointer;box-shadow:none;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:40px 20px;transition:border-color .14s,background .14s,transform .14s;display:flex}.addCard.placeholder:hover{border-color:var(--orange);background:#fffaf0;transform:translateY(-2px)}.addCard.placeholder:active{transform:translateY(0)}.addCard.placeholder .addPlus{background:var(--orange);color:#fffdf7;width:64px;height:64px;box-shadow:0 4px 0 var(--orange-shadow);border-radius:50%;place-items:center;display:grid}.addCard.placeholder .addCardCopy{flex-direction:column;align-items:center;gap:4px;display:flex}.addCard.placeholder h3{font-family:var(--font-display);color:var(--text-strong);margin:0;font-size:18px;font-weight:600;line-height:22px}.addCard.placeholder p{max-width:220px;font-family:var(--font-body);color:var(--text-muted);margin:0;font-size:13px;font-weight:500;line-height:18px}.addCard.editing{border:2px dashed var(--orange-shadow);border-radius:var(--radius-xl);background:var(--bg-cream);min-height:244px;box-shadow:none;flex-direction:column;justify-content:center;padding:24px;display:flex}.addCard.editing form{flex-direction:column;gap:12px;width:100%;display:flex}.addCard.editing h3{font-family:var(--font-display);color:var(--text-strong);margin:0;font-size:18px;font-weight:600}.addCardActions{gap:8px;display:flex}.addCardActions button{flex:1;padding:10px 14px;font-size:12px}.rosterPublishBar{display:none}@media (width<=900px){.rosterView{gap:18px}.rosterSubtitle{margin:-8px 0 0;font-size:13px;line-height:1.4}.rosterView .cardsGrid{grid-template-columns:repeat(2,1fr);align-items:stretch;gap:14px}.personCard{cursor:pointer;border-radius:20px;padding:14px}.personCardHeader{gap:6px;padding-bottom:10px}.personCardHeader .eyebrow{font-size:9px;line-height:11px}.personCardHeader .statusPill{gap:4px;padding:3px 8px;font-size:9px;line-height:12px}.personCardHeader .statusPill:before{width:5px;height:5px}.personCard .previewWrap{aspect-ratio:auto;border-radius:14px;height:130px}.stickerChip{gap:4px;padding:3px 8px;font-size:9px;line-height:12px;bottom:8px;right:8px}.stickerChip svg{display:none}.personCardBody{gap:2px;padding:12px 0 0}.personCardBody h3{font-size:18px;line-height:22px}.personCardBody p{font-size:11px;line-height:14px}.personCard .openButton{display:none}.addCard.placeholder{border-radius:20px;gap:12px;min-height:220px;padding:24px 14px}.addCard.placeholder .addPlus{width:52px;height:52px;box-shadow:0 3px 0 var(--orange-shadow)}.addCard.placeholder h3{font-size:15px;line-height:18px}.addCard.placeholder p{max-width:140px;font-size:11px;line-height:14px}.addCard.editing{border-radius:20px;min-height:220px;padding:18px}.addCard.editing h3{font-size:15px;line-height:18px}.rosterPublishBar{background:var(--bg-card);border:1px solid var(--orange-soft);border-radius:18px;align-items:center;gap:14px;padding:14px 16px;display:flex;box-shadow:0 8px 18px #3d2b1f0f}.rosterPublishIcon{background:var(--orange-soft);width:44px;height:44px;color:var(--orange-shadow);border-radius:14px;flex-shrink:0;place-items:center;display:grid}.rosterPublishCopy{flex-direction:column;flex:auto;gap:2px;min-width:0;display:flex}.rosterPublishCopy .eyebrow{letter-spacing:.18em;color:var(--text-eyebrow);font-size:10px;line-height:12px;font-family:var(--font-body);margin:0;font-weight:700}.rosterPublishTitle{color:var(--text-strong);font-family:var(--font-display);font-size:14px;font-weight:600;line-height:18px}.rosterPublishCta{background:var(--orange);color:#fffdf7;font-family:var(--font-display);letter-spacing:.04em;box-shadow:0 3px 0 var(--orange-shadow);cursor:pointer;border:0;border-radius:14px;flex-shrink:0;padding:10px 16px;font-size:12px;font-weight:700;line-height:16px;transition:transform 80ms,box-shadow .12s,background .12s}.rosterPublishCta:hover:not(:disabled){background:var(--orange-deep)}.rosterPublishCta:active:not(:disabled){box-shadow:0 1px 0 var(--orange-shadow);transform:translateY(1px)}}@media (width<=400px){.rosterView .cardsGrid{gap:12px}.personCard{padding:12px}.personCard .previewWrap{height:118px}.personCardBody h3{font-size:17px}.rosterPublishBar{gap:12px;padding:12px 14px}.rosterPublishCta{padding:9px 14px}}.settingsSubtitle{font-family:var(--font-body);color:var(--text-muted);margin:-6px 0 12px;font-size:15px;font-weight:500;line-height:22px}.settingsPanel{border-radius:var(--radius-xl);gap:14px;padding:24px}.settingsPanel header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:6px;display:flex}.settingsPanel header h3{font-family:var(--font-display);color:var(--text-strong);margin:0;font-size:22px;font-weight:600;line-height:26px}.settingsPanel header .eyebrow{letter-spacing:.18em;margin:0 0 4px;font-size:11px}.settingsPanel header .headerRight{flex-shrink:0;align-items:center;gap:8px;display:flex}.pillStatus{border-radius:var(--radius-pill);background:var(--bg-tile);color:var(--text-strong);font-family:var(--font-body);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:5px;padding:4px 10px;font-size:10px;font-weight:700;display:inline-flex}.pillStatus.online{color:#2e6b40;background:#d6ebd9}.pillStatus.online:before{content:"";background:#2f9c4d;border-radius:50%;width:6px;height:6px;display:inline-block}.pillStatus.stale{color:#7a5a14;background:#faecbd}.pillStatus.stale:before{content:"";background:#c89a25;border-radius:50%;width:6px;height:6px;display:inline-block}.pillStatus.current{color:#2e6b40;background:#d6ebd9}.pillStatus.refreshes{color:#2e6b40;background:#d6ebd9;padding:6px 12px}.pillStatus.refreshes:before{content:"";background:#2f9c4d;border-radius:50%;width:6px;height:6px;display:inline-block}.rolePill{border-radius:var(--radius-pill);font-family:var(--font-body);letter-spacing:.06em;text-transform:uppercase;flex-shrink:0;align-items:center;padding:4px 10px;font-size:10px;font-weight:700;display:inline-flex}.rolePill.owner{background:var(--orange-soft);color:var(--orange-deep)}.rolePill.manager{background:var(--teal-soft);color:var(--teal-deep)}.rolePill.editor{background:var(--mint-soft);color:#2e6b40}.pairCodeBlock{border:2px dashed var(--border);border-radius:var(--radius-lg);background:var(--bg-sand);text-align:center;font-family:var(--font-display);letter-spacing:.06em;color:var(--text-strong);margin:4px 0;padding:28px 24px;font-size:44px;font-weight:600;line-height:52px}.pairHelper{font-family:var(--font-body);color:var(--text-muted);margin:0;font-size:13px;font-weight:500;line-height:1.45}.pairActions{flex-wrap:wrap;gap:10px;margin-top:4px;display:flex}.pairActions button{background:var(--bg-cream);color:var(--text-strong);border:2px solid var(--orange-soft);border-radius:var(--radius-md);box-shadow:var(--shadow-puff-cream);font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;padding:10px 16px;font-size:12px;font-weight:700}.pairActions button:hover:not(:disabled){background:#fff8ec}.pairActions button:active:not(:disabled){transform:translateY(1px);box-shadow:0 1px 2px #2d26200d,0 1px #e0744a73}.deviceRow,.adminRow,.manifestRow{background:var(--bg-sand);border-radius:var(--radius-md);border-top:0;grid-template-columns:44px minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:12px 14px;display:grid}.adminRow,.manifestRow{grid-template-columns:40px minmax(0,1fr) auto;padding:10px 12px}.deviceRow+.deviceRow,.adminRow+.adminRow,.manifestRow+.manifestRow{margin-top:8px}.deviceIcon{background:var(--teal-soft);width:44px;height:44px;color:var(--teal-deep);border-radius:12px;flex-shrink:0;place-items:center;font-size:18px;display:grid}.adminAvatar{background:var(--teal);color:#fffdf7;width:40px;height:40px;font-family:var(--font-display);border-radius:50%;flex-shrink:0;place-items:center;font-size:15px;font-weight:700;display:grid}.rowMain{gap:2px;min-width:0;display:grid}.rowMain strong{font-family:var(--font-display);color:var(--text-strong);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.rowMain small{font-family:var(--font-body);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:500;overflow:hidden}.linkButton{color:var(--text-eyebrow);font-family:var(--font-body);letter-spacing:0;text-transform:none;box-shadow:none;background:0 0;padding:6px 4px;font-size:12px;font-weight:700}.linkButton:hover:not(:disabled){color:var(--text-strong);background:0 0}.linkButton.danger{color:var(--coral)}.linkButton.danger:hover:not(:disabled){color:var(--orange-deep)}.versionTag{background:var(--orange-soft);width:40px;height:40px;color:var(--orange-deep);letter-spacing:0;border-radius:12px;flex-shrink:0;place-items:center;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;font-weight:700;line-height:16px;display:grid}.inviteButton{background:var(--orange-soft);color:var(--orange-deep);border-radius:var(--radius-sm);box-shadow:none;font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;border:0;align-items:center;gap:6px;padding:8px 12px;font-size:11px;font-weight:700;display:inline-flex}.inviteButton:hover:not(:disabled){background:#ffd0b6}.inviteButton:disabled{color:#c2967b;opacity:1;background:#fff0e3}.loginPreview{border-radius:24px;grid-column:1/-1;margin-top:0;padding:0;overflow:hidden;box-shadow:0 12px 28px #3d2b1f14}.loginPreview>header{margin-bottom:0;padding:24px 28px 0}.loginPreview .previewBadge{border-radius:var(--radius-sm);background:var(--bg-tile);color:var(--orange-deep);font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;padding:4px 8px;font-size:10px;font-weight:700;display:inline-block}.loginPreview .previewInner{background:var(--bg-card);border:0;border-top:1px solid var(--border);pointer-events:none;-webkit-user-select:none;user-select:none;border-radius:0;grid-template-columns:320px minmax(0,1fr);margin:16px 0 0;display:grid}.loginPreview .previewBrand{background:var(--orange-soft);flex-direction:column;justify-content:space-between;gap:24px;padding:36px;display:flex}.loginPreview .previewBrand .brand{align-items:center;gap:12px;display:flex}.loginPreview .previewBrand .brandMark{background:var(--orange);color:#fffdf7;width:44px;height:44px;font-family:var(--font-display);box-shadow:0 4px 0 var(--orange-shadow);border-radius:12px;place-items:center;font-size:14px;font-weight:700;display:grid}.loginPreview .previewBrand .brandLabels{flex-direction:column;gap:2px;display:flex}.loginPreview .previewBrand .brandLabels span{font-family:var(--font-body);color:var(--orange-deep);letter-spacing:.18em;text-transform:uppercase;font-size:11px;font-weight:700}.loginPreview .previewBrand .brandLabels strong{font-family:var(--font-display);color:var(--text-strong);font-size:18px;font-weight:600;line-height:22px}.loginPreview .previewBrand .tagline{font-family:var(--font-display);color:var(--text-strong);margin:0;font-size:32px;font-weight:600;line-height:36px}.loginPreview .previewForm{flex-direction:column;justify-content:center;gap:14px;padding:40px;display:flex}.loginPreview .previewForm .fauxLabel{font-family:var(--font-body);color:var(--text-eyebrow);letter-spacing:.14em;text-transform:uppercase;font-size:11px;font-weight:700}.loginPreview .previewForm .fauxInput{border:2px solid var(--orange-soft);border-radius:var(--radius-md);background:var(--bg-card);font-family:var(--font-body);color:var(--text-strong);padding:14px 18px;font-size:15px;font-weight:500}.loginPreview .previewForm .fauxButton{border-radius:var(--radius-lg);background:var(--orange);color:#fffdf7;font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;box-shadow:0 5px 0 var(--orange-shadow);justify-content:center;align-items:center;gap:10px;padding:16px 22px;font-size:13px;font-weight:700;display:flex}@media (width<=900px){.settingsSubtitle{margin:0 0 10px;font-size:13px;line-height:18px}.settingsPanel{gap:12px;padding:18px}.settingsPanel header{margin-bottom:2px}.settingsPanel header h3{font-size:18px;line-height:22px}.settingsPanel header .eyebrow{letter-spacing:.16em;font-size:10px}.pairCodeBlock{letter-spacing:.04em;padding:22px 12px;font-size:30px;line-height:36px}.pairActions{gap:8px}.pairActions button{letter-spacing:.06em;flex:1 1 0;padding:12px 10px;font-size:11px}.deviceRow,.adminRow,.manifestRow{grid-template-columns:36px minmax(0,1fr) auto;gap:10px;padding:10px 12px}.deviceRow{grid-template-columns:36px minmax(0,1fr) auto;grid-template-areas:"icon main pill""icon link link";gap:4px 10px}.deviceRow .deviceIcon{grid-area:icon}.deviceRow .rowMain{grid-area:main}.deviceRow .pillStatus{grid-area:pill;justify-self:end}.deviceRow .linkButton.danger{grid-area:link;justify-self:end;padding:4px 2px;font-size:11px}.deviceIcon{border-radius:10px;width:36px;height:36px;font-size:16px}.adminAvatar{width:36px;height:36px;font-size:13px}.versionTag{border-radius:10px;width:36px;height:36px;font-size:11px}.rowMain strong{font-size:13px}.rowMain small{font-size:11px}.rolePill,.pillStatus{letter-spacing:.04em;padding:3px 8px;font-size:9px}.pillStatus.refreshes{padding:4px 10px}.inviteButton{padding:6px 10px;font-size:10px}.loginPreview{box-shadow:var(--shadow-soft);border-radius:18px}.loginPreview>header{padding:18px 18px 0}.loginPreview .previewInner{grid-template-columns:1fr;margin-top:14px}.loginPreview .previewBrand{gap:16px;padding:22px 22px 24px}.loginPreview .previewBrand .brandMark{width:40px;height:40px;font-size:13px}.loginPreview .previewBrand .brandLabels strong{font-size:17px;line-height:20px}.loginPreview .previewBrand .tagline{font-size:26px;line-height:30px}.loginPreview .previewForm{gap:10px;padding:22px}.loginPreview .previewForm .fauxInput{padding:12px 14px;font-size:14px}.loginPreview .previewForm .fauxButton{padding:14px 18px;font-size:12px}}@media (width<=360px){.pairCodeBlock{padding:20px 8px;font-size:26px;line-height:32px}}:root{--font-display:"Fredoka", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body:"Quicksand", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--bg-page:#fff6e8;--bg-card:#fff;--bg-cream:#fffdf7;--bg-tile:#ffe0cd;--bg-sand:#fff6e8;--bg-input:#fffdf7;--text-strong:#3d2b1f;--text-body:#4d3a2c;--text-muted:#75675c;--text-eyebrow:#a47148;--border:#eadfd4;--border-soft:#f0e6d8;--border-strong:#ddccb8;--border-orange-soft:#ffe0cd;--orange:#ff8b5c;--orange-shadow:#e0744a;--orange-deep:#d65a32;--orange-soft:#ffe0cd;--teal:#5ac4c9;--teal-deep:#3fa0a4;--teal-soft:#ddf0f1;--mint:#7cc18c;--mint-soft:#d8efde;--yellow:#ffe066;--coral:#e9684a;--coral-soft:#f9d6cb;--status-live-bg:#d8efde;--status-live-fg:#2f7a45;--status-draft-bg:#fff0d6;--status-draft-fg:#a8651a;--status-hidden-bg:#efe6dc;--status-hidden-fg:#75675c;--radius-sm:10px;--radius-md:14px;--radius-lg:18px;--radius-xl:22px;--radius-pill:999px;--shadow-soft:0 1px 2px #2d26200d, 0 8px 18px #3d2b1f14;--shadow-puff-orange:0 1px 2px #2d26200f, 0 4px 0 #e0744af2;--shadow-puff-cream:0 1px 2px #2d26200d, 0 3px 0 #e0744a73;--shadow-puff-teal:0 4px 0 #3fa0a4d9;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:var(--font-body);background:var(--bg-page);color:var(--text-strong)}*{box-sizing:border-box}body{font-family:var(--font-body);color:var(--text-strong);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-weight:500}button,input,select,textarea{font:inherit;font-family:var(--font-body)}button{border-radius:var(--radius-md);background:var(--orange);color:#fffdf7;font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;box-shadow:var(--shadow-puff-orange);border:0;justify-content:center;align-items:center;gap:8px;padding:12px 22px;font-size:14px;font-weight:700;transition:transform 80ms,box-shadow .12s,background .12s;display:inline-flex}button:hover:not(:disabled){background:#ff9a6f}button:active:not(:disabled){transform:translateY(1px);box-shadow:0 1px 2px #2d26200f,0 2px #e0744af2}button:disabled{cursor:default;opacity:.55;box-shadow:none}button.secondary{background:var(--bg-cream);color:var(--text-strong);border:2px solid var(--orange-soft);box-shadow:var(--shadow-puff-cream)}button.secondary:hover:not(:disabled){background:#fff8ec}button.danger{color:var(--coral);border:2px solid var(--coral-soft);background:#fffdf7;box-shadow:0 4px #e9684a8c}button.danger:hover:not(:disabled){background:#fff6f3}button.ghost{color:var(--text-eyebrow);box-shadow:none;text-transform:none;letter-spacing:0;font-family:var(--font-body);background:0 0;padding:6px 0;font-size:13px;font-weight:600}button.ghost:hover:not(:disabled){color:var(--text-strong);background:0 0}input,select,textarea{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-input);width:100%;color:var(--text-strong);padding:11px 13px;font-weight:500;transition:border-color .12s,box-shadow .12s}input:focus,select:focus,textarea:focus{border-color:var(--orange);outline:none;box-shadow:0 0 0 3px #ff8b5c2e}label{color:var(--text-eyebrow);font-family:var(--font-body);letter-spacing:.14em;text-transform:uppercase;gap:6px;font-size:11px;font-weight:700;display:grid}h1,h2,h3,h4,p{font-family:var(--font-display);color:var(--text-strong);margin-top:0}p{font-family:var(--font-body);color:var(--text-body);font-weight:500}h1{letter-spacing:-.005em;margin-bottom:0;font-size:44px;font-weight:600;line-height:1.08}h2{margin:0;font-size:22px;font-weight:600;line-height:1.2}h3{margin-bottom:8px;font-size:17px;font-weight:600;line-height:1.25}a{color:var(--orange-deep);font-weight:600;text-decoration:none}a:hover{color:var(--orange);text-decoration:underline}.eyebrow{font-family:var(--font-body);color:var(--text-eyebrow);letter-spacing:.18em;text-transform:uppercase;margin:0 0 6px;font-size:11px;font-weight:700;line-height:1.2}.muted,.sidebar p,.status,.account span,.personCard p,.assetCard p,.photoCard p,.listRow small{color:var(--text-muted);font-family:var(--font-body);font-weight:500}.appShell{background:var(--bg-page);grid-template-columns:260px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--border);background:var(--bg-cream);flex-direction:column;gap:0;min-height:100vh;padding:28px 22px;display:flex;position:sticky;top:0}.sidebarBrand{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding-bottom:24px;display:flex}.brandMark{background:var(--orange);color:#fffdf7;width:44px;height:44px;font-family:var(--font-display);box-shadow:0 4px 0 var(--orange-shadow);border-radius:12px;flex-shrink:0;place-items:center;font-size:18px;font-weight:700;display:grid}.brandMark .brandMarkInner{background:#fffdf7;border-radius:6px;width:22px;height:22px}.sidebarBrand .brandLabels{flex-direction:column;gap:2px;display:flex}.sidebarBrand .brandLabels .eyebrow{margin:0;font-size:10px}.sidebarBrand .brandLabels h2{font-family:var(--font-display);color:var(--text-strong);font-size:20px;font-weight:600;line-height:1.15}.familyBlock{flex-direction:column;gap:6px;padding-top:22px;padding-bottom:16px;display:flex}.familySwitcher{position:relative}.familyPill{border:1px solid var(--border);width:100%;box-shadow:0 3px 0 var(--border);font-family:var(--font-display);cursor:pointer;color:var(--text-strong);text-transform:none;letter-spacing:0;background:#fff;border-radius:14px;align-items:center;gap:10px;padding:10px 12px;display:flex}.familyPill:hover:not(:disabled){background:#fffaf0}.familyPill:active:not(:disabled){box-shadow:0 2px 0 var(--border);transform:none}.familyAvatar{background:var(--yellow);width:28px;height:28px;color:var(--text-strong);font-family:var(--font-display);border-radius:50%;flex-shrink:0;place-items:center;font-size:14px;font-weight:700;display:grid}.familyPill .familyMeta{text-align:left;flex-direction:column;flex-grow:1;gap:1px;min-width:0;display:flex}.familyPill .familyName{font-family:var(--font-display);color:var(--text-strong);text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:600;line-height:1.15;overflow:hidden}.familyPill .familySub{font-family:var(--font-body);color:var(--text-muted);font-size:11px;font-weight:500;line-height:1.2}.familyPill .chev{color:var(--text-eyebrow);flex-shrink:0}.familyDropdown{z-index:20;border:1px solid var(--border);box-shadow:var(--shadow-soft);background:#fff;border-radius:14px;flex-direction:column;gap:2px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);left:0;right:0}.familyDropdown button{color:var(--text-strong);box-shadow:none;font-family:var(--font-display);text-transform:none;letter-spacing:0;text-align:left;background:0 0;border-radius:10px;justify-content:flex-start;padding:9px 10px;font-size:14px;font-weight:600}.familyDropdown button:hover:not(:disabled){background:var(--bg-sand)}.familyDropdown button.active{background:var(--orange-soft);color:var(--text-strong)}.sidebar nav{flex-direction:column;flex-grow:1;gap:4px;padding-top:8px;display:flex}.sidebarNavLabel{padding:0 4px 10px}.navItem{color:var(--text-strong);text-align:left;font-family:var(--font-display);letter-spacing:0;text-transform:none;box-shadow:none;cursor:pointer;background:0 0;border-radius:14px;align-items:center;gap:12px;padding:12px 14px;font-size:15px;font-weight:500;display:flex}.navItem:hover:not(:disabled){background:#ffe0cd66}.navItem .navIcon{width:22px;height:22px;color:var(--text-muted);flex-shrink:0;place-items:center;display:grid}.navItem .navLabel{color:var(--text-strong);flex-grow:1}.navItem .navCount{font-family:var(--font-body);color:var(--text-muted);font-size:12px;font-weight:600}.navItem.active{background:var(--orange-soft);font-weight:600}.navItem.active .navIcon,.navItem.active .navCount{color:var(--text-strong)}.navItem.active .navCount{font-weight:700}.sidebarPublish{border:1px solid var(--orange-soft);background:#fff;border-radius:16px;flex-direction:column;gap:10px;margin-top:8px;padding:16px;display:flex}.sidebarPublish .eyebrow{margin:0;font-size:10px}.sidebarPublish .changesNumber{font-family:var(--font-display);color:var(--text-strong);margin:2px 0 0;font-size:16px;font-weight:600;line-height:1.2}.sidebarPublish .changesNote{font-family:var(--font-body);color:var(--text-muted);margin:0;font-size:12px;font-weight:500;line-height:1.35}.sidebarPublish .publishCta{letter-spacing:.04em;width:100%;padding:12px 14px;font-size:13px}.account{border-top:1px solid var(--border);overflow-wrap:anywhere;align-items:center;gap:10px;margin-top:14px;padding:14px 4px 0;display:flex}.accountAvatar{background:var(--teal);color:#fffdf7;width:32px;height:32px;font-family:var(--font-display);border-radius:50%;flex-shrink:0;place-items:center;font-size:13px;font-weight:700;display:grid}.account .accountMeta{flex-direction:column;flex-grow:1;gap:1px;min-width:0;display:flex}.account .accountName{font-family:var(--font-body);color:var(--text-strong);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;overflow:hidden}.account .accountEmail{font-family:var(--font-body);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:500;overflow:hidden}.account .logoutLink{color:var(--text-eyebrow);box-shadow:none;cursor:pointer;background:0 0;border:0;border-radius:8px;flex-shrink:0;padding:4px}.account .logoutLink:hover:not(:disabled){color:var(--text-strong);background:0 0}main{background:var(--bg-page);padding:36px 48px 48px}.pageHeader{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px;display:flex}.pageHeader>div:first-child{flex-direction:column;gap:6px;display:flex}.pageHeader h1{margin:0;font-size:44px;font-weight:600;line-height:1.08}.pageHeader .eyebrow{margin-bottom:0;font-size:11px}.headerActions,.toolbar,.inlineUpload,.tagRow{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.softCard{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-soft);padding:20px}.publishBar,.settingsPanel,.loginPanel,.empty{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-card);box-shadow:var(--shadow-soft);padding:20px}.publishBar{justify-content:space-between;align-items:center;gap:14px;margin-bottom:22px;display:flex}.publishBar div{gap:3px;display:grid}.contentGrid,.cardsGrid,.assetGrid,.photoGrid,.settingsGrid{gap:18px;display:grid}.cardsGrid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:22px}.personCard,.addCard,.assetCard,.photoCard{border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--bg-card);box-shadow:var(--shadow-soft);gap:12px;padding:18px;display:grid}.personCard{grid-template-rows:150px auto auto}.addCard{align-content:center}.previewImage,.previewPlaceholder{background:var(--bg-sand);width:100%;height:100%;min-height:140px;color:var(--text-muted);font-family:var(--font-display);object-fit:cover;border-radius:14px;place-items:center;font-size:13px;font-weight:600;display:grid}.previewPlaceholder.failed{background:var(--coral-soft);color:var(--coral)}.previewPlaceholder.processing,.previewPlaceholder.queued{background:var(--teal-soft);color:var(--teal-deep)}.detailLayout{gap:22px;display:grid}.backButton{justify-self:start}.detailHero{grid-template-columns:minmax(220px,340px) minmax(260px,1fr);align-items:start;gap:20px;display:grid}.detailHero form,.uploadStrip{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-card);box-shadow:var(--shadow-soft);gap:14px;padding:20px;display:grid}.assetGrid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.toolbar{justify-content:space-between;margin-bottom:16px}.segmented{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--bg-cream);box-shadow:var(--shadow-soft);padding:4px;display:flex}.segmented button{color:var(--text-muted);box-shadow:none;text-transform:none;letter-spacing:0;font-family:var(--font-display);border-radius:var(--radius-pill);background:0 0;padding:8px 16px;font-size:13px;font-weight:600}.segmented button:hover:not(:disabled){color:var(--text-strong);background:0 0}.segmented button.active,.mobileNav button.active{background:var(--orange-soft);color:var(--text-strong)}.photoGrid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.photoCard{grid-template-rows:200px auto}.chips{flex-wrap:wrap;gap:6px;min-height:28px;display:flex}.chips span{border-radius:var(--radius-pill);background:var(--teal-soft);color:var(--teal-deep);font-family:var(--font-body);padding:4px 10px;font-size:12px;font-weight:700}.statusPill{border-radius:var(--radius-pill);font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:6px;padding:4px 10px;font-size:10px;font-weight:700;display:inline-flex}.statusPill.live{background:var(--status-live-bg);color:var(--status-live-fg)}.statusPill.draft{background:var(--status-draft-bg);color:var(--status-draft-fg)}.statusPill.hidden{background:var(--status-hidden-bg);color:var(--status-hidden-fg)}.statusPill:before{content:"";opacity:.85;background:currentColor;border-radius:50%;width:6px;height:6px;display:block}.settingsGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.settingsPanel form{gap:12px;display:grid}.pairCode{border-radius:var(--radius-md);background:var(--text-strong);color:var(--bg-cream);text-align:center;font-family:var(--font-display);letter-spacing:0;margin-top:14px;padding:16px;font-size:28px;font-weight:700}.listRow{border-top:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:12px 0;display:grid}.status{min-height:24px;font-family:var(--font-body);padding-top:14px;font-size:13px;font-weight:500}.loginPage{background:var(--bg-page);place-items:center;min-height:100vh;padding:20px;display:grid}.loginPanel{gap:14px;width:min(440px,100%);display:grid}.loginPanel form{gap:12px;display:grid}.mobileNav,.mobileTopStrip{display:none}@media (width<=900px){.appShell{min-height:100vh;display:block}.sidebar{display:none}main{padding:12px 20px 96px}.mobileTopStrip{align-items:center;gap:12px;padding:6px 0 14px;display:flex;position:relative}.mobileFamilyPill{border:1px solid var(--border);border-radius:var(--radius-pill);min-width:0;box-shadow:0 3px 0 var(--border);font-family:var(--font-display);cursor:pointer;color:var(--text-strong);text-transform:none;letter-spacing:0;background:#fff;flex:auto;align-items:center;gap:10px;padding:8px 12px 8px 8px;display:flex}.mobileFamilyPill:hover:not(:disabled){background:#fffaf0}.mobileFamilyPill:active:not(:disabled){box-shadow:0 2px 0 var(--border);transform:none}.mobileFamilyPill .familyAvatar{width:30px;height:30px;font-size:14px}.mobileFamilyMeta{text-align:left;flex-direction:column;flex-grow:1;gap:0;min-width:0;line-height:1.1;display:flex}.mobileFamilyMeta .eyebrow{margin:0;font-size:9px;line-height:1.2}.mobileFamilyName{font-family:var(--font-display);color:var(--text-strong);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;line-height:1.15;overflow:hidden}.mobileFamilyPill .chev{color:var(--text-eyebrow);flex-shrink:0}.mobileFamilyDropdown{top:calc(100% - 6px);left:0;right:56px}.mobileAccountBtn{box-shadow:none;cursor:pointer;background:0 0;border:0;flex-shrink:0;place-items:center;padding:0;display:grid}.mobileAccountBtn:hover:not(:disabled){background:0 0}.mobileAccountAvatar{background:var(--teal);color:#fffdf7;width:44px;height:44px;font-family:var(--font-display);box-shadow:0 3px 0 var(--teal-deep);border-radius:50%;place-items:center;font-size:16px;font-weight:700;display:grid}.pageHeader{flex-direction:column;align-items:stretch;gap:10px;margin-bottom:16px;display:flex}.pageHeader>div:first-child{gap:4px}.pageHeader h1{font-size:32px;line-height:1.12}.pageHeader .eyebrow{font-size:10px}h1{font-size:32px;line-height:1.12}h2{font-size:19px}.publishBar,.toolbar,.headerActions,.inlineUpload{flex-wrap:wrap;width:100%;display:flex}.detailHero,.settingsGrid{grid-template-columns:1fr}.cardsGrid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px}.assetGrid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:14px}.photoGrid{grid-template-columns:1fr;gap:14px}.softCard,.publishBar,.settingsPanel,.loginPanel,.empty,.detailHero form,.uploadStrip{border-radius:var(--radius-lg);padding:16px}.mobileNav{z-index:10;border-top:1px solid var(--border);background:var(--bg-cream);padding:10px 14px calc(env(safe-area-inset-bottom,0px) + 14px);grid-template-columns:repeat(3,1fr);gap:4px;display:grid;position:fixed;bottom:0;left:0;right:0}.mobileNav button{color:var(--text-muted);border-radius:var(--radius-md);font-family:var(--font-body);letter-spacing:.04em;text-transform:uppercase;box-shadow:none;background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:8px 6px;font-size:10px;font-weight:600;display:flex;position:relative}.mobileNav button:hover:not(:disabled){color:var(--text-strong);background:0 0}.mobileNav button.active{background:var(--orange-soft);color:var(--text-strong);font-weight:700}.mobileNav .mobileNavIcon{width:22px;height:22px;color:inherit;place-items:center;display:grid}.mobileNav .mobileNavLabel{line-height:1}.mobileNav .mobileNavCount{background:var(--orange);color:#fffdf7;min-width:18px;height:18px;font-family:var(--font-body);letter-spacing:0;text-transform:none;box-shadow:0 2px 0 var(--orange-shadow);border-radius:999px;justify-content:center;align-items:center;padding:0 5px;font-size:10px;font-weight:700;display:inline-flex;position:absolute;top:4px;right:calc(50% - 22px)}.mobileNav button.active .mobileNavCount{background:var(--orange-deep)}.loginPage{padding:16px}}@media (width<=380px){main{padding:12px 16px 96px}.pageHeader h1,h1{font-size:28px}}
