.personal-tabs,.personal-tools{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:16px 0 24px}.personal-tabs button{border-radius:20px;padding:10px 16px;background:#f5ecdf;min-height:44px}.personal-tabs button[aria-pressed=true]{background:linear-gradient(120deg,#ffe5a1,#eadbf7);font-weight:650}.personal-intro{padding:25px;border-radius:24px;background:linear-gradient(125deg,#ffeac1,#f0e3f8);margin-bottom:24px}.personal-intro h2{font-size:29px;margin-bottom:10px}.personal-intro p{margin-bottom:0;max-width:500px;font-size:13px}.personal-masonry{columns:2;column-gap:18px}.personal-pin{display:inline-block;width:100%;break-inside:avoid;margin:0 0 18px;background:#fffdf8;border:1px solid var(--line);border-radius:22px;overflow:hidden;vertical-align:top}.personal-pin .pin-art{height:125px;padding:20px;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#ffe5b6,#f0d9ef);font:54px Georgia;color:#866137}.personal-pin:nth-child(3n+2) .pin-art{height:165px;background:linear-gradient(140deg,#dceee2,#fff0c5)}.personal-pin:nth-child(3n) .pin-art{height:140px;background:linear-gradient(135deg,#e9daf7,#ffe4cc)}.pin-copy{padding:19px}.pin-copy h3{font:23px/1.3 Georgia;margin:9px 0}.pin-copy p{font-size:13px;margin-bottom:12px;overflow-wrap:anywhere}.pin-kind{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#775e50}.pin-tags{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.pin-tags span{font-size:10px;padding:4px 8px;background:#f3ede3;border-radius:12px}.pin-buttons{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:14px}.pin-buttons .btn{padding:9px 13px;font-size:12px}.personal-photo{display:block;width:100%;max-height:520px;object-fit:contain;background:#f5ecdf;border-radius:16px}.post>.personal-photo{border-radius:0;max-height:600px}.photo-preview{margin:14px 0}.photo-picker{padding:18px;background:#fff4de;border-radius:16px;margin:18px 0}.photo-picker input{width:100%;font-size:12px}.photo-picker .tiny{margin:10px 0}.photo-picker img{max-height:210px}.personal-form{display:grid;gap:13px}.personal-form label{font-size:13px;font-weight:600}.personal-form input,.personal-form select,.personal-form textarea,.personal-search{width:100%;min-width:0;padding:12px;border:1px solid var(--line);border-radius:13px;background:#fffcf5;color:var(--ink)}.personal-form .btn{margin-top:8px}.board-cover{height:90px;border-radius:16px;background:linear-gradient(135deg,#ffe6ad,#e8d9f7,#dceee3);display:flex;align-items:center;justify-content:center;gap:10px;font-size:26px;margin-bottom:15px}.board-card{text-align:left;padding:20px;border-radius:22px;border:1px solid var(--line);background:#fffaf2}.board-card h3{font:24px Georgia;margin-bottom:10px}.board-card p{font-size:12px;color:var(--muted);margin-bottom:8px}.board-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.goal-card{display:flex;gap:20px;align-items:center;padding:20px;background:linear-gradient(130deg,#fff0cb,#efe4f7);border-radius:20px;margin:16px 0}.goal-card .goal-copy{flex:1;min-width:0}.goal-card h3{font:23px Georgia;margin:0 0 10px;overflow-wrap:anywhere}.goal-card p{font-size:12px;margin-bottom:10px}.goal-ring{width:84px;height:84px;flex-shrink:0;transform:rotate(-90deg)}.goal-ring circle{fill:none;stroke-width:7}.goal-ring .ring-base{stroke:#e4d7c9}.goal-ring .ring-progress{stroke:#c19747;stroke-linecap:round;transition:stroke-dashoffset .7s ease}.milestone-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.milestone{padding:16px;border-radius:18px;background:#f5efe5;color:#886d60}.milestone.earned{background:linear-gradient(135deg,#ffe6a7,#eadbf7);color:#654b39}.milestone strong{display:block;font-size:13px;margin:8px 0}.milestone p{font-size:11px;margin:0}.milestone-symbol{font-size:24px}.personal-check{display:flex;gap:10px;align-items:flex-start;font-size:13px;margin:16px 0}.personal-check input{width:20px;height:20px;flex-shrink:0}.garden-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;max-width:390px;margin:22px auto}.garden-letter{display:grid;place-items:center;min-height:42px;aspect-ratio:1;border-radius:12px;background:#f6e9cf;font-size:17px;font-weight:600}.garden-letter.found{background:linear-gradient(130deg,#d6e8d6,#fff0b9);color:#496145}.garden-words{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.garden-words span{padding:7px 12px;background:#f4ecdf;border-radius:18px;font-size:12px}.garden-words .found{background:#deeddc;text-decoration:line-through}.garden-log{font-size:12px;line-height:1.8;margin:16px 0}.personal-passions{font-size:14px;white-space:pre-wrap;max-width:460px;margin:18px auto}.board-detail-content{margin-top:20px}.personal-empty{padding:25px;border-radius:20px;background:#f7eee1;font-size:13px}.personal-section{margin:26px 0}.personal-section>h2{font-size:27px}.personal-hero-shortcuts{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin:14px 0}.personal-section [hidden],.personal-tabs[hidden],.personal-form [hidden],.personal-pin[hidden]{display:none!important}@media(max-width:480px){.personal-masonry{column-gap:12px}.pin-copy{padding:14px}.pin-copy h3{font-size:20px}.personal-pin .pin-art{height:100px}.personal-pin:nth-child(3n+2) .pin-art{height:135px}.board-grid{grid-template-columns:1fr}.goal-card{gap:14px;padding:17px}.goal-ring{width:66px;height:66px}.milestone-grid{gap:10px}.personal-tabs{gap:7px}.personal-tabs button{padding:10px 12px;font-size:13px}.garden-grid{gap:5px}.personal-intro{padding:22px}}@media(prefers-reduced-motion:reduce){.goal-ring .ring-progress{transition:none}}

/* Photo bubbles follow the image, rather than a fixed media rectangle. */
.post>.personal-photo{display:block;width:auto;height:auto;max-width:calc(100% - 28px);max-height:72svh;margin:0 auto 16px;border-radius:20px;object-fit:contain;background:transparent}
#feed-list>.post.photo-shaped-post{width:min(100%,max(300px,calc(72svh * var(--post-photo-ratio,1))));justify-self:center}
#reading-body>.personal-photo,.journal-entry>.personal-photo{display:block;width:auto;height:auto;max-width:100%;max-height:72svh;margin:16px auto 22px;border-radius:20px;object-fit:contain;background:transparent}
@media(max-width:480px){.post>.personal-photo{max-width:calc(100% - 20px);border-radius:17px;margin-bottom:12px}#feed-list>.post.photo-shaped-post{width:100%}}
