/* Common shared styles for home pages (new file, do not overwrite existing globals) */
:root{
  --accent: #f97316;
  --accent-dark: #fb923c;
  --bg-from: #f97316;
  --bg-to: #fb923c;
  --white-90: rgba(255,255,255,0.9);
  --glass: rgba(255,255,255,0.25);
  --radius-lg: 20px;
  --radius-md: 12px;
  --text-muted: rgba(255,255,255,0.8);
}

html,body{height:100%;margin:0;font-family:Inter, 'Noto Sans JP', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;-webkit-text-size-adjust:100%;text-size-adjust:100%;}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}

.btn{display:inline-block;padding:12px 18px;border-radius:10px;font-weight:700;cursor:pointer;border:0}
.btn:active{transform:translateY(1px)}

/* Utility responsive container focused on mobile-first */
.container{max-width:420px;margin:0 auto;padding:16px}

/* Unread notifications red dot */
.has-unread-notifications .tp-bell,
.has-unread-notifications .qf-bell,
.has-unread-notifications .post-bell {
  position: relative;
}
.has-unread-notifications .tp-bell::after,
.has-unread-notifications .qf-bell::after,
.has-unread-notifications .post-bell::after {
  content: '';
  position: absolute;
  top: -4px;
  right: -4px;
  width: 10px;
  height: 10px;
  background: #ff3b30;
  border-radius: 50%;
  box-shadow: 0 0 0 2px rgba(255,255,255,0.9);
}

.float-btn{
  position:fixed;
  right:16px;
  bottom:calc(86px + env(safe-area-inset-bottom,0px));
  z-index:1200;
  min-width:54px;
  height:44px;
  padding:0 14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:#ff7412;
  color:#fff;
  font-size:14px;
  font-weight:700;
  line-height:1;
  box-shadow:0 8px 20px rgba(249,115,22,.32);
}

.float-btn:active{transform:translateY(1px)}

/* Beta label + info notice (shared; remove in one place later) */
.beta-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;border:1px solid transparent;
  background:#fef3e2;color:#c2410c;font-size:11px;font-weight:700;letter-spacing:.08em;line-height:1.35;
  text-transform:uppercase;white-space:nowrap}
.beta-badge--on-dark{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.85)}
.beta-notice{display:flex;align-items:flex-start;gap:10px;margin:16px 0 24px;padding:12px 14px;border-radius:12px;
  background:#fef3e2;color:#7c2d12;font-size:13px;line-height:1.55}
.beta-notice p{margin:0}
.beta-notice__icon{flex:0 0 auto;width:18px;height:18px;display:block;margin-top:1px}
.beta-notice__link{color:#c2410c;font-weight:700;text-decoration:underline}
.beta-notice--on-dark{background:rgba(255,255,255,.18);color:#fff}
.beta-notice--on-dark .beta-notice__link{color:#fff}
.beta-notice--on-dark .beta-notice__icon{filter:brightness(0) invert(1)}
