/* Mobile first: shared page and dialog safeguards. */
html { scroll-padding-bottom: 100px; }
.phone { width:100%; min-height:100dvh; }
.navbar-title { max-width:55%; overflow:hidden; text-overflow:ellipsis; }
.brand-logo { max-width:100%; }
.post-text,.dt-text,.lr-body,.msg-body,.signature,.cmt-text { overflow-wrap:anywhere; }
.view input,.view textarea,.view select { max-width:100%; }
.publish-bar { bottom:calc(var(--tab-h) + 26px + var(--safe-b)); }
.phone:has(.publish-bar) .view { padding-bottom:calc(var(--tab-h) + 108px + var(--safe-b)); }
.sheet-box,.panel-box { max-width:calc(100vw - 24px); max-height:90dvh; overflow-y:auto; overscroll-behavior:contain; }
.gift-grid { min-height:0; }
.gift-footer>div { flex-wrap:wrap; row-gap:4px; }
.gift-send { min-height:48px; flex-shrink:0; }
.gift-close { min-width:36px; min-height:36px; }
.post .post-actions { gap:8px; padding:5px 0 1px; margin-top:8px; }
.post .post-gift { flex:0 0 auto; min-width:68px; height:30px; padding:0 12px; margin-left:auto; color:#986326; border:1px solid #ecd4ac; border-radius:22px; background:linear-gradient(135deg,#fff8e9,#fbe8c6); font-weight:650; }
.post .post-gift svg { width:15px; height:15px; }
[data-theme="dark"] .post .post-gift { background:#493725; color:#f8d897; border-color:#735633; }
@media(max-width:600px) {
  .post .post-actions>.act { flex:0 0 auto; min-width:44px; height:36px; padding:0 8px; }
  .post .post-actions>.fav,.post .post-actions>.post-share { display:none; }
  .post .post-actions>.post-gift { min-width:68px; height:30px; padding:0 12px; margin-left:auto; font-size:12px; }
}
button,a,input,textarea,select { touch-action:manipulation; }
:focus-visible { outline:2px solid var(--accent,#229ed9); outline-offset:3px; }
@media(max-width:600px) {
  input,textarea,select { font-size:16px; }
  .nav-btn,.icon-btn { min-height:40px; }
  .gift-header { padding:0 16px 12px; }
  .gift-wallet { margin-bottom:12px; }
  .gift-header h2 { font-size:23px; }
  .gift-footer { padding-left:14px; padding-right:14px; }
  .gift-footer small { font-size:11px; }
}
@media(max-width:359px) {
  .gift-overlay { padding-left:6px; padding-right:6px; }
  .gift-grid { gap:5px; padding-left:9px; padding-right:9px; }
  .gift-name { font-size:10px; }
  .gift-wallet-tip { display:none; }
  .navbar-title { font-size:15px; }
}
@media(min-width:768px) {
  .phone { max-width:720px; box-shadow:0 0 40px #0000000a; }
  .tabbar { max-width:696px; }
  .publish-bar { max-width:688px; }
  .auth-wrap { max-width:480px; margin-inline:auto; }
}
@media(max-height:600px) {
  .gift-dialog { max-height:96dvh; }
  .gift-handle { margin-bottom:8px; }
  .gift-header p,.gift-eyebrow { display:none; }
  .gift-wallet { padding:7px 10px; margin-bottom:8px; }
  .gift-send { height:48px; }
}

.discovery-intro,.official-intro{padding:22px 18px 16px}.discovery-intro h1,.official-intro h1{font-size:24px;letter-spacing:-.5px}.discovery-intro p,.official-intro p{font-size:12px;color:var(--text-2);margin-top:5px}
.discovery-entry{display:block;position:relative;margin:0 16px 16px;border-radius:20px;overflow:hidden;box-shadow:0 5px 18px #2e629515;color:#18395b;isolation:isolate}
.discovery-entry>img{width:100%;height:auto;aspect-ratio:3/1;object-fit:cover;min-height:136px}.discovery-copy{position:absolute;inset:0 auto 0 0;display:flex;flex-direction:column;justify-content:center;padding:16px;max-width:58%}.discovery-copy strong{font-size:20px;font-weight:800;letter-spacing:-.6px}.discovery-copy small{font-size:11px;color:#4b6680;margin-top:5px}.discovery-link{display:flex;align-items:center;gap:15px;font-size:11px;font-weight:650;margin-top:15px;color:#1b6fa2}.discovery-entry:active{transform:scale(.99)}.official-more{text-align:center;padding:8px 16px 20px}
@media(min-width:768px){.discovery-intro,.official-intro{padding:28px 24px 20px}.discovery-entry{margin:0 24px 22px}.discovery-copy{padding:28px}.discovery-copy strong{font-size:28px}.discovery-copy small{font-size:14px}.discovery-link{font-size:13px;margin-top:24px}}
@media(max-width:359px){.discovery-entry{margin-inline:12px}.discovery-copy{padding:12px}.discovery-copy strong{font-size:17px}.discovery-copy small{font-size:10px}}
